What is Sentiment Analysis?

Vector showing people holding bubbles with their sentiment, positive or negative

Sentiment analysis is contextual text mining of text that identifies and extracts subjective information to help a business to understand the social sentiment of their brand, product, or service while monitoring online conversations. 

With the recent advances in deep learning and the processing power of algorithms to analyze text having improved considerably, sentiment analysis has progressed dramatically in the last years, from basic sentiment interpretation and count-based metrics to the creative use of advanced artificial intelligence techniques that can be an effective tool for doing in-depth research. 

Sentiment analysis could be distinguished into the two following directions that, when used in combination, become a very important tool for analyzing millions of brand conversations with human-level accuracy.

  • Key aspects of a brand’s product and service
  • Users’ intentions and reactions concerning those aspects.

The basic building blocks of Sentiment Analysis, as a classification tool that analyses an incoming message and tells whether the underlying sentiment is positive, negative, or neutral are Intent Analysis and Contextual Semantic Search (CSS), more specifically:

  • Intent Analysis: 

    to assess the user’s intention behind a message and identify if it relates to an opinion, news, marketing, complaint, suggestion, appreciation, or query.
  • Contextual Semantic Search (CSS): 

     is a smart algorithm used to derive actionable insights by taking thousands of messages and a concept (like Price) as input and filtering all the messages that closely match with the given concept.

What is a Sentiment Analysis system?

Sentiment Analysis is the process of determining whether a piece of writing is positive, negative, or neutral. A sentiment analysis system for text analysis combines natural language processing (NLP) and machine learning techniques to assign weighted sentiment scores to the entities, topics, themes, and categories within a sentence or phrase.

Sentiment analysis helps data analysts within large enterprises gauge public opinion, conduct nuanced market research, monitor brand and product reputation, and understand customer experiences. In addition, data analytics companies often integrate third-party sentiment analysis APIs into their customer experience management, social media monitoring, or workforce analytics platform, to deliver useful insights to their customers.

Let’s see how basic sentiment analysis works, evaluate the advantages and drawbacks of rules-based sentiment analysis, and outline the role of machine learning in sentiment analysis. Finally, we’ll explore the top applications of sentiment analysis before concluding with some helpful resources for further learning.

How does sentiment analysis work?

Basic sentiment analysis of text documents follows a straightforward process:

  • Break each text document down into its parts (sentences, phrases, tokens, and parts of speech)
  • Identify each sentiment-bearing phrase and component
  • Assign a sentiment score to each phrase and component (-1 to +1)
  • Combine scores for multi-layered sentiment analysis (Optional)

What is a sentiment library? 

Much like the way your brain remembers the descriptive words you encounter over your lifetime and their relative “sentiment weight”, a basic sentiment analysis system draws on a sentiment library to understand the sentiment-bearing phrases it encounters.

Sentiment libraries are very large collections of adjectives (good, wonderful, awful, horrible) and phrases (good game, wonderful story, awful performance, horrible show) that have been hand-scored by human coders. This manual sentiment scoring is a tricky process because everyone involved needs to reach some agreement on how strong or weak each score should be relative to the other scores. If one person gives “bad” a sentiment score of -0.5, but another person gives “awful” the same score, your sentiment analysis system will conclude that both words are equally negative.

What’s more, a multilingual sentiment analysis engine must maintain unique libraries for each language it supports. And each of these libraries must be maintained constantly: scores tweaked, new phrases added, irrelevant phrases removed.

How is machine learning used for sentiment analysis?

The primary role of machine learning in sentiment analysis is to improve and automate the low-level text analytics functions that sentiment analysis relies on, including Part of Speech tagging. For example, data scientists can train a machine learning model to identify nouns by feeding it a large volume of text documents containing pre-tagged examples. Using supervised and unsupervised machine learning techniques, such as neural networks and deep learning, the model will learn what nouns look like.

Once the model is ready, the same data scientist can apply those training methods toward building new models to identify other parts of speech. The result is a quick and reliable Part of Speech tagging that helps the larger text analytics system identify sentiment-bearing phrases more effectively.

Machine learning also helps data analysts solve tricky problems caused by the evolution of language. Creating a sentiment analysis ruleset to account for every potential meaning is impossible. But if you feed a machine learning model with a few thousand pre-tagged examples, it can learn to understand what they mean in the context of different industries, applying at the same time similar training methods to understand other double-meanings as well.

How is sentiment analysis used?

Broadly speaking, sentiment analysis is most effective when used as a tool for Voice of Customer and Voice of Employee. Business analysts, product managers, customer support directors, human resources and workforce analysts, and other stakeholders use sentiment analysis to understand how customers and employees feel about particular subjects, and why they feel that way.

What is a hybrid sentiment analysis system?

Hybrid sentiment analysis systems combine machine learning with traditional rules to make up for the deficiencies of each approach. Rules-based sentiment analysis, for example, can be an effective way to build a foundation for PoS tagging and sentiment analysis. But as we’ve seen, these rulesets quickly grow to become unmanageable. This is where machine learning can step in to shoulder the load of complex natural language processing tasks, such as understanding double meanings.

Most hybrid sentiment analysis systems combine machine learning with software rules across the entire text analytics function stack, from low-level tokenization and syntax analysis up to the highest levels of sentiment analysis.

Sentiment analysis for the Voice of the Customer

In the age of social media, a single viral review can burn down an entire brand. On the other hand, good experiences can grow significant revenue over the competition by increasing customer lifecycle and improving retention.

Automated sentiment analysis tools are the key drivers of this growth. By analyzing tweets, online reviews, and news articles at scale, business analysts gain useful insights into how customers feel about their brands, products, and services. Customer support directors and social media managers flag and address trending issues before they go viral while forwarding these pain points to product managers to make informed feature decisions.

Sentiment analysis for the voice of the employee 

Sentiment analysis helps workforce analysts and HR directors cut off employee churn at the source by understanding what employees are discussing and how they feel. Through rich analytics of employee surveys, Slack messages, emails, and other communications, HR teams get the info they need to proactively address pain points and improve morale.