All case studies
Master of SWE & AI · Intelligent Systems + Deep Learning·2026

ReviewPulse v3 - inspectable sentiment lab

Turning a binary classifier into an aspect-based NLP lab with token-level evidence and deployment trade-offs.

AI/MLData

Problem

Review-level sentiment hides mixed opinions. A sentence can praise food and criticize service, but a binary classifier collapses that into one label. The work needed aspect conditioning, honest evaluation, and an interface that exposed failures instead of hiding them.

Approach

  • Started with ~8,000 Amazon reviews, then rebuilt the product around SemEval-2014 Restaurants aspect annotations.
  • Compared review-only baselines against aspect-conditioned ATAE-LSTM and DistilBERT sentence-pair models.
  • Added mixed-polarity subset evaluation, confusion matrices, artifact provenance, Streamlit comparison mode, and gold-label examples.
  • Exposed attention/attribution as indicative token-level evidence without pretending it was causal reasoning.

Stack

Pythonscikit-learnPyTorchTransformerspandasStreamlit

Outcome

  • 200+ public commits, 363 passing tests, six versioned inference artifacts, and a deployed Streamlit app.
  • Canonical DistilBERT run reached 0.7199 full-test macro-F1 and 0.6427 mixed-polarity macro-F1.
  • The UI makes model disagreement, gold-label mismatch, and artifact-size trade-offs visible.