"Pray for me. I'm about to hit the Ye button." - Kanye West, Champions 2016
What it does
A chatbot that talks to you as Kayne would..
How I built it
We first wrote a web-scraper to collect all lyrics from Kanye's songs and interviews. We then built training data for the Watson Natural Language Classifier using normal, everyday language and some lyrics. The classifier is first used on the user-input to determine what categories the text input falls under, and an appropriate response that matches those categories is chosen as the output. Finally, we built the front-end using Flask to connect our Python back-end with HTML and CSS.
Challenges I ran into
Building good training data to make an effective language classifier was extremely difficult as Kanye is not a man of simple sentences. Coming up with categories to classify possible chatbot inputs and outputs was also challenging. Domain.com was also difficult to figure out. We acquired a domain but there were a lot of problems and we decided to focus on optimizing the rest of our program.
Accomplishments that I'm proud of
The language classifiers learned to detect topics of given inputs relatively well with our training data.
What I learned
How to set up a website using Flask, and how IBM Watson uses training data to recognize speech subjects.
What's next for YeButton
Optimizing responses by accounting for specific words in the chatbot user input. Also, categorizing slang is another huge task to do, especially curse words because they are extremely versatile in regular speech. Better lyrics data would also help clean up the outputs.