Inspiration
Speaking about one's mental health issues, even to close friends and family members, can be quite off-putting and taboo to the vast majority of Singaporeans - a country with high societal expectations. On top of that, seeking professional help from qualified psychotherapists can burden mentally ill persons financially, especially if they are not from a well-to-do background.
These are some factors that make those people who genuinely require psychotherapy suffer in silence. A topic that I hold quite close to heart as I lost a friend of mine to suicide years ago as well, I want to develop a mental health-dedicated product that can help these people improve their psychological well-being for free, before they reach the irreversible point.
Empetaize is a portmanteau of "Empathize", "Pet" (Cats), and "AI".
What it does
My software application has two main components - an AI chatbot aimed at talking with these people without judging them for who they are - making them feel appreciated and cared for.
Why cats you may ask? I find that the demeanor of most social services is too stiff - the bubbly faces of cats can help ease the tension and lighten the mood of mentally ill people.
DISCLAIMER - I do not intend for Empetaize to replace clinical psychiatrists for severe cases, it is only for people with mild anxiety or depression who can still be relatively easy to talk out of their negative ideas.
How I built it
This app uses Computer Vision, Neural Networks and Natural Language Processing. I used the raw textual data - test.txt & train.txt - from https://www.analyticsvidhya.com/blog/2021/06/nlp-sentiment-analysis/ (Credits to: Nikhil Raj) to aid in the supervised learning and training of my Deep Learning model. Mediapipe was used for constructing the magical projection by detecting the user's hand landmarks.
Challenges I ran into
No sleep for almost 2 days (lol) But the main challenge was the part of building an accurate and reliable Deep Learning Model my app would use. Whilst there was a healthy f1-score, accuracy and reliability of >0.7 out of 1 on average, my model sometimes misinterprets inputs with positive connotations as having a negative sentiment. It is not 100% correct and accurate, as the dataset used for supervising the model is not big enough in my opinion. I counteracted this in my app by adding a layer of TextBlob / NLTK's SentimentIntensityAnalyzer, to doublecheck and further filter inputs according to their relevant sentiments.
Accomplishments that I'm proud of
Completing this project fully independent!
What I learned
How to think from the perspective of a psychiatrist to help mentally ill people.
What's next for Empetaize
If there was more time to improve on the product, I would envision Empetaize to provide a more realistic experience for users using Virtual Reality.
Built With
- keras
- mediapipe
- natural-language-processing
- python
- tensorflow
- tkinter
Log in or sign up for Devpost to join the conversation.