Opinion Mining, sentiment analysis on text
Exploring sentiment analysis on tweets and texts with Python and Orange DataMining.
The project
This university project aimed to answer two fairly fundamental questions: what is sentiment analysis, and how can we actually apply it? It’s the kind of subject that looks simple said like that, but gets much more subtle the moment you look at a real corpus.
Use case 1, tweets from presidential candidates
Using the Twitter API, I pulled the last 4,000 tweets of several candidates to analyze the tone of their communication: positive, negative or neutral. The idea was to see whether you can characterize a campaign stance just from the emotional charge of tweets.
Use case 2, tweets about Ukraine after the invasion
Using Orange DataMining and its Twitter integration, I analyzed the overall sentiment of tweets published about the Ukrainian conflict in the days following the start of the invasion. Obviously it’s a heavy subject, and the results need to be taken with a lot of caution, especially because automated analysis handles irony and pain poorly.
Use case 3, analyzing a webtoon
I ran the algorithm on the texts of the Eleceed webtoon to extract the main characters and analyze the sentiments attached to dialogues. Results were uneven depending on sentence complexity, so it wasn’t really actionable, but the experience was rich in lessons about the model’s limits.
Takeaways
Opinion mining is a technique for extracting and classifying opinions from text, useful especially for trend-following and behavior prediction. Results aren’t always directly actionable, obviously, but they offer an interesting read on opinion dynamics, so it’s something you can integrate with other signals rather than rely on alone.
Context
Project done as part of the Computer Science bachelor’s at the University of Tours.
Tech stack
-
Python
-
Orange DataMining
-
Tableau Software
-
Twitter API