This project aims to detect and classify emotions from social media text using natural language processing (NLP) and machine learning techniques. Emotions such as joy, anger, sadness, fear, and surprise are identified to provide actionable insights for businesses, researchers, and mental health analysts.
Multiclass classification using supervised machine learning.
- Preprocess and clean social media text data.
- Perform Exploratory Data Analysis (EDA).
- Engineer features from text for improved prediction.
- Train and compare multiple models: Logistic Regression, Random Forest, LSTM, and BERT.
- Maximize model performance (accuracy, F1-score).
- Visualize results and key influencing features.
- Python
- Jupyter Notebook / Google Colab
- Libraries: pandas, numpy, matplotlib, seaborn, scikit-learn, nltk, TensorFlow (for LSTM), transformers (for BERT)
The dataset used contains text samples and associated emotion labels. See dataset.csv for the complete dataset.
python source_code