Skip to content

This project takes customer reviews and automatically detects multiple subthemes (like service, price, or booking experience) along with their sentiments (positive or negative). It uses BERT and fine-tunes it to handle multi-label classification. meaning one review can have several opinions at once!

Notifications You must be signed in to change notification settings

Aswin-Cheerngodan/Subtheme-Sentiment-Analysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔍 Subtheme Sentiment Analysis using BERT

This project focuses on performing multi-label subtheme sentiment analysis using BERT (Bidirectional Encoder Representations from Transformers). Each input text (e.g., a customer review) is analyzed to detect multiple subthemes (like garage service, ease of booking, value for money, etc.) and their corresponding sentiments (positive/negative).


📌 Project Goals

  • Classify multiple subtheme-sentiment labels per review
  • Fine-tune bert-base-uncased for multi-label text classification
  • Prepare the model for deployment or reuse in other projects

🧪 Dataset

  • The input is a structured CSV file where:
    • Column text contains customer reviews
    • Other columns are binary labels (0/1) representing sentiment for each subtheme.

Example:

text garage_service_positive ease_of_booking_positive value_for_money_positive
"Tyres delivered quickly, smooth experience" 1 1 0

⚙️ Model Used

  • bert-base-uncased from HuggingFace
  • Fine-tuned for multi_label_classification
  • Uses sigmoid activation and binary cross-entropy loss

🚀 Quickstart

✅ 1. Clone Repository

git clone https://github.com/Aswin-Cheerngodan/Subtheme-Sentiment-Analysis.git
cd subtheme-sentiment-analysis

✅ 2. Install Dependencies

python -m venv myenv
myenv\Scripts\activate
pip install -r requirements.txt

✅ 3. run streamlit app

streamlit run src/main.py

🌐 Access the App

subtheme-sentiment-analyzer: http://localhost:8501

🧪 Example Usage

  • Type a customer review related to the garage.
  • It finds the subthemes along withe their sentiment.
  • Optionally you can view scores of all subthemes.

📬 Contact

Questions or contributions? Open an issue or reach out at aachu8966@gmail.com

About

This project takes customer reviews and automatically detects multiple subthemes (like service, price, or booking experience) along with their sentiments (positive or negative). It uses BERT and fine-tunes it to handle multi-label classification. meaning one review can have several opinions at once!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published