Guide to Aspect-Based Sentiment Analysis

Guide to Aspect-Based Sentiment Analysis

If you thought sentiment analysis was pretty neat, then prepare to be blown away by an even more advanced text analysis technique: aspect-based sentiment analysis.

This technique, also known as aspect-level sentiment analysis, feature-based sentiment analysis, or simply, aspect sentiment analysis, allows businesses to perform a detailed analysis of their customer feedback data, so they can learn more about their customers and create products and services that meet their needs.

Below, learn more about what aspect sentiment analysis is, how it works, and what it can do for your business. Then, follow our aspect-based sentiment analysis tutorial to create your own custom model – no coding necessary!

  1. What Is Aspect-Based Sentiment Analysis?
  2. Why Is Aspect-Based Sentiment Analysis Important?
  3. How To do Aspect-Based Sentiment Analysis?
  4. Aspect-Based Sentiment Analysis Use Cases & Applications

What Is Aspect-Based Sentiment Analysis?

When we talk about aspects, we mean the attributes or components of a product or service e.g. “the user experience of a new product,” “the response time for a query or complaint,” or “the ease of integration of new software.”

Here’s a breakdown of what aspect-based sentiment analysis can extract:

  • Sentiments: positive or negative opinions about a particular aspect
  • Aspects: the category, feature, or topic that is being talked about

Why Is Aspect-Based Sentiment Analysis Important?

Aspect sentiment analysis is important because it can help companies automatically sort and analyze customer data, automate processes like customer support tasks, and gain powerful insights on the go.

Customers are more vocal than ever. They enjoy engaging with brands and leaving feedback – good and bad. Each time customers interact with a brand, whether it’s a mention or comment, they are leaving a wealth of insights that let businesses know what they’re doing right and wrong.

But it can be difficult wading through all this information by hand. Instead, aspect-based sentiment analysis does the hard work for you.

Aspect-Based Sentiment Analysis Is Scalable

It’s impossible for teams to manually sift through thousands of tweets, customer support conversations, or customer reviews – especially if they want to analyze information on a granular level. Aspect-based sentiment analysis allows businesses to automatically analyze massive amounts of data in detail, which saves money, time, and means teams can focus on more important tasks.

Perform Real-Time Analysis

Aspect-based sentiment analysis allows businesses to hone in on aspects of a product or service that customers are complaining about and fix them in real-time. Is there a glitch in an app? Is there a major bug in some new software? Are customers getting angry about one particular service or product feature? Feature-based sentiment analysis can help you immediately identify these kinds of situations and take action.

Get Consistent Criteria

While humans are able to differentiate between aspects and sentiments within a text, we’re not always objective. We’re influenced by our personal experiences, thoughts, and beliefs and only agree around 60-65% of the times when determining sentiments for pieces of text. By using a centralized aspect analysis model, businesses can apply the same criteria to all texts meaning results will be more consistent and accurate.

Understand Customers on a Deeper Level

It’s easier to scan and categorize text as positive or negative than it is to spend time analyzing each sentence of a text. But by using an automated aspect-based sentiment analysis system, companies can gain a deeper understanding of specific products and services quickly and easily, and really focus on their customers’ needs and expectations. It means businesses take into account everything a customer says and can create a customer-centric experience.

How to do Aspect-Based Sentiment Analysis

1. Gather data

Before we can start any kind of text analysis, we need to gather information. But where does all the data come from and how can businesses gather it? Below are aspect-based sentiment analysis examples and the data you can dig into:

Internal Data

Businesses have been collecting colossal amounts of data for years but have only just started to realize the power of all this data.

  • Surveys

Running aspect-based sentiment analysis on surveys can gather huge insights for any company. Online survey tools, like SurveyMonkey and Typeform make creating and sending surveys easy, and integrations with text analysis tools can automate the process.

Open-ended questions, for example, can reveal what a customer thinks about different aspects of the user experience: “simple to use and easy user interface (positive), although there are constant bugs (negative)”.

Many companies use NPS software, like Delighted,, and Satismeter, to collect and analyze feedback from their customers. Using an aspect-based sentiment analysis model, you’ll be able to sort data automatically and gain insights about specific aspects or features of your product or service.

  • Customer Service and Customer Relationship Management (CRM) Software

This is the software businesses use to communicate with customers; for example Zendesk, Freshdesk, and Help Scout. They’re full of unstructured data – just think about all the queries you deal with, all from different channels.

That’s a lot of useful information that can be classified with an aspect-based sentiment analysis model, whether to quickly identify aspects of a product or service your customers are unhappy with, or direct specific problems to the correct customer service team.

External Data

The web is full of external information from social media, news articles, product reviews, etc. And more and more companies are making their datasets public, as well as combining both internal and external data sources to optimize their business processes and influence key business decisions. Text analysis models, like aspect-based sentiment analysis, are key to handling large amounts of public data because they’re able to automatically interpret data easily and quickly at a granular level and help businesses solve problems. But how do you find and collect relevant data from different websites?

  • Web Scraping Tools

Web scraping tools, or web data extraction tools, are essential when it comes to collecting external data.

Visual Web Scraping Tools (for non-coders): You can build a visual web scraping tool without entering a single line of code. We recommend, Portia, and ParseHub as a starting point.

