About The Project
Feelings, but make them legible.
VibeCheck is a mental health text classifier built for students. Paste how you're feeling and the model identifies your emotional state across 8 categories — from everyday stress to clinical signals like suicidal ideation and directed aggression. The interface transforms its entire visual identity to match the result, so the experience feels as human as the problem it addresses.
Most sentiment classifiers reduce text to positive, negative, or neutral. That's not how feelings work. VibeCheck identifies the specific shape of distress — anxiety, depression, stress, bipolar mood cycling, personality-related volatility, suicidal ideation, or outward aggression — and lets the UI mirror it. Color, motion, typography, and the resources we surface all change with the result.
Under the hood there are two models. Quick Vibe is a single forward pass for an instant read. Deep Dive is a five-stage cascade that's deliberately tuned to favor catching suicidal cases over precision — the asymmetric cost of a missed crisis indicator demands that trade.
The Models
Quick Vibe
MentalBERT Flat v6
MentalBERT — BERT-base with mental-health pretraining — fine-tuned on an 8-class head. v6 retired the OLID-era Directed Aggression data and pulled in explicit threat-labelled examples from Jigsaw 2017 and Civil Comments. Same class, training data that actually reflects how aggression shows up in the wild. One forward pass, near-instant. For when you just want the vibe.
v6 update
Retired the OLID-sourced Directed Aggression data. Re-trained on threat-labelled examples from Jigsaw 2017 + Civil Comments — same class, training data that generalizes.
Test set
82.12%
Accuracy
774
Dep→Sui
533
Sui→Dep
Deep Dive
Hierarchical Cascade v6 (5 stages)
Five stages, each more careful than the last. A Directed Aggression gate up top (Cardiff RoBERTa). A suicidal early-exit. A normal-vs-distress splitter. A 5-class distress sorter, averaged across 3 seeds for stability. And a Longformer that re-reads up to 1,024 tokens of context when depression and suicidal start blurring together. Pick Balanced for everyday, Sensitive when missing a crisis would cost more than over-flagging. Slower than Quick Vibe, significantly sharper on the cases that matter.
Balanced
82.82%
Accuracy
941
Dep→Sui
266
Sui→Dep
Sensitive
82.45%
Accuracy
1113
Dep→Sui
161
Sui→Dep
Dep→Sui: Depression samples misclassified as Suicidal. Sui→Dep: Suicidal samples misclassified as Depression — the more critical error. Sensitive mode trades a small amount of macro F1 for catching ~40% more of these (266 → 161).
The Team
Project Supervision
Dr. Lamees Nasser
Assistant Professor
Eng. Mirna Ahmed
Teaching Assistant
Disclaimer
VibeCheck is an academic NLP project. It can spot patterns in text, but it can't read you. Whatever it produces is a guess based on training data — sometimes useful, sometimes off, and never the whole story of what you're carrying.
If it lands on a heavy label and that doesn't feel right to you, trust yourself first. The model isn't diagnosing you. It's reflecting a pattern back — that's exactly why the UI is built to feel like a mirror, not a verdict.
And if you are going through something heavy: you don't have to carry it alone. Reaching out — to a friend who'll just listen, a counselor, a crisis line — is one of the bravest things you can do, not a sign that things have to be at their worst. The numbers below are free and they're there for you whenever you're ready.
When you're ready to talk
Egypt — Suicide Prevention
16328 · 24/7
Shezlong — Online Therapy
shezlong.comWorldwide — IASP
findahelpline.com



