⭐ Inspiration
Political views that seem so wrong. Conspiracy theories. Vaccine misinformation. How does this happen?
The answer lies in filter bubbles, in which an internet user only encounters information that reinforces their own beliefs due to recommendation algorithms. And, unfortunately, as recommendation algorithms get better, filter bubbles only worsen, splitting society further and further apart.
Not all is lost, though; the intense emotions we see in media play a significant role in creating filter bubbles (source), so if we could warn about strong feelings in tweets, we could nudge users away from filter bubbles.
⚠️ What it does
Burst is a chrome extension that uses deep learning to scan the tweets you see and warn you about overly emotional or hateful posts, so you know which posts to take with a grain of salt. It shows you the emotion and strength of the emotion in each tweet. Also, it shows tweets as misleading if they contain outdated information or information taken out of context.
🛠️ How I built it
The core of this project is powered by deep learning. The chrome extension, implemented with Typescript and React, calls the backend to analyze each tweet. Then, the backend, implemented in Python and FastAPI, uses OpenAI's sensitivity filter to determine whether a post is controversial or not. If the post is controversial, the server performs further analysis using 3 BERT models for each metric (emotion, emotion strength, "misleadingness"). I trained my own BERT model using Twitter's Birdwatch data to detect how "misleading" each post was.
Overview of the architecture:

🚧 Challenges I ran into
- Training the BERT model for misleading tweets proved to be quite tricky, as the Birdwatch data is heavily imbalanced
- I solved this by augmenting the minority classes (in this case, the non-misleading tweets) by putting them through a random language in Google's translate API and converting them back to English
- Reading and injecting DOM nodes into the Twitter posts from a chrome extension was completely undocumented
😊 Accomplishments that I'm proud of
Overall, as a solo high-school student, I'm thrilled that I have a working extension that can warn you about tweets using deep learning.
🧐 What I learned
In this hackathon, I learned:
- How to create a chrome extension
- BONUS: integrating it with React
- How to train a BERT model and how to use Hugging Face's MLaaS
⏭️ What's next for Burst
- Port to sites like Instagram that are mainly image-based, using convolutional neural networks
- Cross-reference tweets with news articles to check for their factual accuracy directly
Built With
- chrome
- huggingface
- machine-learning
- openai
- python
- react
- typescript
Log in or sign up for Devpost to join the conversation.