Imagine: you are the founder of a startup in Silicon Valley today. Everyone is talking about TechCrunch and you too, read it everyday. Why do you read TechCrunch? To stay updated? To learn about competitors? Or to simply look for another startup out there facing the same struggles? With 30% of entrepreneurs experiencing depression, helping founders cope with the immense stress associated with running a startup becomes increasingly important.
Read more here.
What it does
Bring me Joy is an Alexa focused API that helps startup founders battle stress and depression. By making use of the speech-to-text technology incorporated within Alexa, it allows users to communicate with Alexa about their feelings, and then recommend articles on TechCrunch they can relate to. The user's speech is broken down into text, where Sentiment Analysis, Text Classification and Machine Learning are used to study the emotional patterns of the user.
Sentiment analysis picks up the negative sentiments within the user's input (e.g. Anger, Disgust, Fear, Sadness), while Text Classification classifies the problem faced by the user into one of the problem category within our trained model (e.g. Funding, Manpower, Lack of users).
Articles from TechCrunch are also given sentiment scorings and classified into a problem category. In general, articles that fall into the same problem category of the user will be selected as the "most relatable" one. Over time, with machine learning, the choice of the "most relatable" article would be improved by taking into the sentiment scorings and the user's validation response (i.e user's response to the question "do you feel better now?").
The session ends when the user is satisfied with the recommended article (i.e. user responds "yes, i feel better"). Based on the assumption that the user would be interested in reading up more about the startup involved in the article, more information from CrunchBase would be sent by SMS to the user with Twilio. If the user is dissatisfied with the recommended article, a different article from the same problem category would be recommended instead.
How we built it
We built the Alexa skill set with the history buff template found in the Github repository Amazon Web Services provided and catered it to our needs to make HTTP Requests to our own API. We also wrote custom intent handlers to account for the different types of flows that was required.
Our teammate Ronald, built a Django backend application that does the heavy lifting of communicating with the APIs available and simplify the data received from the APIs into simple formatted data that Alexa could recognize and read.
The application was built with technologies from IBM Watson, Twilio, Crunchbase, TechCrunch's wordpress APIs and all data is passed right down to Alexa to perform the text-to-speech process.
Challenges we ran into
1) Cold start problem: Which article do we choose to return the user, when no data about the user preference is available inititally?
2) Identifying nuances in text: The sentiment assigned to a user input may be inaccurate in situations where the user does not convey his emotions in a straightforward way, leading to a misinterpretation of emotions.
Accomplishments that we're proud of
The greatest accomplishment would be the seamless integration of 4 different APIs to give the end product.
What we learned
The technology of sentiment analysis of speech text has yet to mature, but has great value in a world of personalized services today, and definitely has potential to be one of the trending technology in the market in years to come.
What's next for Bring Me Joy
The concept behind Bring Me Joy can be introduced to a target audience beyond startup founders, and can be extended to helping people cope with stress and depression in general. Instead of focusing on just the data in TechCrunch, articles from other sources can be looked into, such as blogs and forums.