Movie Review Sentiment Analysis Platform
A machine learning application that classifies movie reviews into Positive, Negative, or Neutral sentiments using Natural Language Processing techniques. Trained on the IMDb Movie Reviews Dataset (65,000+ reviews), the project covers the complete ML pipeline data preprocessing, text cleaning, tokenization, feature extraction, model training, and evaluation. Built an interactive interface where users can input a review and receive real-time sentiment predictions, demonstrating practical application of NLP from dataset preparation to model deployment.
Author: Prince Malani | Technologies: Python, FastAPI, Flask, MySQL
Project Overview & Architecture
# Movie Review Sentiment Analysis Platform
**Turning 50,000+ unstructured audience reviews into a real-time sentiment signal — classified in under 200 ms.**
- **Role** — Project Lead: ML pipeline design, model training, backend integration, web portal delivery
- **Team** — 3 engineers
- **Context** — 7th-semester final year engineering project
- **Stack** — Python · scikit-learn · TF-IDF / CountVectorizer · Logistic Regression · Naive Bayes · Flask REST API
- **Focus** — NLP · text preprocessing · feature vectorization · binary sentiment classification
Film releases generate audience reviews faster than any team can read them. This platform closes that gap: a user pastes raw review text into the portal, and a trained classification pipeline returns a positive or negative verdict in real time — giving filmmakers, producers, and analytics teams an immediate read on audience reception instead of a manual sift through unstructured feedback.
Built end to end — dataset curation and cleaning across 50,000+ labeled IMDb reviews, an NLP preprocessing and vectorization pipeline, model training and tuning, and a Flask REST API serving the trained pipeline to a live web interface.
---
## Project Brief
During my 7th semester of undergraduate engineering, I led a 3-member team to design and build a full-stack **Movie Review Sentiment Analysis Platform**.
The goal of the project was to transform raw, unstructured audience movie reviews into structured, real-time sentiment classifications (Positive vs. Negative). By pinpointing key phrases and underlying emotional tone in review text, the platform helps filmmakers, producers, and analytics teams rapidly understand audience reception and key factors driving positive or negative word-of-mouth.
---
## Problem Statement
When movies are released, thousands of audience reviews and textual feedback stream in across platforms. Manually sifting through this high volume of unstructured text to determine whether feedback is overall positive or negative—and identifying which specific elements drive negative reception—is time-consuming and inefficient.
### Key Challenges
1. **Unstructured Text Processing**: Handling noisy textual data containing slang, punctuation, stop words, and spelling variations.
2. **Real-Time Sentiment Classification**: Serving machine learning inference efficiently so users receive instant sentiment feedback upon submitting a review via the web portal.
3. **End-to-End Pipeline Integration**: Connecting data cleaning, tokenization, model training, and API serving into a seamless full-stack architecture.
---
## Solution Architecture
The system was designed with a decoupled architecture separating data preprocessing, model inference, and backend API orchestration.

### Key Components
* **Dataset Layer**: IMDb Movie Reviews dataset consisting of 50,000+ labeled reviews.
* **Preprocessing Pipeline**: Text cleaning, stop-word filtering, lowercasing, and tokenization.
* **Feature Extraction & ML Engine**: Vectorization (TF-IDF / Count Vectorizer) coupled with classification models (Logistic Regression / Naive Bayes).
* **Backend API & Web Portal**: Flask RESTful backend exposing real-time prediction endpoints to an interactive web portal interface.
---
## Technical Execution
As the **Project Lead**, I led the 3-person engineering team and took hands-on ownership of the ML pipeline design, dataset refinement, backend integration, and web portal delivery.
### 1. Dataset Preprocessing & Refinement
* Curated and cleaned a dataset of **50,000+ movie reviews**.
* Filtered out noisy text, uninformative fields, HTML tags, and special characters.
* Standardized text data using lowercasing, punctuation stripping, and stop-word removal.
### 2. NLP Pipeline & Model Training
* Performed Exploratory Data Analysis (EDA) on textual frequency and length distributions.
* Implemented tokenization and text vectorization techniques to transform raw text into numerical feature vectors.
* Separated input features and target labels into clean training/testing configurations.
* Trained, evaluated, and fine-tuned machine learning classification models to maximize predictive accuracy on unseen test reviews.
### 3. Backend & Web Portal Integration
* Built a lightweight **Flask REST API** backend to host the trained ML model pipeline.
* Developed an intuitive web interface allowing users to paste any movie review sentence.
* Integrated the **text $\rightarrow$ preprocessing $\rightarrow$ vectorization $\rightarrow$ model inference $\rightarrow$ JSON response** workflow, achieving real-time execution (< 200 ms).
---
## Results & Impact
* **High Accuracy Sentiment Engine**: Successfully categorized unseen movie review text into positive and negative sentiments with high predictive confidence.
* **Real-Time Prediction Interface**: Delivered a functional, user-friendly web portal where users can type reviews and receive instantaneous sentiment analysis results.
* **Successful Academic Delivery**: Completed, presented, and successfully defended the project as our 7th-semester final year engineering milestone, leading a 3-member team.
---
## Key Learnings
* **Core NLP Concepts**: Hands-on mastery of fundamental Natural Language Processing workflows including tokenization, stop-word removal, text cleaning, and feature vectorization.
* **End-to-End ML Pipeline**: Deep understanding of taking a project from raw dataset curation to model training, evaluation, and backend API deployment.
* **Leadership & Team Collaboration**: Gained valuable project leadership experience guiding a 3-person team, distributing tasks, and ensuring on-time delivery.
* **Decoupled Architecture**: Realized the importance of separating model inference logic from backend web routing to allow modular model retrainings and upgrades.