You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SentimentAI is a deep learning-based web application that classifies tweets into four sentiment categories using a hybrid BERT + BiLSTM architecture.
The system leverages transformer-based contextual embeddings along with sequential learning to achieve high accuracy and robust sentiment understanding.
👉 Designed for real-world NLP applications like:
Social media monitoring
Brand sentiment analysis
Opinion mining
🎥 Live Demo
🧠 Model Architecture
Layer
Details
BERT Encoder
bert-base-uncased
Dropout
p = 0.10
BiLSTM
2 layers · hidden size = 128
Linear
256 → 4 classes
Log-Softmax
Output activation
🏷️ Sentiment Classes
Class
Description
🟢 Positive
Happiness, excitement, praise
🔴 Negative
Anger, sadness, criticism
🟡 Neutral
Informational, no emotion
⚪ Irrelevant
Spam or unrelated content
📊 Performance
Metric
Score
Accuracy
90.0%
Precision
90.0%
Recall
90.0%
F1 Score
90.0%
📁 Dataset
📊 74,681 tweets
🏷️ 4 sentiment classes
📌 Real-world Twitter dataset
⚙️ Tech Stack
Layer
Technology
Frontend
Streamlit
Model
PyTorch + HuggingFace
NLP
Transformers (BERT)
Visualization
Plotly
Deployment
Streamlit Cloud
Model Hosting
HuggingFace Hub
📱 Application Preview
🏠 Dashboard & Model Overview
✍️ Tweet Input & Analysis
📊 Prediction Result & Confidence Scores
🔄 Working Flow
📝 User inputs tweet text
🔍 Text is tokenized using BERT tokenizer
🧠 BERT extracts contextual embeddings
🔄 BiLSTM processes sequence
📊 Model predicts sentiment class
📱 Result displayed in UI
🤗 Model Weights
⚙️ Run Locally
git clone https://github.com/puneethas26/sentiment-bert-bilstm.git
cd sentiment-bert-bilstm
pip install -r requirements.txt
streamlit run app.py
About
BERT + BiLSTM based Twitter Sentiment Analysis web app with ~90% accuracy, deployed using Streamlit for real-time prediction and visualization.