Sentiment Analysis: Concept, Analysis, and Applications

DZone 's Guide to

Sentiment Analysis: Concept, Analysis, and Applications

When used together, sentiment analysis and text analysis can analyze millions of brand conversations with human accuracy. Look at an Uber case study to understand how!

· AI Zone ·
Free Resource

Sentiment analysis is the contextual mining of text that identifies and extracts subjective information in source materials, along with helping a business to understand the social sentiment of their brand, product, or service while monitoring online conversations. However, analysis of social media streams is usually restricted to basic sentiment analysis and count-based metrics. This is akin to scratching the surface and missing out on high-value insights that are waiting to be discovered. So, what should a brand do to capture that low-hanging fruit?

With the recent advances in deep learning, the ability of algorithms to analyze text has improved considerably. Creative use of advanced artificial intelligence techniques can be an effective tool for doing in-depth research. We believe it is important to classify incoming customer conversations about a brand based on following lines:

  1. Key aspects of a brand’s product and service that customers care about.
  2. Users’ underlying intentions and reactions concerning those aspects.

These basic concepts, when used together, become a very important tool for analyzing millions of brand conversations with human-level accuracy. In this post, we take the example of Uber and demonstrate how this works. Read on!

Text Classifier: The Basic Building Blocks

Let's consider different types of AI analysis.

Sentiment Analysis

Sentiment analysis is the most common text classification tool that analyzes an incoming message and tells whether the underlying sentiment is positive, negative, or neutral. You can input a sentence of your choice and gauge the underlying sentiment by playing with the demo here.

Intent Analysis

Intent analysis steps up the game by analyzing the user’s intention behind a message and identifying whether it relays an opinion, news, marketing, complaint, suggestion, appreciation, or query.

Sentiment Analysis

Analyzing intent of textual data

Contextual Semantic Search (CSS)

This is where things get really interesting. To derive actionable insights, it is important to understand what aspect of the brand is a user discussing about. For example, Amazon would want to segregate messages that related to late deliveries, billing issues, promotion related queries, product reviews, etc. On the other hand, Starbucks would want to classify messages based on whether they relate to staff behavior, new coffee flavors, hygiene feedback, online orders, store name and location, etc. But how can one do that?

We introduce an intelligent search algorithm called contextual semantic search (CSS). CSS takes thousands of messages and a concept (like price) as input and filters all the messages that closely match with the given concept. The graphic shown below demonstrates how CSS represents a major improvement over existing methods used by the industry.

Sentiment Analysis

Existing approach vs. contextual semantic search

A conventional approach for filtering all price-related messages is to do a keyword search on price and other closely related words (like pricing, charge, $, paid). This method, however, is not very effective, as it is almost impossible to think of all the relevant keywords and their variants that represent a particular concept. CSS, on the other hand, just takes the name of the concept (price) as input, and filters all the data that is contextually similar, even when obvious variants of the concept keyword are not mentioned.

We would like to give a glimpse into how this works. An AI technique is used to convert every word into a specific point in the hyperspace and the distance between these points is used to identify messages where the context is similar to the concept we are exploring. A visualization of how this looks under the hood can be seen below:

Sentiment Analysis

Visualizing contextually related tweets

Let's see CSS in action and how it works on comments related to Uber in the examples below:

Similarly, have a look at this tweet:

Image title

In both cases above, the algorithm classifies these messages as being contextually related to the concept called "price," even though the word "price" is not mentioned in these messages.

Uber: A Deep Dive Analysis

Uber, the highest-valued start-up in the world, has been a pioneer in the sharing economy. Being operational in more than 500 cities worldwide and serving a gigantic user base, Uber gets a lot of feedback, suggestions, and complaints by users. Often, social media is the most preferred medium to register such issues. The huge amount of incoming data makes analyzing, categorizing, and generating insights challenging undertaking.

We analyzed the online conversations happening on digital media about a few product themes: cancel, payment, price, safety, and service.

For a wide coverage of data sources, we took data from the latest comments on Uber’s official Facebook page, tweets mentioning Uber, and the latest news articles around Uber. Here’s a distribution of data points across all the channels:

  1. Facebook: 34,173 comments
  2. Twitter: 21,603 tweets
  3. News: 4,245 articles

Analyzing sentiments of user conversations can give you an idea about overall brand perceptions. But to dig deeper, it's important to further classify the data with the help of contextual semantic search.

We ran the contextual semantic search algorithm on the same dataset, taking the aforementioned categories into account (cancel, payment, price, safety, and service).


Sentiment analysis:

Sentiment Analysis

Breakdown of sentiment for categories

Noticeably, comments related to all the categories have a negative sentiment majorly, bar one. The number of positive comments related to price outnumbers the negative ones. To dig deeper, we analyzed the intent of these comments. Facebook being a social platform, the comments are about random content, news shares, marketing and promotional content, and spam, junk, or unrelated content. Have a look at the intent analysis on the Facebook comments:

Sentiment Analysis

Intent analysis of Facebook comments

Thus, we removed all such irrelevant intent categories and reproduced the result:

Sentiment Analysis

Filtered sentiment analysis

There is a noticeable change in the sentiment attached to each category. Especially in price related comments, where the number of positive comments has dropped from 46% to 29%.

This gives us a glimpse of how CSS can generate in-depth insights from digital media. A brand can thus analyze such tweets and build upon the positive points from them or get feedback from the negative ones.


A similar analysis was done for crawled tweets. In the initial analysis, payment and safety-related tweets had a mixed sentiment.

Sentiment analysis:

Sentiment Analysis

Category-wise sentiment analysis

To understand real user opinions, complaints, and suggestions, we have to again filter the unrelated tweets (spam, junk, marketing, news, and random):

Sentiment Analysis

Filtered sentiment

There is a remarkable reduction in the number of positive payment-related tweets. Also, there is a significant drop in the number of positive tweets for the category safety (and related keywords.)

Additionally, cancel, payment, and service (and related words) are the most talked-about topics in the comments on Twitter. It seems that people talked most about drivers canceling their ride and the cancellation fee charged to them. Take a look at this tweet:

Image title

Brands like Uber can rely on such insights and act upon the most critical topics. For example, service-related tweets carried the lowest percentage of positive tweets and highest percentage of negative ones. Uber can thus analyze such tweets and act upon them to improve the service quality.


Sentiment Analysis

Sentiment analysis for news headlines

Understandably so, safety has been the most talked-about topic in the news. Interestingly, news sentiments are positive overall.

We classified news based on their popularity score as well. The popularity score is attributed to the share count of the article on different social media channels. Here’s a list of top news articles:

  1. Uber C.E.O. to Leave Trump Advisory Council After Criticism
  2. #DeleteUber: Users angry at Trump Muslim ban scrap app
  3. Uber Employees Hate Their Own Corporate Culture, Too
  4. Every time we take an Uber we’re spreading its social poison
  5. Furious customers are deleting the Uber app after drivers went to JFK airport during a protest and strike


The age of getting meaningful insights from social media data has now arrived with the advancement in technology. The Uber case study gives you a glimpse of the power of contextual semantic search. It’s time for your organization to move beyond overall sentiment- and count-based metrics. Companies have been leveraging the power of data lately, but to get the deepest of information, you have to leverage the power of AI, deep learning, and intelligent classifiers like contextual semantic search and sentiment analysis. 

text analytics ,ai ,sentiment analysis ,tutorial ,classification ,intent analytics ,semantic search

Published at DZone with permission of Shashank Gupta , DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}