A Fuzzy Approach For Multi- Domain Sentiment Analysis Mauro Dragoni Fondazione Bruno Kessler (FBK), Shape and Evolve Living Knowledge Unit (SHELL) https://shell.fbk.eu/index.php/Mauro_Dragoni - [email protected]work done in collaboration with Prof. Andrea G.B. Tettamanzi and Prof. Celia da Costa Pereira INRIA Sophia Antipolis June, 19 th 2014
24
Embed
A Fuzzy Approach For Multi-Domain Sentiment Analysis
An emerging field within Sentiment Analysis concerns the investigation about how sentiment polarities towards concepts have to be adapted with respect to the different domains in which they are used. In this paper, we explore the use of fuzzy logic for modeling concept polarities, and the uncertainty associated with them, with respect to different domains. The approach is based on the use of a knowledge graph built by combining two linguistic resources, namely WordNet and SenticNet. Such a knowledge graph is then exploited by a graph-propagation algorithm that propagates sentiment information learned from labeled datasets. The system implementing the proposed approach has been evaluated on the Blitzer dataset by demonstrating its viability in real-world cases.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
A Fuzzy Approach For Multi-Domain Sentiment Analysis
Mauro Dragoni
Fondazione Bruno Kessler (FBK), Shape and Evolve Living Knowledge Unit (SHELL)
work done in collaboration with Prof. Andrea G.B. Tettamanzi and Prof. Celia da Costa Pereira
INRIA Sophia Antipolis June, 19th 2014
Outline
1. Background on Sentiment Analysis and Fuzzy Logic
2. Motivations
3. The Approach
4. Evaluation of the Implemented System
Sentiment Analysis - 1
Natural Language Processing task for identifying the opinion given by someone with respect to something.
Opinions may be positive, negative, or neutral.
The value associated with the opinion is called “polarity”.
Sentiment Analysis - 2
Basic challenges: Identification of the polarities for each term in the text.
Deciding how to aggregate the different polarities.
Advanced challenges: Identification of the entities in each sentence (subjects).
Identification of the features describing each entity.
Adaptation of the sentiment model to different domain.
Manage the uncertainty of each learned information within the single domain
Fuzzy Logic
Allows to represent imprecise information.
With respect to classical logic, truth-values of assertions may assume all values in the interval [0, 1]
The main element of the fuzzy logic are Fuzzy Sets
Hot temperature.
x
y
Motivations - 1
The same concept may have different polarities in different domains.
The polarity associating a concept to a domain may be uncertain due to the different contexts in which it is used.
Motivations - 2
The assignment of a unique polarity value to the entire text leads to imprecise information.
In the same text, different aspects have to be analyzed.
A significant concept extraction capability is required.
“I bought a new smartphone: the screen is awesome, even if some
colors are not very brilliant, but the battery is too short”
The Approach
Creation of the knowledge base.
Concept extraction.
Learning of the preliminary sentiment information.
Propagation of the learned information through the knowledge graph.
Modeling of the fuzzy shapes.
Creation of the Knowledge Base
Based on the integration of WordNet with SenticNet
WordNet has been enriched with terms extracted from the Roget’s Thesaurus
The links between WordNet and SenticNet have been built by taking into account the synonyms of each WordNet synset and the synonyms of each SenticNet concept.
In order to avoid ambiguities not all associations have been created.
Example: concept “base”
WordNet: 20 senses (for the noun)
SenticNet: base (beneath, below, understructure) WordNet sense 2
Concept Extraction - 1
Two samples:
1. Today I went to the mall and bought some desserts and a lot of very nice Christmas gifts.
2. The touchscreen is awesome but the battery is too short.
Concept Extraction - 2
Multi-Domain Fuzzy Propagation - 1
Polarity information is propagated through the knowledge base by using an algorithm implementing the simulated annealing strategy.
The propagation of the values is driven by three parameters: annealing rate, propagation rate, and convergence limit.
The intermediate polarity values measured on each concept at the end of each iteration are stored in order to build the final fuzzy shape associated with each combination concept-domain.
A different model is learned for each domain.
Multi-Domain Fuzzy Propagation - 2
Domain Initialization:
Information Propagation:
Stop Condition:
Multi-Domain Fuzzy Propagation - 3
Trade-offs:
high propagation rate risk of polarity convergence
low convergence limit risk of polarity convergence
lower propagation rate incomplete graph
high annealing rate premature stop of the algorithm
high convergence limit premature stop of the algorithm
Multi-Domain Fuzzy Propagation - 4
Modeling of Fuzzy Shapes - 1
Value computed from the training set.
Value obtained after the propagation phase.
Support computed based on the variance value.
Modeling of Fuzzy Shapes - 2
Type 1 level of uncertainty: the core of the fuzzy trapezoid crosses the neutral polarity
Type 2 level of uncertainty: only the support of the fuzzy trapezoid crosses the neutral polarity
Evaluation of the System - 1
Evaluation on the Blitzer dataset: 25 domains
~3000 reviews for each domain in the balanced dataset
75% of instances for the training, 25% for the validation
Three baselines: SVM, Max-Entropy, and Naïve-Bayes
Compared the performance by discarding the different levels of uncertainty