← Back Home

Multi-label Emotion Detection

Github Repository View Project Report

Multi-label Emotion Detection is a deep learning and Natural Language Processing (NLP) system designed to identify multiple emotions from textual inputs. The project focuses on detecting five core emotions - joy, sadness, fear, anger, and surprise, by treating each emotion as an independent binary classification task. The system combines modern NLP preprocessing, embedding techniques, and neural network architectures for robust multi-label emotion classification.


Responsibilities

Designed and implemented a multi-label emotion detection pipeline for identifying multiple emotional states from text snippets.
Processed and analyzed labeled textual datasets, including preprocessing, tokenization, cleaning, and feature engineering workflows.
Experimented with multiple text representation techniques, including TF-IDF, Word Embeddings, and Transformer based embeddings such as BERT.
Trained and evaluated various machine learning and deep learning models, including Logistic Regression, Naive Bayes, Neural Networks, and fine tuned Transformer models.
Implemented Binary Cross-Entropy Loss with class weighting strategies to address class imbalance in multi-label classification tasks.
Evaluated model performance using precision, recall, F1-score, Hamming Loss, AUPRC, and micro/macro averaged evaluation metrics.
Applied stratified cross-validation, oversampling, and augmentation strategies to improve model generalization and handle dataset imbalance.
Achieved strong multi-label emotion classification performance, obtaining 73.94% Micro-F1 and 72.36% Macro-F1 scores on the test dataset.

Technologies & Domains

Python PyTorch NLP Deep Learning Transformer Models BERT TF-IDF Multi-label Classification Emotion Detection Neural Networks Text Embeddings Machine Learning