Skip to content

Sentiment Analysis

Period: 03/2022 - 04/2022
Project Name: Sentiment Analysis
Summary: Checkout this PDF

Machine Learning Python Tensorflow Keras os nltk numpy matplotlib itertools collections sklearn

What's the Project For?

  • Course Project of the "Advanced Data Mining for Risk Management and Business Intelligence" course for the degree BSc in Risk Management and Business Intelligence.
  • Perform sentiment analysis and rank the attitude of the review data set from 1 to 5.

Project Screenshot

Project Description

Firstly, explorative data analysis was performed in the beginning of the project, for example checking if the data is balanced, characteristics of review data (e.g., UPPERCASE, punctuations, tagging, etc.), frequency of N-gram, correlation between features and label using correlation matrix, and exploring the distribution of reviews' word count, sentence count, etc.

Then 4 different model architectures were experimented, including 1-layer perceptron, CNN, RNN, and RNN-CNN. Tuning was conducted on features and hyperparameters to improve the model performance.

In the end, our group has passed the strong baseline given by our instructor, which is with a Macro-F1 score of 0.5609 (> 0.5370).

Most Challenging Part of the Project?

This project could be said to be my first project to do all procedures in machine learning training. From feature extractor, to explorative data analysis, then to training 4 different model architectures, hyperparameters tuning, and performance evaluation.

The whole process was challenging because I was unfamiliar with coding to do machine learning tasks. Therefore, this project had really given me a very good hands-on experience in machine learning, and I was so obsessed with it and keep trying it for the whole week for more than 10 hours a day!