A Deep Learning-based Sentiment Analysis application that predicts whether a movie review is Positive or Negative using an LSTM (Long Short-Term Memory) neural network trained on the IMDb 50K Movie Reviews dataset.
🔗 https://sentiment-analysis-lstm-p6opvqwd68r8li5zuiappmb.streamlit.app/
- Predict sentiment of movie reviews
- Deep Learning model using LSTM
- Text preprocessing pipeline
- Interactive Streamlit UI
- Confidence score visualization
- Real-time inference
- Python
- TensorFlow / Keras
- NLTK
- NumPy
- Pandas
- Scikit-learn
- Streamlit
- Embedding Layer
- LSTM Layer
- Dense Layers
- Sigmoid Output Layer
Dataset used:
📊 IMDb Dataset of 50K Movie Reviews
- 50,000 movie reviews
- Binary sentiment labels
- Positive / Negative classification
Source: https://www.kaggle.com/datasets/lakshmi25npathi/imdb-dataset-of-50k-movie-reviews
The following preprocessing steps were applied:
- Convert text to lowercase
- Remove HTML tags
- Remove URLs
- Remove punctuation
- Remove stopwords
- Lemmatization
- Tokenization
- Sequence Padding
Input Review
↓
Tokenizer
↓
Padding (maxlen = 200)
↓
Embedding Layer
↓
LSTM (128 Units)
↓
Dense Layer
↓
Dropout
↓
Output Layer (Sigmoid)
↓
Positive / Negative
Accuracy | ~85-90%
Sentiment-Analysis-LSTM/
│
├── app.py
├── sentiment_lstm.keras
├── tokenizer.pkl
├── requirements.txt
├── README.md
├── Sentiment.ipynb
- Bidirectional LSTM
- GRU Comparison
- Attention Mechanism
- BERT Integration
- Explainable AI (SHAP/LIME)
- Docker Deployment
- REST API using FastAPI
- React Frontend