Emotion AWARE: A Framework for Comprehending Emotion in Text
A neuro-symbolic framework producing multi-granular, intensity-scored emotion profiles, robust to negation and modifiers, explainable by design
An AI framework that elicits adaptable, robust and explainable emotion profiles from text, combining a fine-tuned language model with a rule-based lexicon and embedding-space matching, and underpinning the call-recording and financial-transcript emotion work.
- Python
- BERT
- Deep learning
- Text/sentence embeddings
- Lexicon construction
- Text similarity matching
- Neuro-symbolic AI
Problem
Off-the-shelf sentiment and emotion models return a single label or a coarse positive/negative score. Most take negation and intensifiers at face value: “supportive” and “not supportive” often score close to the same. They can’t adapt to a new domain without retraining, and give no way to see why they returned what they did. Both the call-recording and financial-transcript work depended on emotion detection being right, and generic models weren’t trustworthy enough for that.
Approach
Emotion AWARE is a neuro-symbolic architecture: a fine-tuned language model on one side, a rule-based lexicon on the other, built by expanding Plutchik’s seed words through modifier and negation lexicons. Given a piece of text, it:
- builds an embedding for the input and looks up its nearest neighbours in a pre-computed emotional-concept embedding space
- quantifies emotion intensity from the distribution of matching concepts in that neighbourhood, rather than a single classifier score
- resolves modifiers (“extremely relaxed” vs. “a little relaxed”) and negation (“supportive” vs. “not supportive”) explicitly, instead of hoping the underlying model has already learned them
- returns the matched emotion keywords alongside the profile, so a result is explainable rather than a single opaque number
The output is a multi-faceted profile with an intensity per emotion (joy: 0.53, trust: 0.46, anticipation: 0.05, and so on), rather than one dominant label, which is what a downstream trend analysis over a call or a meeting actually needs.
Result
Published as Emotion AWARE: an artificial intelligence framework for adaptable, robust, explainable, and multi-granular emotion analysis in the Journal of Big Data, and used as the emotion-extraction engine behind both the call-recording analysis for a health support line and the financial earnings-call emotion analysis.
What I’d do differently
The negation and modifier lexicons were built up reactively, case by case, as gaps turned up in testing. I’d start from a broader, more systematically constructed lexicon, sourced from an existing modifier/negation corpus rather than extended one failure at a time, since coverage gaps there were the most common source of error in later evaluation.