Find yourself struggling to make conversation? Want to improve your sense of humor? Well, then get SOCIAL! Making conversation is a difficult skill for everyone. In a world today that requires excellent conversational skills both in real-life and online, in the business world and in the dating scene, we figured we could make something that could help people grow their social skills!
What it does
Social is a program that automatically suggests jokes and topics to talk about based on your friend's-- or crush's ;) -- messages as you chat! And to let you know if you're doing well, we've included sentiment analysis, complete with indications of predicted emotions that your friend may be feeling!
How we built it
Using PyCharm, we built a chatroom with Python's own built-in Socket, and a GUI with Tkinter.
To create the joke and topic databases for automatic suggestions, we parsed and sorted databases scraped from reddit, stupidstuff, and wocka. Then, by parsing user messages into keywords, we used them to quickly suggest relevant jokes to say, or a new topic if a joke can't be found!
Using Python's NLTK library and scikit Learn to train Machine Learning models in order to classify textdata into emotions
Challenges we ran into
Making the machine learning models for sentiment analysis, as well as efficiently sizing down the databases to be able to search quickly
Accomplishments that we're proud of
Using Machine Learning!! And helping people impress their crushes ;)
What we learned
Socket is awful
What's next for Pocket Yoda
Smarter joke search engines, adding type of humor one wants to portray, catering suggestions to the type of person you're speaking to (parent, friend, girl/boyfriend)