Safe & sound
In Spring 2020, I joined a team of UC Berkeley and Georgia Tech students to compete at HackDavis, a hackathon for social good hosted by UC Davis. The project we created over the weekend won first place in the Best Use of Google Cloud category.
Our project, titled Safe & Sound, was a proof of concept for a platform meant to make it easier for people at risk for self-harm to reach out when they need help. The platform registers users who can input contacts, people they trust as their support network, and analyzes users’ messaging behavior for signs of suicidal ideation. When such messages are detected, a text message is sent to the users’ contacts, containing the text of the flagged message, and the user’s location.
My piece of the project involved creating a dataset and training a model for text classification. I pulled data from Reddit, from r/SuicideWatch and r/CasualConversation, to build up a set of training data. r/SuicideWatch, a controversial subreddit that has been the subject of news articles and studies on suicidality over the past few years, is a mostly uncensored and anonymous forum for people dealing with suicidal ideation.
Technical details
Our stack consists of a Django backend and React & Redux frontend, with user and contact data stored through MongoDB. To build a dataset for text classification, we pulled from two Subreddits, r/SuicideWatch and r/CasualConversation. We used the Google Cloud NLP API for sentiment analysis to refine our dataset, then trained a CNN model with spaCy. Our UI allows users to register and input contacts’ phone numbers. To showcase our functionality, a user can interact with basic text input and a chatbot. When language that could indicate suicidality is detected, the platform sends contacts an SMS, through Twilio, which includes what triggered the alert and the user’s location.
For details about our submission, see our Devpost page and Github repository.