Sentiment Analyse Neural Network Model
Can classificate given text as bad or good review.
Based on Spacy - for text embedding. Spacy contain big multilanguage dataset, and can build 300 dimensions vector on text entityes. Model build on Tensorflow - easy for build network model fraemwork, but possible for production requires additional tuning.
Can be run in docker enviroment, or if you on linux:
- Python - version 3.*
- Spacy - version 2.*
- Tensorflow - version 2.2 or bigger
- Make - optional, all commands can be run manually
- DVC - Git for machine learning
If you on Windows, build and run in-Docker development enviroment
# Build image
make docker-build
# Start docker container, map volume on current folder and attach current console
make docker-console
If you not in docker you need load Spacy model
# Will load meduim size model, good for developement, but for production better load lardger
make spacy-load-md
For train model just run
make train
It will load dataset and start training
- Load dataset - split into train and test, and validation - which need for check training progress
- Normalise data - need normalise text to vector with constant size, for put it into first layer of network
- Build network model - stack layers for build model of network
- Train - put train data with correct hyperparameters
- Test - for insure correctness