CNN model for classifying facial emotions into seven categories using Keras
A deep learning model for facial emotion classification. This Keras-based project includes a CNN architecture and pre-trained weights for quick testing on custom images.
Table of Contents
This is the final project created for the Spring semester of 2023 course in Introduction to Artificial Intelligence with a focus on the study of Machine Learning.
The project is a Convolutional Neural Network (CNN) model architecture that classifies human facial emotions into one of the 7 categories. During the project development iterative process, many different machine learning ideas were tested and evaluated based on the performance metrics.
The CNN was implemented using the Keras API and is described in detail in the project notebook.
Open the notebook using your choice software in a terminal or command window by navigating to the top-level project directory, emotion-recognition
. For example, if the software is Jupyter Notebook:
jupyter notebook emotion_recognition.ipynb
The project folder includes the weights of the trained neural network and the model can be tested on custom images without requiring to train it again.
This dataset is a modified version of the Emotion Detection dataset found on Kaggle, consisting of 35887 data entries, classified into 7 categories.