This project is designed to classify textual data into six emotions: joy, sadness, anger, hate, love, and surprise. Utilizing a pre-trained Word2Vec model and BiLSTM layers, the neural network offers sophisticated emotion recognition capabilities.
The dataset, emotions.csv, includes a diverse collection of sentences and tweets, each associated with one of the specified emotions. It serves as the basis for training and evaluating the neural network.
- BiLSTM Layers: Leverages Bi-directional Long Short-Term Memory layers for effective contextual understanding in text.
- Word2Vec Integration: Incorporates a pre-trained Word2Vec model for robust word embeddings.
- Data Preprocessing: Details the process of loading, cleaning, and processing data from the database.
- Model Evaluation: Highlights an accuracy of 88.3% on test data.
This project requires the following libraries:
- pandas
- TensorFlow
- numpy
- scikit-learn
- gensim
- nltk
- matplotlib
- contractions
git clone https://github.com/thejus03/Text-Emotion-Neural.git
cd TER
pip install pandas tensorflow numpy scikit-learn gensim nltk matplotlib contractionsTo utilize the pre-trained Word2Vec model in this project, follow these steps:
- Visit the Kaggle dataset page for the Google Word2Vec model: Google Word2Vec Kaggle Dataset.
- Download the dataset from the provided link.
- Extract the downloaded file.
- Place the extracted Word2Vec model .bin file into the
TERfolder, which contains theemotions.ipynbandemotions.csvfiles.
This will ensure that the Jupyter notebook can correctly locate and use the Word2Vec model for processing the data.