Cher has a huge presence on Twitter, and her unique syntax, word choices, use of emojis and pattern of capitalization have been a beacon of hope and entertainment during the fraught years of Trump's presidency and the COVID-19 pandemic.
I wanted to take a deeper dive into the creative ways that she strings together her words/emojis and the way that she capitalizes her words, in a seemingly random yet organized way.
What it does
This project queries Cher's recent tweets.
Mapping a Word to its Next Words
After removing hashtags, @mentions and embedded links, it examines the sequence of words/emojis and maps each word to all the words that immediately follow it. Then, it graphs the relationship between these words in a network graph.
To examine the pattern of capitalization, I built a basic Markov model to compute the probability of the following word's [un]capitalization state conditional on the "current" word. Then, I created an interactive bar graph to visualize the conditional probabilities.
How we built it
I used Python to build this project. The libraries I use are: networkx, to build the network model, plotly to make graphs, pandas, and emot to handle emojis. I also used Twitter's API to get the data.
Challenges we ran into
The main challenge I ran into was the limit that Twitter sets on the number of recent tweets a non-premium/non-academic user can query. Because of that I could only query 10 tweets, which significantly limited the robustness and the power of this project.
Accomplishments that we're proud of
I'm really proud that I got to visualize the the words in a network graph and I'm really proud of the Markov model I implemented. Thinking about the conditional probabilities was very cool, and it deepened my interests in stochastic processes.
What we learned
What's next for Cher
I want to get an Academic access for Twitter's API so that I can get more tweets. With those tweets, I want to create an iOS Keyboard plug-in an NLP algorithm that can predict/suggest the next word to use in style of Cher's word/emoji choice and capitalization choice.