Coronavirus has obviously been a big source of inspiration, and after our original plan of rigging a Big Mouth Billy Bass talking fish (Google it, he's iconic) to call people out for not wearing a mask fell through when Kevin gave away his hacked Billy Bass, we decided to stick to the general coronavirus + ML idea. We thought it would be interesting to use live data from Twitter to teach a program to recognize changing attitudes towards the pandemic and lockdowns, which would then allow us to create a visual representation of regions with low COVID compliance. This is especially relevant now as the pandemic drags on in Canada and 'COVID fatigue' has really set in—people are just tired of being told to stay home and are no longer quite as afraid of the virus as in March, leading to increased transmission as people no longer follow guidelines. Recognizing regions with less COVID compliance and more careless attitudes towards the pandemic can help us target resources and outreach to regions that need them most, or just give you a better idea of where not to go for your curfew-sanctioned walk.
What it does
It crawls Twitter for current tweets, uses deep learning natural language processing to classify them, and builds a cute little visual representation of our data to be deployed on a web app.
How we built it
This bad boy uses Tweepy to acquire tweets, AllenNLP + Pytorch for model training and deployment, Flask for backend, and CSS/HTML/JS therein to deploy it with testing done on glitch.com.
My teammates have not gotten back to me yet on how they're making the data map, but there's definitely another library or something else there!
Challenges we ran into
The Tweepy Twitter API just did NOT want to work and Twitter took a long time to authenticate our request, meaning precious hours wasted, and trying to collaborate in json over Google API was not a good time. General ML challenges arose, like trying to define how to train it and choose well-labelled data sets. I have also never built a web app before, so I spent 4 hours trying to center some buttons.
Accomplishments that we're proud of
I'm personally very proud of finally centering the buttons on the website.
What we learned
I learned how to properly set up files for web development and how to launch them from Visual Studio onto the Internet through the terminal.