/Tweet_Depression_Detection

Detecting depression through tweets using NLP/Deep Learning

Primary LanguageJupyter Notebook

Tweet Depression Detection

Motivation 💡

The Tweet Depression Detection project aims to create a machine learning model that can classify tweets as either "normal" or "depressive." As depression becomes an increasingly important topic in mental health, social media platforms such as Twitter provide a unique opportunity to study and potentially identify individuals at risk of depression 📈. By analyzing large amounts of tweet data, I hope to develop a model that can accurately classify tweets and provide insights into how individuals express depressive symptoms on social media. 💭

Dataset 📊

For this project, I will be using two datasets: the Sentiment140 dataset and a dataset of depressive tweets scraped by Twint.

The Sentiment140 dataset https://www.kaggle.com/datasets/kazanova/sentiment140 contains 1.6 million tweets. While this dataset is not specifically designed for detecting depression, I will use a subset of this dataset containing approximately 100,000 randomly sampled tweets for our "normal" tweet class.

To create our "depressive" tweet class, we found a separate dataset of tweets that had been scraped by Twint using keywords related to depression https://github.com/miladrezazadeh/twitter_depression_detection/blob/main/data/processed/processed_data.csv. This dataset contains approximately 20,000 tweets that have been labeled as depressive. 😞

Data Processing 🤔

I will combine these two datasets to create a labeled dataset for training our machine learning model. By using these two datasets, I aim to create a model that can accurately distinguish between "normal" and "depressive" tweets, and potentially identify individuals who may be at risk of depression based on their social media activity. 💻

Tools and Models for Classification 🔧

Text Feature Extraction : TF-IDF

Classification Model : Logistic Regression, Support Vector Machin, KNN, Random Forests

Deep Learning Model: LSTM

Fine Tune Model: BERT

Sample Web UI (Tweet Predictor) 💻

Depressive Tweet: Image text

Normal Tweet: Image text

Video Link: https://drive.google.com/file/d/1CJHbQKxXz0oVt59QDHxKBFrO-kZAIq0q/view?usp=sharing