Web Scraping Frameworks (for coders): Create your own scraper using various powerful, open-source frameworks. We recommend Scrapy, perfect for aspect-based sentiment analysis in Python, or Wombat, written in Ruby.

  • APIs

These allow applications to communicate with another. So if you want to extract useful data from websites or social media platforms, you can connect them with an API. Large companies like Facebook, Twitter, and Instagram have their own APIs and allow you to extract data from their platforms, so you can gather comments from social media platforms about specific product features using aspect-based analysis.

2. Perform Aspect-Based Sentiment Analysis

Now that you know how to gather data, we’re going to show you how to run aspect-based sentiment analysis on your NPS surveys. 

With MonkeyLearn's Templates, you can upload your data and our topic and sentiment machine learning models will do the rest. Templates are super simple to use and perfect for anyone who’s new to machine learning.

Here’s how MonkeyLearn’s NPS Survey Template works:

NPS Template Tutorial with Aspect-Based Sentiment Analysis

1. Choose the NPS Template

Choose the NPS template to create your aspect-based sentiment analysis workflow. This template also combines keyword extraction to get even more granular insights.

Opinion unit extractor separating the comment, 'I love Slack UX, but I wish the pricing was more accessible to small startups.' into two opinion units.

2. Upload Your Data

Opinion unit extractor separating the comment, 'I love Slack UX, but I wish the pricing was more accessible to small startups.' into two opinion units.

If you don't have a CSV file:

3. Match your data to the right fields in each column

Here are the field you’ll need to match up:

  • created_at: Date that the response was sent.
  • text: Text of the response.
  • score: NPS score given by the customer.
Opinion unit extractor separating the comment, 'I love Slack UX, but I wish the pricing was more accessible to small startups.' into two opinion units.

4. Name Your Workflow

Opinion unit extractor separating the comment, 'I love Slack UX, but I wish the pricing was more accessible to small startups.' into two opinion units.

5. Wait for MonkeyLearn to process your data

Opinion unit extractor separating the comment, 'I love Slack UX, but I wish the pricing was more accessible to small startups.' into two opinion units.

6. Explore your aspect-Based sentiment analysis dashboard!

Opinion unit extractor separating the comment, 'I love Slack UX, but I wish the pricing was more accessible to small startups.' into two opinion units.

Our data visualization dashboard allows you to display your results in convincing, striking detail. 

  • Filter by topic, sentiment, keyword, score, or NPS category.
  • Share via email with other coworkers.
  • Notice how multiple aspects and sentiments have been split into fragments, otherwise known as opinion units.

Machine models that have been trained to detect opinion units are much more precise when it comes to analyzing data. Why? Well, it’s a lot easier for a machine to understand a sentence with one sentiment, than it is to understand a sentence containing multiple sentiments.

Apsect-Based Sentiment Analysis Use Cases and Applications

Aspect-based sentiment analysis is a very versatile text analysis model that can be used across all industries and internal departments to automate business processes, gain powerful and more accurate insights, and make data-driven decisions. Let’s take a look at some of the ways in which aspect-based sentiment analysis is being used in business:

In this section, we’re going to focus on how aspect-based sentiment analysis is being used to analyze customer feedback (VoC) and improve customer service.

Fine-Grained Product Feedback Analysis

There are huge amounts of feedback available from NPS and other surveys, on social media, online reviews, and much more. All this textual customer feedback is key to discovering and solving customer problems.

Here’s how aspect-based sentiment analysis can be used to make sense of all this customer feedback:

  • Understand specific aspects that customers like and dislike about your brand.
  • Get valuable, granular-level insights from customer feedback.
  • Analyze service and product reviews to discover the successes and failures of your brand, and compare them to your competitor’s.
  • Track how customer sentiment changes toward specific features and attributes of a service or product.
  • Determine if customer segments feel more strongly about a specific feature, for example an older demographic might find a travel website harder to navigate than a younger demographic.

Automating Customer Support Tasks

Customers don’t like waiting for a solution to their problems, which means customer support teams need to respond quickly and effectively. If not, chances are customers will look elsewhere. That’s why businesses need high-quality machine learning software like aspect-based sentiment analysis to:

  • Automate tagging of all incoming customer support queries.
  • Quickly find out why customers may be unhappy in real time.
  • Send queries and complaints to team members that are best equipped to respond.
  • Gain insights into how your customer support team handles customers.

Final Words

The customer experience should be top priority for any business. Performing customer churn analysis or using the customer feedback loop, for example, can follow the entire customer journey and keep your finger on the pulse of your customers. And machine learning aspect-based sentiment analysis is the key to automatically analyzing your customer opinions for powerful results and data-based decisions.

Automate internal processes with tools you already use, like Zendesk, SurveyMonkey, Google Docs and Sheets, and more. Follow customer sentiment in real time, so you never leave your customers in the cold.

Sign up for free and get started with aspect-based sentiment analysis by creating your own models with MonkeyLearn, and discover how you’ll be able to make smarter business decisions in the future. Or request a demo to learn more about MonkeyLearn’s suite of powerful text analysis tools.

Federico Pascual

March 8th, 2019

Posts you might like...

MonkeyLearn Logo

Text Analysis with Machine Learning

Turn tweets, emails, documents, webpages and more into actionable data. Automate business processes and save hours of manual data processing.

Try MonkeyLearn
Clearbit LogoSegment LogoPubnub LogoProtagonist Logo