By analyzing posts on Twitter, Facebook, Reddit and Instagram, two D.C.-based technologist built some algorithms to track voter sentiment in real-time, and is sharing the results through a new website.
The rudimentary site Choice.org was recently built by WilyFish CTO Michael St. John with support from Stevan Lieberman, WilyFish CEO and an attorney for Greenberg & Lieberman. The pair cofounded WilyFish in 2014 alongside the company’s CMO, Michael Leifer, to create a brand-protection system that automates the process of finding and flagging potential brand-abuse — or simply where brands are being used — and takes action based on what it finds, Lieberman said.
While developing the WilyFish platform, the company’s founders realized that they needed to take social media into account. St. John built a “sentiment analysis” to include social media since those sites are a big area for brand exposure.
“I’ve always been a tech guy, trying to build the impossible for other companies — whether it was coding e-proms [erasable programmable read-only memory] for machinery or building recognition systems, it was all fun,” St. John told Technical.ly about how he got his start in tech and entrepreneurship. “I figured, why not take the next step and start a company and help others while doing what you love.”
The creators behind the Choice.org answered some questions via email about how the tech was built and what you can expect to find when you visit the site. Check out the explanation of their process below.
Disclaimer from the team: They wanted to make sure the site went live as soon as possible, so the formatting and layout can look a little wonky as they tweak it. Try zooming your screen out to 80% if you’re having issues viewing without text overlap.
###
Why did you decide to build Choice.org?
Everyone’s of course watching the election. We were interested in this as a civic project, where hopefully we can try to help inform voters, journalists, and political analysts out there while also testing our algorithm. We were also interested in if we could galvanize people to go vote, which is why we added the League of Women Voters material to our site, too.
What kind of information can users expect to get when they visit the site?
The system both shows a real-time score — what people are saying about Joe Biden and Donald Trump at that moment — and it currently allows for recorded data to show how people reacted during the last debate. It’s a prototype of what we’re installing into WilyFish. The “Likeness Score” that we include on WilyFish will have a timeline, so users can see how opinion changed over time, and also allows users to enter their own keywords to compare.
How did you build the algorithms to track voter sentiments in real-time?
- Site: JavaScript/Vue.js
- Backend: Java, Python
- Some of the tools we used for the process: PyTorch, Apache Storm, Redis, Vertx
Rather than only treating individual tweets and comments, we also group them into conversations. If you do single tweets, you can’t flesh out context — sarcasm, things like that. In politics, people like to take things out of context — this algorithm takes everything in context.
So the algorithm takes all those factors into account, and comes up with a better score, which it then classifies into a “sentiment.” The classifier takes various other metrics into account, as well: For example, words in all-caps or multiple exclamation points can emphasize the sentiment in some cases. Curse words tend toward the negative side; “likes” obviously are positive.
We also had to account for different numbers of tweets — there’s six times as many tweets talking about Trump as Biden, because Trump puts out so many tweets, and people seem to respond to every single one of them. If we didn’t do that, no matter what, Trump would “win,” because he has so many more tweets that are about him. That’s why we built our likability analysis, and then combined it with the sentiment analysis to create what you’re seeing.
In doing this in real time, it allows us to get a glimpse into how discussions are going about the keywords and the candidates — it gives us a solid basis whether people are liking Trump or liking Biden based on the analysis of the words within each tweet.
What happens to the site after the election?
We’re not sure yet. But we’d love to expand the site to cover other political races in the U.S. and beyond.
Before you go...
Please consider supporting Technical.ly to keep our independent journalism strong. Unlike most business-focused media outlets, we don’t have a paywall. Instead, we count on your personal and organizational support.
3 ways to support our work:- Contribute to the Journalism Fund. Charitable giving ensures our information remains free and accessible for residents to discover workforce programs and entrepreneurship pathways. This includes philanthropic grants and individual tax-deductible donations from readers like you.
- Use our Preferred Partners. Our directory of vetted providers offers high-quality recommendations for services our readers need, and each referral supports our journalism.
- Use our services. If you need entrepreneurs and tech leaders to buy your services, are seeking technologists to hire or want more professionals to know about your ecosystem, Technical.ly has the biggest and most engaged audience in the mid-Atlantic. We help companies tell their stories and answer big questions to meet and serve our community.
Join our growing Slack community
Join 5,000 tech professionals and entrepreneurs in our community Slack today!