Fake news, popularity, health, financial and social risks: sentiment analysis is helping make sense of it all.
…and may even lead us to understand why.
People have naturally been interested in each other’s opinions since the dawn of time yet scientific work in analysing opinions dates back to only the beginning of the 20th century when there were attempts to capture, analyse and quantify public opinion from questionnaires. It was around the same time that the academic scientific journal “Public Opinion Quarterly” appeared in 1937[1]. However, it’s the emergence and adoption of social media platforms that led to the creation of the field of research called ‘sentiment analysis’ to analyse this large-scale online resource of unstructured opinions.
Broadly speaking, sentiment analysis makes use of text analytics to capture public opinion. It’s one of the most appealing use cases of Natural Language Processing (NLP) with interest from both industry and academia. In sentiment analysis, NLP-based data mining processes and techniques are applied to extract and analyse subjective information from user-generated content (UGC) and mostly from social media (because there’s so much of it).
It allows you to measure sentiments (opinions, but also emotions) toward certain products, people or ideas. Sentiment analysis has traditionally been about opinion polarity, i.e., whether someone has positive, neutral, or negative opinions about someone or something but it can also be about specific aspects of a person or object.
Its popularity naturally stems from the wide range of applications it’s useful for. Business applications such as customer service, business intelligence and product or brand reputation management are particularly prominent. In healthcare, it can be used for example to detect abnormalities in adverse drug reactions. It can help monitor criminal activities or sentiments in financial markets but also measure how the public perceives political candidates.
At a time when any and every event can be published, viewed, commented and shared by potentially millions of people on social media at almost the speed of lightning, sentiment analysis is an important tool to make sense of it all and, if necessary, react.
How sentiment analysis has evolved over time
Sentiment analysis research tasks and methods have grown with social media channels. In its infancy, sentiment analysis was exclusively about allocating a global, overall polarity label (positive, negative and sometimes neutral) to English language customer reviews. Research nowadays embraces sentence level subjectivity detection, aspect based sentiment analysis (ABSA), sentiment analysis on figurative language, topic-based polarity classification, classification of implicit polarity of events i.e. recognizing “pleasant” or “unpleasant” events when no explicit polarity marker is mentioned, emotion classification and, more recently, stance detection and argument mining, all on a wide variety of languages and diversified media sources (although working with Twitter data has become a “must”). Task definitions have subsequently evolved towards more complex challenges where subjectivity, polarity recognition and opinion mining have been enriched with fine-grained aspects and topic level predictions. Polarity as a concept has been complemented by emotion models defined in psychology research.
The methods, algorithms and resources used in sentiment analysis are also constantly evolving. Existing research has produced numerous techniques for different tasks including supervised and unsupervised methods. In the supervised setting, early papers used all types of supervised machine learning methods (such as Support Vector Machines (SVM), Maximum Entropy, Naïve Bayes, etc.) and feature combinations. Unsupervised methods include those that exploit sentiment lexicons, grammatical analysis and syntactic patterns. In recent years the success and popularity of deep learning in other domains has led to its use in sentiment analysis[2], often using word embeddings to represent input texts.
For sentiment classification, Recurrent Neural Networks (RNN) in particular Long Short Term Memory (LSTM) networks and their ability to capture long distance dependencies have obtained state of the art results in polarity classification. Attention models have also proven to give interesting results as they can capture important information concerning aspects in sentences [3].
The NLP and deep learning methods coexist. The classical NLP approaches use linguistic prior knowledge to decrease the level of supervision needed for them to be accurate on various tasks including sentiment analysis. The main drawback of deep learning approaches is that they need lots of annotated data. This implies a certain cost, in particular for complex and structured semantics. In light of this, the current research trend advocates integrating prior linguistic knowledge to deep learning architectures for text analytics[4], and some work has led to interesting results for sentiment analysis[5].
Long-standing challenges and new frontiers
In spite of the growing body of research and the amount of progress made in sentiment analysis, dealing with ‘affective phenomena’ in text such as subjectivity, opinions, emotions, mood, affect, attitude and feelings has proven to be a complex, interdisciplinary problem that’s far from being solved. Many parameters have to be taken into account such as the author’s profile, textual genre, style, domain, document sources, target languages and the goal of the final application. There’s also a gap between publicly available experimental results, usually obtained in relatively favourable settings, and results a system would obtain in real world conditions.
Natural Language
The main barrier to accurate sentiment analysis has been, and still is, natural language for a number of different reasons.
Natural language is ambiguous; words may have different polarity orientation depending on the context and the domain, e.g. the adjective “predictable” is probably negative when used to describe the end of a movie but positive when it’s about the quality of a product.
To express their opinions, people often make use of figurative language, such as irony and sarcasm. These are highly challenging tasks for NLP where machine learning methods are easily misled by the presence of words that have a strong polarity but are used ironically (meaning the opposite polarity was intended).
Negation (expressions of falsity) and modality (expressions of necessity, permissibility and probability, for example what should be or could be)are complex linguistic phenomena which greatly impact the semantics of expressions used in formulating opinions. Handling the scope of negation and modality is particularly crucial for sentiment analysis.
Understanding context is necessary to understand opinions. Anaphora resolution, i.e. resolving who or what a pronoun or a noun phrase refers to is a well-known challenge for NLP techniques and is an important step towards opinion understanding.
Finally, implicit sentiments (factual expressions implying positive or negative sentiments) are rampant in UGC, for example statements implying inference and reasoning like in “She is still looking for another Oscar nod. Not here though”. These expressions are related to desirable and undesirable facts or actions, but don’t use opinionated vocabulary which means they’re difficult to capture automatically.
Challenging Tasks
Sentiment analysis is challenging in its essence, but there’s growing interest in other related tasks that might be even more difficult.
Aspect Based Sentiment Analysis (ABSA) aims at capturing the sentiments expressed on different aspects of entities such as products, movies, companies, etc. on user-generated comments. Aspects are attributes of an entity, such as the screen of a cell phone (vs. its weight or size etc.), the service of a restaurant (vs. the location or pricing etc.), or the picture quality of a camera and so on. It can be described by an ontology associated with the entity. ABSA implies identifying the different aspects of an entity together with the corresponding sentiments. Interest in this task has grown recently, in particular along with the SemEval challenges dedicated to it [6] It’s becoming the sentiment analysis “standard” task over basic document polarity detection and we’re developing an ABSA system that obtained state of the art results in the SemEval 2016 challenge [7]. We’re now integrating it into a map search engine to create a sentiment aware map search of Points of Interest. We’re also investigating the ABSA evaluation in final application settings[8], and have created a new annotated ABSA dataset for this purpose (based on FourSquare data) which can be downloaded from this site.
Emotion Analysis detects and recognises types of feelings in texts, such as anger, disgust, fear, happiness, sadness and surprise. These six basic emotions are the most widely used, from the theory of American psychologists Paul Ekman and Wallace V. Friesen. One of the biggest challenges here is that, in the majority of cases, emotions are implicit in text e.g. a sentence can have an element of anger without using the word “anger” or any of its synonyms. Combined with the fact that there isn’t must emotional annotated textual data available makes it even more difficult. At the moment standard classification techniques are usually used, combined with resources such as WordNet Affect or SentiWordnet complemented with access to common sense knowledge from implicit emotions [9].
Spam and Fake Detection: Fake reviews and fake news are a closely related phenomenon as both consist of writing and spreading false information or beliefs. The biggest challenge here is the lack of an efficient way to tell the difference between a real review and a fake one. Even humans have difficulty telling the difference. Again, we’re faced with a serious lack of ground truth datasets to help us. Most methods focus on the content of the reviews (length of the review, specific vocabulary, part of speech, etc.) and on the reviewer’s behaviour (e.g. time of posting, frequency of posting, first reviewers of products, etc.) [10].
Multilingual Sentiment Analysis. The majority of current sentiment analysis systems usually concern only English yet online opinions exist in many more languages. Having a sentiment analysis tool in only one language hugely increases the risk of missing important information written in others. To solve this difficult task, current methods focus on polarity information combined with multilingual word embeddings [11], [12].
Multimodal Sentiment Analysis: With the proliferation of social multimedia, multi-modal sentiment analysis will bring new opportunities by integrating other, complementary data streams like facial and vocal displays and expressions that express sentiment often in a very powerful way. Doing this will not only improve text-based sentiment analysis but will even go beyond it. The difficulty will be in extracting visual emotion in real world settings (low resolution, subject movement) and to reliably extract linguistic and paralinguistic features from audio transcripts[13].
Real Time Sentiment Analysis: Enormous amounts of real-time data are generated every second across the world mostly in unstructured text messages. If we’re able to analyse this data in real time not only will we quickly discover answers to questions but we’ll also solve real time problems. This will take dedicated pre-processing or the development of distributed architectures that themselves are dedicated to online analytical algorithms [14].
Finally, Argument Mining isone of the most challenging directions of future sentiment analysis techniques. Sentiment analysis is about understanding users’ opinions on some aspects, argumentation aims at identifying the reasons for these opinions and the overall reasoning path.
The primary goal is to automatically extract arguments from generic textual corpora to provide structured data for computational models of arguments and reasoning engines.
In theory, argument mining can uncover knowledge that would allow us to detect the ‘justification’ for common opinions i.e. (why people came to think like that), generate fine-grained debate graphs for complex political issues or refine common opinion mining algorithms. Argument mining is highly related to another emerging task, Stance Classification, whose (simpler) goal is to identify whether the author of a comment is in favour of a (usually) controversial target topic of the comment. Mining arguments is a tremendously challenging task [15], because it requires a substantial amount of common sense, world knowledge, domain knowledge and contextual knowledge. Many argumentation models have been proposed and then adapted for automated recognition [16]; they serve as a foundation for argument annotation of texts.
Deep learning models have recently been applied to argument mining to model context which can be helpful in the acquisition of world knowledge. However, these models have limitations in being able to automatically acquire common sense and world knowledge from textual data. Argument Mining could be considered in some respects as an evolution of sentiment analysis: while the goal of opinion mining is to understand what people think about something, the aim of argumentation mining is to understand why, i.e. mine pro and cons arguments of people, thus unveiling the reasoning processes.
Sentiment Analysis is one of the most active research areas in Natural Language Processing, but it’s far from being a solved problem. It involves a deep understanding of the lexical, syntactic, and semantic rules of a language combined with background knowledge. The intrinsic complexity of natural language and new challenging sentiment analysis tasks all with the big data paradigm in the background mean that there are more than ever fascinating research perspectives in affective language understanding. The ones I find most inspiring are the complex problems of detecting implicit sentiments and emotions, being able to handle multiple languages, deception detection, real time event analytics and the automated acquisition of common sense, world and contextual knowledge.
About the author: Caroline Brun is senior scientist in the NLP group. She specialises in sentiment analysis and opinion mining, robust parsing, named entity recognition and semantics.
References
[1] Viking, Mäntylä, Mika, Graziotin and Kuutila, Miikka. “The Evolution of Sentiment Analysis – A Review of Research Topics, Venues, and Top Cited Papers”; ArXiv e-prints, http://adsabs.harvard.edu/abs/2016arXiv161201556V, December 2016.
[2] Lei Zhang, Shuai Wang Bing Liu. “Deep learning for sentiment analysis: A survey”. Wiley Interdisc. Rew.: Data Mining and Knowledge Discovery, vol. 8, number 4, June 2018.
[3] Yequan Wang, Minlie Huang, Xiaoyan Zhu, Li Zhao. “Attention-based {LSTM} for Aspect-level Sentiment Classification”, EMNLP 2016 Austin, Texas, USA, November 1-4, 2016, pp 606—615
[4] Abigail See. “Deep Learning, Structure and Innate Priors” http://www.abigailsee.com/2018/02/21/deep-learning-structure-and-innate-priors.html
[5] Zhiting Hu, Zichao Yang, Ruslan Salakhutdinov and Eric P. Xing . “Deep Neural Networks with Massive Learned Knowledge”, EMNLP2016.
[6]Maria Pontiki, Dimitris Galanis, Haris Papageorgiou, Ion Androutsopoulos, Suresh Manandhar, Mohammad Al-Smadi, Mahmoud Ai-Ayyoub, Yanyan Zhao, Bing Qin, Orphee De Clercq, Veronique Hoste, Marianna Apidianaki, Xavier Tannier, Natalia V. Loukachevitch, Evgeniy Kotelnikov and, Nuria Bel, Salud Maria, Jimenez Zafra and Gulsen Eryigit.”SemEval-2016 Task 5: Aspect Based Sentiment Analysis”, Proceedings of SemEval@NAACL-HLT 2016, San Diego, CA, USA, June 16-17, 2016, pages 19–30}, 2016.
[7] Caroline Brun, Julien Perez and Claude Roux. “SemEval-2016 Task 5: Feedbacked Ensemble Modeling on Syntactico-Semantic Knowledge for Aspect Based Sentiment Analysis”. 10th International Workshop on Semantic Evaluation, SemEval@NAACL-HLT 2016, pages 277–281, San Diego, CA, USA, June 16-17, 2016.
[8] Caroline Brun and Vassilina Nikoulina: “Aspect-Based Sentiment Analysis into the Wild”, WASSA Workshop, EMNLP2018, Brussels, November 2018.
[9] Balahur A., Hermida J.M., Tanev H. (2013) Detecting Implicit Emotion Expressions from Text Using Ontological Resources and Lexical Learning. In: Oltramari A., Vossen P., Qin L., Hovy E. (eds) New Trends of Research in Ontologies and Lexical Resources. Theory and Applications of Natural Language Processing. Springer, Berlin, Heidelberg
[10] Rastogi, Ajay & Mehrotra, Monica. “Opinion Spam Detection in Online Reviews.” Journal of Information & Knowledge Management, 2017.
[11] Jeremy Barnes, Sabine Schulte im Walde and Roman Klinger. “Bilingual Sentiment Embeddings: Joint Projection of Sentiment Across Languages”, ACL2018.
[12] H. Zhou, L. Chen, F. Shi, and D. Huang. “Learning bilingual sentiment word embeddings for cross-language sentiment classification. ACL2015.
[13] Soleymani, M., Garcia, D., Jou, B., Schuller, B., Chang, S., & Pantic, M. (2017). “A survey of multimodal sentiment analysis.”, Image and Vision Computing, 65, 3-14.
[14] Amir Hossein Akhavan Rahnama, “Distributed real-time sentiment analysis for big data social streams”, 2014 International Conference on Control, Decision and Information Technologies (CoDIT)}, pp 789—794, 2014.
[15] Marie-Francine Moens, “Argumentation mining: How can a machine acquire common sense and world knowledge?”, Argument & Computation journal, vol.9, number 1, pp 1—14, 2018.
[16] I. Habernal and I. Gurevych, Argumentation mining in user-generated Web discourse, Computational Linguistics, (2017)