/Emotion-Classification-With-Transfer-Learning

Used transfer learning to build a convolutional neural network with FER2013 dataset that can classify emotion from different photos (Phoebe from F.R.I.E.N.D.S).

Primary LanguageJupyter Notebook

Emotion Classification

  • Used transfer learning to build a convolutional neural network with FER2013 dataset that can classify emotion from different photos (Phoebe from F.R.I.E.N.D.S).

Dataset

For Training (FER 2013)

Angry Disgust Fear
angry disgust fear
Happy Neutral Sad Surprise
happy neutral sad surprise

For Testing (Phoebe)

test1 test2 test3

Predictions

Angry Surprise
angry surprise

Get Started

  • (Optional) Create a virtual environment and activate it.
virtualenv venv
source venv/bin/activate

Installation

  • Make sure you have all the packages installed from requirements.txt.
pip install -m requirements-dev.txt

pip install -m requirements.txt
  • Use the Jupyter Notebook (test.ipynb) to build the model and test the model's accuracy.

Train the Model

python3 model/train.py

Fine-tune the Model

python3 model/fine_tune.py

Test the Model

pytest -v --cov --cov-report term-missing