NLP Sentiment Analysis
Compare sentiment and emotion predictions across multiple pre-trained transformer models, with rich visualisations.
Technical Information
Project Type
Sentiment AnalysisEmotion DetectionModel Comparison
Tech Stack
PythonFlaskTransformersPyTorchspaCyNLTKDistilBERTRoBERTaGoEmotionsSQLiteChart.jsWordCloud
Topics / Modules
Binary SentimentFine-grained EmotionsModel ComparisonVisual Analytics
Links
Project Summary
An app that analyses text sentiment and emotions using multiple pre-trained models – DistilBERT, RoBERTa and a GoEmotions model – and visualises the differences between them with charts and word clouds.
Skills Demonstrated
Transformer InferenceSentiment ClassificationEmotion DetectionModel BenchmarkingData Visualisation
Solution
Text is run through several transformer models in parallel; results are normalised, stored in SQLite, and presented side-by-side with Chart.js visualisations and word clouds so you can compare model behaviour.
Approach
- Select: Choose complementary pre-trained models (DistilBERT, RoBERTa, GoEmotions).
- Infer: Run text through each model and capture scores.
- Store: Persist analyses in SQLite for history.
- Visualise: Render comparisons with Chart.js and word clouds.
- Deploy: Host the Flask app on Hugging Face Spaces.