Sentiment analysis, which is also known as opinion mining, is one of the major tasks of NLP. It studies people’s sentiments towards certain entities and detects polarity (e.g. a positive or negative opinion) within text. Sentiment analysis is often used in business to detect sentiment in social media, evaluate brand reputation and understand customers.
This project focuses on predicting sentiment of Amazon product reviews from Toys & Games category. Each review has the score that was used as a proxy of sentiment.
Steps of running a sentiment analysis of product reviews:
- Text preprocessing & creating word vectors - transform text into word vectors with various methods: Bag of Words, TF-IDF, Co-occurrence Matrix with SVD & NMF decomposition, Word2Vec
- Sentiment Analysis with Machine Learning models:
- comparison of ML models such as Naive Bayes, SGD, Logistic Regression
- optimising performance of ML models by testing different text representations and tuning hyperparameters
- Sentiment Analysis with Deep Learning models - comparison of performance of different neural networks: densely connected, LSTM, CNN.
Reference:
- https://jmcauley.ucsd.edu/data/amazon/ - product reviews dataset
- https://www.fast.ai/2019/07/08/fastai-nlp/ - Fast.ai NLP course
- Chollet, F. (2018). Deep Learning with Python Manning Publications