The neural network model is capable of detecting five different male/female emotions from audio speeches. The ML is built on Deep Learning & NLP. The program also has speech recognition features.
How to improve the life of Torontians.
Improving overall well-being of Torontonians by using music, data-driven results, and machine learning at the angriest place on earth: Call Centres..
- Islam Azeddine Mennouchi
- Shahzeb Afroze
- Abdulaziz Chalya
- Harry Feng
- Masami Oslon
- Eric D'Souza
- Christina Park
- Python 3
You can follow the steps below if you dont know how to use the directory and/or github:
- Click download or clone button above and download in zip file.
- Unzip the folder in case you are downloading in the zip form.
- Just download the dependencies from the final_requirements.txt file.
- Recommended: Create a virtualenv for this program because there are a lot of dependencies. In case you don't know how to create and run a virtual env. Follow the Creating & Running Virtualenv Demo below.
pip install -r requirements.txt
pip install virtualenv
which python3
Copy the output and replace the (dir/python3)
virtualenv -p (dir/python3) email_env
Activating the virtualenv
source email_env/bin/activate
Setting up the virtualenv for the code.
pip install -r final_requirements.txt
- For legality purposes, I can't upload the song files.
- You need to put the song files in the songs folder.
- Copy the name of those song files; and put it on the excel file (removing the .mp3 extension).
- The Machine Learning Model differentiates gender and emotion while the IBM Tone Analyzer API offers only emotion level.
- The IBM API integration is deleted in this code due to passkey secrecy.
- Go to email_invoice.py and fill in the login information. It is to be noted that different email client will have varying SMTP. Currrently, it is set up for Gmail.
- If you are using some other client, you will need to change server SMTP in email_invoice.py
| Emotions from ML model | IBM Watson API |
|---|---|
| female_angry | Joy |
| female_calm | Fear |
| female_fearful | Sadness |
| female_happy | Anger |
| female_sad | analytical |
| confident | |
| male_angry | tentative |
| male_calm | |
| male_fearful | |
| male_happy | |
| male_sad |
- Follow the setup and installing guide. Highly Recommended
- Open terminal and go to the directory of the folder where you downloaded the code.
python recognize.py
We got placed Top 50 with this project while we were competing among full time engineers and grads students.
- Music API
- Train Song and classify for emotion
- How to set up a different microphone(eatphones) so that voice recognition performs better.
Github User: Mitesh Puthran
Licensed under GNU General Public License v3.0. - afl-3.0