PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
1
D4.3.1 – Tecniche Ibride per la sentiment analysis alle Pubbliche Amministrazioni
Locali (PAL)
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
2
Informazioni deliverable
Titolo del deliverable D4.3.1 – Tecniche ibride per la sentiment analysis alle
PAL
Sigla di classificazione del documento D4.3.1
Responsabile del Deliverable CNR
Obiettivo Realizzativo OR4: Linked Open Data e Community Trust nel Cloud PAL
Attività relativa AR4.3 – Costruzione di un corpus e di vocabolari
specializzati per la community trust, applicazione del
vocabolario in testi non strutturati con tecnologie di
sentiment analysis e estrazione di informazioni profonde
con tecnologie di elaborazione del linguaggio naturale
Autori CNR (Sergio Consoli, Rino Falcone, Aldo Gangemi, Andrea G.
Nuzzolese, Silvio Peroni, Valentina Presutti, Diego Reforgiato,
Alessandro Sapienza, Daria Spampinato, Luca Tummolini)
Approvazione
Autorizzazione
Nel contesto di un modello della fiducia di comunità, presentiamo una panoramica sui recenti metodi di
sentiment analysis con particolare riferimento a quelli che sfruttano la semantica in modo da ottenere
migliori prestazioni rispetto ai classici metodi esistenti in letteratura così come dimostrato recentemente
dalla comunità scientifica internazionale. Tali metodi che usano la semantica fanno parte di una nuova area
scientifica denominata sentic computing, dove sentic sta per semantic sentiment analysis.
Presentiamo Sentilo, un nuovo modello di sentic computing, che:
1. individua gli holder di un’opinione, gli argomenti principali e i sotto-argomenti;
2. è basato sulla combinazione della rappresentazione formale della conoscenza, del processamento
del linguaggio naturale, e dei frame cognitivi per il mining delle opinioni;
3. è stato implementato in modo che, data una frase di opinioni, ne restituisce la rappresentazione
semantica annotata con concetti di opinioni rilevanti;
4. è basato su un modello di frasi di opinioni che vengono usate per annotare la loro rappresentazione
semantica.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
3
Titolo del deliverable D4.3.1 – Tecniche ibride per la sentiment analysis alle
PAL
Infine viene illustrata un’attività di costruzione di un corpus dominio specifico e relativo vocabolario della
fiducia
I contenuti del documento sono da intendersi “confidenziali” di proprietà esclusiva delle parti coinvolte nel progetto “PRISMA – PiattafoRme cloud Interoperabili per SMArt-government”.
Né il documento né le sue parti possono essere pubblicate, riprodotte, copiate o comunque divulgate senza
autorizzazione scritta delle parti coinvolte nel progetto oltre quanto previsto dalla lista di distribuzione
Lista di distribuzione
Stato del deliverable
Ver. Data Autore della
modifica
Note Validazione
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
4
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
5
INDICE DEGLI ARGOMENTI
INDICE DELLE FIGURE ................................................................................................................... 6 ACRONIMI ......................................................................................................................................... 7 1. INTRODUZIONE ........................................................................................................................... 8 2. UN APPROCCIO CONTENUTISTICO ALLA FIDUCIA DI COMUNITÀ ....................................... 9 3. UN APPROCCIO MULTIDISCIPLINARE ALLA SENTIMENT ANALYSIS ................................ 12
3.1. Sentilo, un nuovo modello di Sentic Computing .......................................................... 14 3.2. Architettura del sistema Sentilo ..................................................................................... 15 3.3. Verbi di triggering ............................................................................................................ 19 3.4. Riconoscimento degli argomenti ................................................................................... 22
4. UN DIZIONARIO BASATO SU DOMINIO PER LA FIDUCIA DI COMUNITÀ ............................ 23 4.1. Creazione del corpus testuale ........................................................................................ 23 4.2. GATE ................................................................................................................................. 23 4.3. Tagging del testo ............................................................................................................. 24 4.4. Le categorie di tagging ................................................................................................... 24 4.5. Un esempio pratico ......................................................................................................... 26 4.6. L’output ............................................................................................................................ 27
BIBLIOGRAFIA ............................................................................................................................... 28 ALLEGATO A ................................................................................................................................. 32
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
6
Indice delle Figure
Figura 1 – Pipeline di Sentilo ........................................................................................................ 15 Figura 2 - Output di C&C per la frase di esempio ....................................................................... 16 Figura 3 - Output di Boxer per la frase di esempio .................................................................... 17 Figura 4 - Rappresentazione semantica di FRED per la frase di esempio ............................... 18 Figura 5 - Revisione della classificazione dei verbi di Levin basata sulla loro rilevanza per quello che riguarda il mining delle opinioni e dei sentimenti ................................................... 20
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
7
Acronimi
PRISMA PiattafoRme cloud Interoperabili per SMArt-government
PAL Pubblica Amministrazione Locale
NLP Natural Language Processing
DRT Discourse Representation Theory
FOL First Order Logic
DRS Discourse Represenation Structure
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
8
1. Introduzione
Obiettivo di questa Attività Realizzativa è lo sviluppo e integrazione di nuovi strumenti per la
valutazione esterna della PA basati su tecnologie semantiche che mirano a rilevare la community
trust (fiducia della comunità) nei confronti della Pubblica Amministrazione Locale. Il livello di fiducia
della comunità di riferimento rappresenta un’importante misura delle opinioni dei cittadini che riflette
la percezione pubblica delle prestazioni erogate e influenza i comportamenti dei soggetti coinvolti.
Obiettivo particolare è quindi l’identificazione delle valutazioni specifiche che sottostanno al senso di
fiducia diffuso nella popolazione.
In questo documento viene esteso il modello della fiducia interpersonale al caso particolare
dell’interazione con un’amministrazione o istituzione pubblica. A partire dal modello verranno
identificati i requisiti generali che lo strumento di analisi delle opinioni deve soddisfare e che
richiedono un approccio nuovo all’analisi dei dati non strutturati spontaneamente prodotti dai cittadini.
In particolare, le informazioni che devono essere estratte mirano a rilevare (1) di chi la comunità si
fida/non si fida e richiede quindi di distinguere l’holder e il target della valutazione (es. della PA nel
suo complesso, di settori specifici della PA, di specifici membri della PA, etc.); (2) su cosa la
comunità si fida/non si fida che richiede la possibilità di identificare i topic e i subtopic menzionati in
un testo (es. su competenze specifiche della PA o su prestazioni della PA in genere). Questi requisiti
hanno quindi guidato lo sviluppo di nuove tecniche di sentiment analysis, un modello semantico e
uno strumento (Sentilo) per eseguire il rilevamento degli holder (ovvero chi pensa cosa a proposito di
che) e degli argomenti in frasi contenenti opinioni. Tale lavoro definisce inoltre i domini, le risorse, i
corpora delle ontologie e valutazioni delle applicazioni di tecniche di sentiment analsyis alla
comunicazione relativa alle PAL considerate negli scenari applicativi. Poiché tuttavia la fiducia è
sempre relativa a caratteristiche rilevanti ad un dominio di riferimento specifico verranno anche
illustrate alcune attività di codifica di testi che esemplificano il tipo di vocabolario di fiducia relativa ad
un dominio e a un contesto e che dovrà essere formulato nel dominio degli scenari rilevanti del
progetto.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
9
2. Un approccio contenutistico alla fiducia di comunità
In contrasto con gli approcci prevalenti che misurano gli andamenti della fiducia attraverso una sua
erronea riduzione ad una mera dimensione quantitativa, in ciò che segue verranno illustrati alcuni
elementi della teoria cognitiva della fiducia – con la sua identificazione di specifici contenuti
(valutazioni, aspettative, oggetto, ecc.) – che consentiranno di capire meglio sia la “fiducia” di una
data comunità verso le istituzioni. In particolare, ci interessa richiamare tre aspetti rilevanti per i fini
del progetto.
Primo, la fiducia non è un mero feeling, ma è un atteggiamento verso l’altro (Y) fatto anche di giudizi,
valutazioni su colui/coloro di cui ci si fida o non ci si fida. In quanto tale, la possibilità di identificare e
analizzare tali opinioni consente di individuare elementi che contribuiscono alla valutazione esterna
delle prestazioni della Pubblica Amministrazione.
Le valutazioni rilevanti riguardano quattro dimensioni principali:
1. la competenza, le abilità, relative a ciò (servizio, bene) che ci si aspetta dalla Pubblica
Amministrazione e su cui si conta;
2. l’affidabilità, cioè la volontà di fare quanto atteso e la persistenza di detta volontà: credibilità,
onestà, ecc.;
3. la non pericolosità, ostilità, ragioni per volere il nostro male (dato che fidandosi ci si rende
“vulnerabili”, ci si espone).
4. Le condizioni al contorno in cui Y svolgerà il proprio compito sono ritenute da X (per come X
le conosce) non confliggenti oltre i limiti accettabili per Y: quelli che X individua sulla base
dei punti (1), (2) e (3) sopra indicati.
Sulla base di tali valutazioni, X – colui che si fida – formula delle previsioni sulla condotta di Y e i suoi
risultati, e su tale base decide di fidarsi (come atto e relazione esplicita): affidarsi, contare su.
Secondo, non è che “ci si fida più o meno”, fino a “non fidarsi” (come dicono praticamente tutti gli
studi socio-politici e statistici, quali sondaggi e inchieste, e molti studi sulle “reti” di fiducia). La fiducia
è contenuto-dipendente (e contesto-dipendente); è “circa”, “quanto a”: ha un oggetto o contenuto.
Posso fidarmi molto di Y per una certa cosa/dominio e niente affatto per un altra. In altri termini è
relativa ad uno “scopo” per raggiungere il quale valuto se e decido se contare su Y.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
10
Terzo, queste dimensioni e contenuti, che certamente hanno aspetti quantitativi, impediscono tuttavia
di ridurre la fiducia ad un mero indice, quale la “probabilità stimata dell’evento favorevole” (13). Certo
posso fidarmi poco, abbastanza (per affidarmi), molto, e così via, in quanto le qualità attribuite ad Y
possono essere scarse, sufficienti, buone, ottime, e le mie credenze su ciò più o meno certe e basate
su evidenze. Su questa base le mie aspettative su Y saranno più o meno sicure e forti. Ma la fiducia
non può essere ridotta a un costrutto unidimensionale.
Tanto meno fiducia e sfiducia sarebbero semplicemente gradi diversi di questa dimensione: sotto un
certa soglia “sfiducia”, sopra la soglia “fiducia”: da 0 a 1. La sfiducia è a sua volta uno specifico
insieme di credenze e valutazioni negative verso Y e le sue scarse qualità e non-affidabilità (8, 26).
Non si deve confondere la mancanza o insufficienza di fiducia con la sfiducia: io credo (per questa e
questa ragione) che Y non valga, non sia capace, non sia credibile, non sia affidabile, sia pericoloso,
ecc. Non semplicemente non ho fiducia (abbastanza) in lui: ho sfiducia e diffidenza.
Una conseguenza importante e paradossale di questa analisi contenutistica della fiducia/sfiducia è
che rivela un nesso assai interessante: lo stesso nucleo di credenze che è il nocciolo della fiducia di
X verso Y può essere il nocciolo della sfiducia di X verso Y.
Infatti sono attitudini relative a scopi; sono aspettative (7). Invertendo lo scopo, gli stessi giudizi,
previsioni, ecc. che costituivano la fiducia divengono sfiducia. L’aspettativa “positiva” (di una scopo
che si realizza) diventa una aspettativa “negativa” (di uno scopo che non si realizza o che viene
compromesso). O viceversa.
i. X crede che Y abbia la capacità e competenza per fare in modo che P
ii. X crede che Y intenda realizzare P e sia in ciò stabile e credibile
iii. X desidera che P
(i) e (ii) sono dunque “valutazioni positive” circa Y. Su questa base
iv. X prevede che Y realizzerà P (quanto da lui desiderato )
X ha dunque una “aspettativa positiva”, costituita dalla congiunzione di (iii) e (iv).
Su questa base si affida ad Y per raggiungere P:
v. decisione ed atto di contare su di Y
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
11
Ma cosa accade se X ha lo scopo che non-P? Le sue valutazioni ed attese circa Y rimangono, ma
cambiano colore. Le valutazioni divengono negative, e le aspettative divengono sfiducie o timori: X
non vorrebbe ma teme che Y realizzerà P, cosa di cui è capace ed ha intenzione. La sua fiducia in Y
diviene sfiducia, diffidenza, timore. E cosa accade se X non riteneva Y capace o affidabile per
realizzare P, e desidera che non-P? Succede che la sua mancanza di fiducia in Y diviene una fiducia:
fiducia nel fatto che Y non realizzerà P, dunque non danneggerà X.
Il medesimo nucleo di credenze può portare a rapporti di fiducia opposti verso lo stesso referente in
agenti con scopi o interessi opposti. Ad esempio, X stipula un contratto con Y e conta anche sulla
presenza ed efficacia di una autorità A perché Y rispetti il contratto comunque. X crede che e conta
sul fatto che A sorvegli, intervenga, sanzioni o obblighi. Ma in realtà X – nel ricorrere al contratto – si
fida anche di Y quanto al suo essere sensibile all'autorità di A; altrimenti il contratto è inefficace. X
conta sul fatto che anche Y creda che A sorvegli, sia capace ed intenzionata ad intervenire,
sanzionare, ecc.
Quello che sul versante di X è la sua “fiducia” in A sul versante di Y è il suo “timore” di A. A è oggetto
delle medesime valutazioni ed attese, ma di colore ben diverso. Del resto, se a sua volta Y si aspetta
contrattualmente qualcosa da X, gli elementi del suo “timore” in A divengono la sua fiducia; e la
fiducia di X in A diventa – nella prospettiva di Y – che X sa di avere da temere da A.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
12
3. Un approccio multidisciplinare alla sentiment analysis
La Sentiment Analysis è un problema molto studiato nell’area del Natural Language Processing
(NLP). Essa riguarda l’identificazione ed estrazione di informazioni soggettive dal testo. In generale,
la Sentiment Analysis mira a definire l'atteggiamento di un soggetto, cioè un holder di opinioni, verso
un argomento o la tonalità generale di un documento. Negli ultimi anni, l'aumento esponenziale
dell'utilizzo di Internet e lo scambio di opinioni pubbliche sul Web è la forza trainante della Sentiment
Analysis . Il Web è un enorme archivio di dati strutturati e non strutturati: l'analisi di questi dati al fine
di estrarre le opinioni e sentimenti è sia un'opportunità che un problema difficile.
La Sentiment Analysis può essere orientata ai documenti, dove il sentimento presente può essere
positivo, negativo o oggettivo, oppure orientato alle frasi, in cui vengono classificate le singole frasi
che indicano sentimenti nel testo. La Sentiment Analysis orientata alle frasi può essere a granularità
fine quando vengono considerati contesti specifici all’interno di una frase. Osserviamo che la
granularità fine permette una terza varietà di Sentiment Analysis: quella orientata a determinati
aspetti, in cui gli argomenti sono associati a sentimenti diversi secondo l'aspetto di un argomento
considerato.
La Sentiment Analysis può essere generalizzata come l'analisi delle opinioni: un’opinione è una
dichiarazione intenzionale di qualcuno (holder) su qualche fatto (argomento), che è espresso con un
possibile sentimento. Dato un documento o un insieme di documenti, essi possono contenere
commenti su più argomenti che sono interessanti per gli utenti: in questo scenario è molto importante
essere in grado di rilevare correttamente gli argomenti, e di separare le opinioni associate a ciascun
argomento (6).
Un problema che si verifica negli attuali approcci di Sentiment Analysis è l'identificazione errata di
argomenti di opinioni. In molti sistemi di Sentiment Analysis recenti come (1, 11, 18), all'utente viene
richiesto di inserire solo un argomento per ottenere un sentimento. Quindi il sistema restituisce un
elenco di opinioni sul tema specifico. Tuttavia, alcuni dei risultati restituiti sono inutili per l'utente,
perché sono fuori dal dominio di interesse per l'utente. Per esempio, un utente potrebbe cercare
opinioni su Berlusconi, e ottenere diversi risultati relativi a Berlusconi in politica, business, indagini
criminali, o riguardanti lo sport calcio. Un esempio diverso, basato su una logica simile riguarda un
utente che chiede pareri sull’Articolo 18 dello Statuto dei lavoratori in Italia (che regolamenta il
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
13
licenziamento). In questo caso, le opinioni e i sentimenti possono essere espressi in merito alla sua
abolizione, o, in generale, sull'articolo stesso.
Un sistema di Sentiment Analysis dovrebbe pure essere in grado di differenziare tali possibilità.
Questo è possibile solo se il sistema è in grado di distinguere correttamente i principali argomenti dai
sotto-argomenti di una opinione, insieme con i suoi holder. Per entrambi gli esempi, sarebbe
importante distinguere le opinioni che si esprimono su Berlusconi o sull'articolo 18, come argomenti
principali, da quelli espressi su eventi o situazioni che coinvolgono Berlusconi o l'articolo 18, o altri
ulteriori sotto-argomenti. Ad esempio, se un utente ha espresso un parere positivo sulla
soppressione dell'articolo 18, questo sarebbe indirettamente un parere negativo sull'articolo 18. Molti
dei sistemi di Sentiment Analysis comunque riconoscerebbero l'articolo 18 come un argomento con
un parere positivo, fornendo in tal modo un’analisi sbagliata per quello che riguarda l’identificazione
delle opinioni, a causa della non corretta identificazione del tema principale.
Infatti, diversi lavori (17, 10, 25, 14) mostrano che considerare gli argomenti insieme alle opinioni
migliora le prestazioni dei sistemi di Sentiment Analysis, anche se tali lavori non si concentrano sul
rilevamento dei topic come un task principale.
Un primo passo per affrontare questo problema è stato fatto dal Sentic computing, definito in (5)
come:
“ ... Un approccio multi-disciplinare per la sentiment analysis al centro tra affective computing e
common sense computing, che sfrutta sia l’informatica che le scienze sociali per meglio riconoscere,
interpretare, e processare le opinioni e i sentimenti sul web. “
Uno degli obiettivi del Sentic computing è quello di colmare il gap semantico tra i dati del linguaggio
naturale basati su parole e le opinioni a livello di concetto trasmesso da questi in modo da garantire
un passaggio più efficiente da informazioni testuali non strutturati a dati strutturati processabili.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
14
3.1. Sentilo, un nuovo modello di Sentic Computing
Seguendo la stessa direzione, questa sezione presenta Sentilo, un nuovo metodo di intelligenza
computazionale per la Sentiment Analysis sviluppato all’interno del progetto e incentrato sulla
rappresentazione della semantica di una frase modellando i ruoli svolti dai suoi elementi rispetto ad
un modello di frasi di opinioni. Mostriamo, per mezzo di una serie di esempi e una valutazione, che
questa rappresentazione permette di individuare con precisione gli holder di opinioni e gli argomenti,
fornendo in tal modo la base per migliorare l'accuratezza della Sentiment Analysis sia a livello di
features che di frasi. Il nostro metodo combina la NLP con la rappresentazione della conoscenza, ma
prevediamo anche l’applicazione della logica fuzzy, l’ottimizzazione combinatoria, e il ragionamento
analogico per arrivare ad una esperta soluzione di Sentic Computing.
L’assegnazione dei ruoli nel nostro modello di opinioni si basa sullo sfruttamento della semantica con
granularità fine, in combinazione con l'analisi lessicale e sintattica basata su frame. È stato
dimostrato in (14, 12, 9) che la qualità degli algoritmi di Sentiment Analysis migliora quando si
considerano le features semantiche. Tuttavia, in questi lavori (come in molti altri che si concentrano
sull'analisi sui Tweet), il rilevamento degli argomenti (topic) viene eseguito basandosi sul
riconoscimento di entità o assumendo che frasi sono basate sugli argomenti, che può rivelarsi
efficace solo in tali contesti specifici.
Gli approcci esistenti si basano principalmente su tecniche supervisionate. Anche se si dimostrano
molto efficaci in molti test, essi hanno tre principali punti deboli:
1. si basano su campioni etichettati manualmente, come review di film e prodotti;
2. hanno bisogno di un'opinione espressa con un sentimento esplicito;
3. hanno una portabilità limitata, in quanto la loro performance può cambiare in modo
significativo quando uno stesso metodo viene applicato a un dominio diverso.
Diversamente da questi, il nostro metodo è indipendente dal dominio, il che significa che è
completamente automatico e non supervisionato. Quindi esso non necessita di una fase di training.
In particolare il nostro metodo esegue una interpretazione semantica della frase secondo un modello
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
15
formale di opinioni ed è in grado di identificare le entità rilevanti di una opinione, indipendentemente
dalla presenza di espressioni esplicite di un sentimento in un testo.
3.2. Architettura del sistema Sentilo
Da un punto di vista implementativo, il nostro approccio è stato realizzato come una pipeline di
componenti mostrata in Figura 1, dove le componenti colorate rappresentano i nuovi contributi relativi
al settore della Sentiment Analysis. I componenti tratteggiati sono invece funzionalità che saranno
presto sviluppate. Sentilo è il primo metodo di opinion mining che fornisce un approccio ibrido tra
semantica formale, NLP e tecniche tipiche di intelligenza computazionale.
Figura 1 – Pipeline di Sentilo
Per spiegare la pipeline, consideriamo come esempio la frase seguente, presa dal corpus che
abbiamo usato per la valutazione del sistema:
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
16
“Dry dealers have lost some 3600 kilos of narcotics, the colonel said”
I costrutti sintattici vengono forniti da C&C (12), un parser categorico e combinatorio che integra
riconoscimento di named entity, estrazioni di relazioni di dipendenza, e risoluzione delle co-
referenze. L’output di C&C è mostrato in Figura 2.
Figura 2 - Output di C&C per la frase di esempio
L’output di C&C è processato da Boxer (4), un software open-source che produce rappresentazioni
semantiche, basate ad eventi e verb-centric del linguaggio naturale sfruttando la Discourse
Representation Theory (DRT) semantica. La DRT è una teoria formale originariamente descritta in
(22) che fornisce un modello basato ad eventi per rappresentare il linguaggio naturale ed è
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
17
compatibile con la logica del primo ordine (FOL). La DRT usa un linguaggio semantico esplicito e
strutturato chiamato Discourse Represenation Structure (DRS). In Boxer, il DRS viene arricchito con i
ruoli tematici di VerbNet (35). Boxer usa migliaia di regole euristiche per trasformare gli alberi prodotti
da C&C in rappresentazioni logiche in DRS. La figura 3 mostra l’output di Boxer per la nostra frase di
esempio.
Figura 3 - Output di Boxer per la frase di esempio
Il primo rettangolo introduce una prima quantificazione esistenziale su una variabile che viene
chiamata ‘colonel’, mentre il secondo rettangolo contiene una variabile predicato evento nuova,
say(e1) e due dichiarazioni di ruoli semantici, uno dei quali ha una proposizione p2 come argomento.
Il referente della variabile p2 è un rettangolo che contiene il cuore della rappresentazione di Boxer,
con più predicati variabili, ruoli semantici e co-referenze.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
18
In (20) abbiamo presentato FRED, uno strumento che mappa formalmente le forme logiche DRT in
RDF e OWL sfruttando il design basato sui frame e implementando un insieme di euristiche che
indirizzano la generazione delle strutture e la terminologia secondo le pratiche comuni del design del
Semantic Web. FRED fornisce una rappresentazione semantica delle frasi di opinioni secondo un
modello basato a frame. Le euristiche FRED sono designate per tenere conto dell’interpretazione
semantica del linguaggio quando lo si trasforma in maniera formalizzata. Oltre al sense tagging (per
associare un tipo ad una certa entità), FRED effettua la sense disambiguation (per identificare il
senso corretto di un termine in un certo contesto), il semantic role labeling (per assegnare un ruolo
tematico ad un’entità nel contesto di un evento in cui partecipa), l’estrazione e la composizione di
terminologia, l’induzione di tassonomia, la named entity resolution, ed altre funzionalità importanti per
il mining delle opinioni e dei sentimenti come il riconoscimento di attributi, la modellazione di
situazioni, la rappresentazione delle negazioni e delle modalità.
FRED processa l’output di Boxer e produce una sua rappresentazione RDF ed OWL: la figura 4
mostra una rappresentazione semantica di FRED della frase di esempio.
Figura 4 - Rappresentazione semantica di FRED per la frase di esempio
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
19
FRED riconosce e rappresenta due occorrenze di eventi principali in questa frase, fred:say_1 e
fred:lose_1. Per ognuno di essi, FRED fornisce un tipo e identifica le entità che vi partecipano. Per
esempio, fred:colonel_1 partecipa in fred:say_1 con il ruolo di agent. Ogni entità è presente con un
tipo ed allineata, se possibile, ad una entità esistente del Semantic Web, come per esempio una
entità di qualche dataset di Linked Data: DBpedia, WordNet, etc. E’ da notare che alcune
interpretazioni di Boxer vengono gestite in modo da rendere l’output di Boxer conforme al modello del
Semantic Web: le variabili dall’output di Boxer vengono o eliminate o trasformate in nuove quando
esse si riferiscono ad entità nella rappresentazione di discorsi. Per esempio si noti come la
proposizione p2 è interpretata come una situazione che viene risolta nell’evento fred:lose_1; i
predicati drug e dealer vengono uniti nella nuova classe fred:DrugDealer con una sottoclasse
fred:Dealer, etc.
Al di sopra di FRED abbiamo sviluppato un modello di opinioni (23), ovvero un componente che
implementa un insieme di euristiche che estrae dal grafo di FRED informazioni riguardanti gli holder
di una frase di opinioni, i suoi argomenti, e le sue parole che esprimono opinioni (le opinion feature).
Per riconoscere le parole che esprimono un sentimento abbiamo sviluppato un’euristica che tiene in
considerazione entrambi i dataset SenticNet (2) e SentiWordNet (3) Sentilo arricchisce la
rappresentazione semantica RDF/OWL di una frase di opinioni con le triple annotate basate secondo
il nostro modello.
3.3. Verbi di triggering
Per riconoscere gli holder sfruttiamo i verbi mostrati in figura 5 che rappresentano una revisione dei
verbi già classificati da Levin in (16, 24). Secondo la nostra classificazione ci sono quattro classi di
verbi di opinioni che sottintendono la presenza di un holder e che chiamiamo opinion trigger verbs. E’
possibile scaricarli al seguente indirizzo (19). La figura 5 specifica la relazione tra le categorie di verbi
differenti (riferendoci alla classificazione di Levin) a seconda che implichino la presenza di un holder
che sta commentando o negando un fatto oppure se danno una polarità positiva o negativa al senso
della frase. Quando un verbo di triggering non è presente in una frase, l’holder viene considerato
esistere implicitamente (per esempio si considera l’autore della frase come possibile holder).
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
20
Figura 5 - Revisione della classificazione dei verbi di Levin basata sulla loro rilevanza per quello che riguarda il mining delle opinioni e dei sentimenti
Le quattro classi dei verbi di triggering possono essere descritte come segue:
Verbi di attivazione dell’holder: verbi come accept, agree, think, say, tell, cite, claim, recognize, etc.
che indicano la presenza di un holder di opinione che è il soggetto del verbo sottostante; i soggetti di
tali verbi stanno affermando qualcosa espresso in un contesto di opinioni.
Verbi di negazione di attivazione dell’holder: verbi come contest, disagree, dismiss, oppose, refuse,
reject, etc. indicano la presenza di un holder di opinione che riveste il ruolo di soggetto del dato
verbo. I soggetti di tali verbi hanno una opinione che è contrastante con qualsiasi cosa viene
espressa nel contesto di opinioni. In pratica questa classe è equivalente a quella precedente quando
vi è una negazione come do not, never, etc.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
21
Verbi di polarità positiva dell’holder: verbi come love, like, honor, support, etc. che indicano la
presenza di un holder di opinioni che esprime un sentimento positivo su qualche argomento. I verbi in
tale categoria hanno un impatto nel contesto di opinioni.
Verbi di polarità negativa dell’holder: verbi come dislike, hate, etc. che indicano la presenza di un
holder di opinioni che esprime un sentimento negativo su qualche argomento. Questa classe di verbi
è equivalente alla precedente quando vi è una negazione. Come i precedenti, anche i verbi in tale
categoria hanno un impatto nel contesto di opinioni.
Basandoci sulla assuzione basata sulla teoria Davidsoniana, un verbo in una frase denota una
occorrenza di un evento, dove partecipano diverse entità, ognuna delle quali aventi un ruolo
specifico. Se in una frase viene riconosciuto un verbo di triggering, il suo agent che vi partecipa è
annotato come un holder di opinioni.
Nella nostra frase di esempio “Drug dealers have lost some 3,600 kilos of narcotics, the colonel said”,
il verbo said viene riconosciuto come un verbo di attivazione dell’holder e quindi la sua istanza
associata fred:say_1 viene usata per identificare l’holder dell’opinione che è fred:colonel. Questo
viene ottenuto utilizzando la tripla:
fred:say 1 vn.role:Agent ?holder .
Può accadere che lo stesso verbo viene classificato in più di una categoria. Per esempio, il verbo
accept appartiene sia ai verbi di attivazione dell’holder che ai verbi di polarità positiva dell’holder dato
che implica la presenza di un holder e quella di un sentimento positivo su un certo argomento.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
22
3.4. Riconoscimento degli argomenti
Per quanto riguarda il riconoscimento degli argomenti, Sentilo distingue gli argomenti principali da
quelli secondari di una opinione. Per fare ciò abbiamo definito due classi di equivalenza dei ruoli
tematici di VerbNet: una classe detta AGT, che include tutti i ruoli relativi all’agente ed una classe
chiamata PTT che include tutti i ruoli passivi. Sentilo annota come argomenti principali quelle entità
che partecipano in un verbo di triggering e che hanno un ruolo PTT. Se la frase non ha un evento di
triggering, quasi tutte le entità che hanno solamente archi uscenti nel grafo vengono annotati come
argomenti principali. Riconoscere gli argomenti secondari è un compito molto più complicato e
sofisticato. Data una opinione espressa su un evento, tale opinione potrebbe essere implicita su uno
delle entità di tale frase. Per esempio, la frase:
I am happy that Berlusconi has been condamned for fiscal evasion
esprime una opinione positiva sull’evento della condanna e indirettamente una opinione negativa
sull’entità Berlusconi. Non esprime però una opinione sul motivo specifico della condanna. Quindi, in
questo caso “Berlusconi” dovrebbe essere annotato come argomento secondario mentre “fiscal
evasion” come argomento principale. Notiamo quindi che solo le entità che hanno ruoli sensibili in un
evento sono argomenti secondari.
Abbiamo dimostrato che il nostro metodo è in grado di rilevare gli holder di un’opinione con una
precisione del 95%, i principali argomenti con il 68%, e gli argomenti secondari con il 78 % (metrica
F1).
Ulteriori dettagli sul modello di opinioni che abbiamo definito, insieme ai test che abbiamo eseguito
possono essere trovati nell’appendice A.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
23
4. Un dizionario basato su dominio per la fiducia di comunità
Sulla base di Sentilo è possibile estrarre informazioni riguardo ad una versione “generica” della
fiducia che non è in grado di individuare le caratteristiche specifiche al dominio oggetto di
valutazione. Un’analisi più accurata deve tuttavia rendere conto del fatto che la fiducia verso le
istituzioni deve individuare e specificare per quali “doti” o “vizi”, per quali prestazioni o scopi specifici
ci si fida o meno di detto servizio, ruolo, organizzazione; e sulla base di quali credenze e attese
(magari arbitrarie, invalide) .
4.1. Creazione del corpus testuale
Non avendo a disposizione un corpus sui domini di interesse, si è scelto di utilizzare il dominio degli
hotel con lo scopo di individuare delle features relative alla trust, dipendenti o meno dal contesto in
esame. L'attività svolta sarà poi riportata, con gli opportuni aggiustamenti, sui domini relativi al
progetto.
Il lavoro compiuto ha comportato in primis la creazione di un corpus di 100 recensioni in lingua
inglese di hotel, prelevate dal sito web http://www.tripadvisor.co.uk.
Le valutazioni sono state divise per categoria, in base alla valutazione complessiva assegnata
dall'utente:
1. recensioni positive: 4 o 5 stelle;
2. recensioni medie: 3 stelle;
3. recensioni negative: 1 o 2 stelle.
Tutte le recensioni sono relative ad hotel londinesi.
4.2. GATE
Una volta realizzato il corpus testuale, si è iniziata l'attività di tagging dello stesso. A tal fine, si è
scelto di utilizzare il tool di annotazione GATE Developer.
Si tratta di un software opensource largamente utilizzato nel campo dell'analisi testuale. GATE
Developer fornisce un ambiente di sviluppo integrato per le attività di language processing,
permettendo di realizzare applicazioni molto complesse organizzate in pipeline di componenti.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
24
In GATE sia i corpora che i singoli documenti vengono categorizzati come Language Resources. Per
creare un nuovo corpus è quindi necessario istanziare una nuova Language Resource di tipo GATE
Corpus, popolandolo quindi coi documenti d'interesse.
GATE supporta in input i formati più comuni, quali ad esempio html, xml e txt. In questo lavoro è stato
utilizzato in parte il formato txt, in parte quello xml.
4.3. Tagging del testo
Una volta realizzato un nuovo corpus in GATE, è possibile procedere con la vera è propria attività di
tagging.
GATE consente due modalità di tagging. La prima modalità, detta restricted, prevede l'utilizzo di tipi
predeterminati di tag, definiti tramite un apposito xml schema. Tale schema prevede inoltre la
possibilità di definire per ogni tipo delle sottocategorie.
Le seconda modalità, detta invece unrestricted, permette invece all'utente di di effettuare il tagging
del testo senza il bisogno di definirne prima gli schemi relativi ai vari tipi. Questo seconda possibilità,
sebbene più flessibile, si presta facilmente agli errori degli annotatori umani.
Si è quindi scelto di utilizzare la modalità di tagging unrestricted in una prima fase su un campione di
15 testi. Qui infatti una maggiore flessibilità è risultata utile per definire meglio quali dovevano essere
le categorie di tag e per individuare quali features testuali risultavano d'interesse.
Una volta determinate con maggiore precisione le categorie, si è continuata l'analisi tramite la
modalità restricted.
4.4. Le categorie di tagging
Lo scopo con cui sono state determinate le categorie di tag è quello di individuare nelle valutazioni
espresse dagli utenti delle espressioni di fiducia, contestualizzando tali espressioni rispetto al
modello del dominio in esame.
Ciò ha comportato la suddivisione delle categorie di tag in due macro-sezioni:
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
25
• quelle relative alla fiducia;
• quelle relative al contesto che si sta valutando (l'hotel)
Inoltre tali categorie possiedono un livello di granularità diverso. La prima sezione opera
(generalmente) a livello di token, includendo brevi sequenze di tokens. Al contrario la seconda opera
a livello di frase o di chunk (unità linguistica di senso compiuto costituita da un insieme di parole).
Quindi il tagging viene svolto su due livelli. È inoltre possibile che la stessa stringa (che sia un token,
un chunk o una frase) appartenga a più categorie di tag.
Relativamente alla fiducia, sono state individuate le seguenti categorie di tag:
• CompetenceFeature: qui si vogliono evidenziare tutte le features che riguardano la
competenza dell'agente in analisi;
• CompetenceProperty: in questa categoria rientrano le proprietà relative alle features di
competenza
• WillingnessFeature: qui rientrano gli elementi che esprimono la willingness (motivazione)
dell'agente in analisi;
• WillingnessProperty: come per la CompenteceProperty, questa categoria include le
proprietà relative alle features di willingness;
• Source: qui si vuole individuare la fonte della valutazione, ovvero se si tratta di una
valutazione diretta o indiretta. Questa categoria opera a livello di chunk/frase;
• Comparison: una valutazione può essere espressa in forma assoluta o relativa. Con questa
categoria si intende includere anche le valutazioni relative (“migliore di”, “peggiore rispetto a”,
“il migliore in assoluto” ecc.). Questa categoria opera a livello di chunk/frase.
Riguardo al contesto, si è scelto di utilizzare le stesse categorie che TripAdvisor mette a disposizione
degli utenti per esprimere delle valutazioni:
• GlobalEvaluation: qui rientrano le valutazioni relative all'hotel nel suo complesso;
• Cleanliness: pulizia dell'hotel;
• Location: posizione dell'hotel;
• Rooms: stanze e servizi inclusi nella stanza;
• Service: servizi offerti dal personale dell'hotel;
• SleepQuality: qualità del sonno;
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
26
• Value: rapporto qualità/prezzo.
4.5. Un esempio pratico
Di seguito si mostra un esempio pratico di tagging, relativamente ad una valutazione media (3 stelle).
Valutazione media, tag relativi alla fiducia:
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
27
Notiamo la presenza di una Comparison e di una Source, oltre a varie CompetenceFeature,
CompetenceProperty e WillingnessFeature. Non ci sono WillingnessFeature.
Valutazione media, tag relativi al contesto:
Qui notiamo lo stesso testo, con un tagging effettuato a livello di frase o chunk. Si noti come le
precedenti categorie di tag (CompetenceFeature, CompetenceProperty e WillingnessFeature) si
riflettano sulle categorie relative al modello (Location, Rooms, Service, Value).
4.6. L’output
Il corpus realizzato è stato esportato su file, sfruttando la serializzazione di Java (opzione offerta da
GATE). I singoli documenti taggati sono stati invece esportati in formato xml.
Successivamente si è prodotto un modulo scritto in Python con lo scopo di analizzare i documenti
prodotti ed estrarre le categorie di tag, con i relativi valori, in formato testuale.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
28
Bibliografia
[1] Sentiment 140. http://www.sentiment140.com/.
[2] E. Cambria, C. Havasi, and A. Hussain. SenticNet2: A semantic and affective resource for opinion
mining and sentiment analysis. In AAAI FLAIRS, pp. 202-207, Marco Island (2012).
[3] Stefano Baccianella, Andrea Esuli and Fabrizio Sebastiani. SentiWordNet 3.0: An Enhanced
Lexical Resource for Sentiment Analysis and Opinion Mining. In Proceedings of the Seventh
International Conference on Language Resources and Evaluation (LREC'10), 2010.
[4] Johan Bos. Wide-coverage semantic analysis with boxer. In Proceedings of the 2008 Conference
on Semantics in Text Processing, STEP ’08, pages 277–286, Stroudsburg, PA, USentiment Analysis,
2008. Association for Computational Linguistics.
[5] E. Cambria and A. Hussain. Sentic computing: Techniques, tools, and applications. Dordrecht,
Netherlands: Springer, ISBN: 978-94-007- 5069-2, 2012.
[6] Erik Cambria, Bjorn Schuller, Yunqing Xia, and Catherine Havasi. New avenues in opinion mining
and sentiment analysis. IEEE Intelligent Systems, 28(2):15–21, 2013.
[7] Cristiano Castelfranchi (2008), La mente come macchina anticipatoria: cosa sono le aspettative e
a che servono, in P. Cherubini, R. Rumiati, A. Tasso (a cura di), Rappresentazioni e congetture. Atti
del convegno in ricordo di Alberto Mazzocco, Padova, CLEUP.
[8] Cristiano Castelfranchi e Rino Falcone (2010), Trust theory, London, Wiley.
[9] Huajun Chen, Zhaohui Wu, and Philippe Cudr-Mauroux. Semantic web meets computational
intelligence: State of the art and perspectives [review article]. IEEE Comp. Int. Mag., 7(2):67–74,
2012.
[10] Keke Cai, Scott Spangler, Ying Chen, and Li Zhang. Leveraging sentiment analysis for topic
detection. Web Intelli. and Agent Sys., 8(3):291–302, August 2010.
[11] Opinion Crawl. http://opinioncrawl.com/.
[12] Bojan Djordjevic, James R. Curran, and Stephen Clark. Improving the efficiency of a wide-
coverage ccg parser. In Proceedings of the 10th International Conference on Parsing Technologies,
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
29
IWPT ’07, pages 39–47, Stroudsburg, PA, USentiment Analysis, 2007. Association for Computational
Linguistics.
[13] Diego Gambetta (a cura di) (1989), Le strategie della fiducia. Indagini sulla razionalità della
cooperazione, Torino, Einaudi.
[14] Richard Johansson and Alessandro Moschitti. Relational features in fine-grained opinion
analysis. Computational Linguistics, 39(3):473–509, 2013.
[15] Hans Kamp. A theory of truth and semantic representation. In J. A. G. Groenendijk, T. M. V.
Janssen, and M. B. J. Stokhof, editors, Formal Methods in the Study of Language, volume 1, pages
277–322. Mathematisch Centrum, Amsterdam, 1981.
[16] Beth Levin. English Verb Classes and Alternations A Preliminary Investigation. University of
Chicago Press, Chicago and London, 1993.
[17] Chenghua Lin, Yulan He, Richard Everson, and Stefan Ruger. Weakly supervised joint
sentiment-topic detection from text. IEEE Transactions on Knowledge and Data Engineering,
24(6):1134–1145, 2012.
[18] Social Mention. http://www.socialmention.com/.
[19] Levin opinion. http://www.stlab.istc.cnr.it/documents/sentilo/levin-opinion.zip.
[20] Valentina Presutti, Francesco Draicchio, and Aldo Gangemi. Knowledge extraction based on
discourse representation theory and linguistic frames. In Knowledge Engineering and Knowledge
Management, volume 7603 of Lecture Notes in Computer Science, pages 114–129. Springer Berlin
Heidelberg, 2012.
[21] The VerbNet project. http://verbs.colorado.edu/ mpalmer/projects/verbnet.html.
[22] Hassan Saif, Yulan He, and Harith Alani. Semantic sentiment analysis of twitter. In Proceedings
of the 11th international conference on The Semantic Web - Volume Part I, ISWC’12, pages 508–
524, Berlin, Heidelberg, 2012. Springer-Verlag.
[23] Sentilo. http://wit.istc.cnr.it/stlab-tools/sentilo.
[24] V.S. Subrahmanian and Diego Reforgiato. Ava: Adjective-verb-adverb combinations for
sentiment analysis. IEEE Intelligent Systems, 23:43– 50, 7 2008.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
30
[25] Ivan Titov and Ryan McDonald. Modeling online reviews with multi-grain topic models. In
Proceedings of the 17th international conference on World Wide Web, WWW ’08, pages 111–120,
New York, NY, Sentiment Analysis, 2008. ACM.
[26] Edna Ullmann-Margalit (2002), Trust out of distrust, in «Journal of Philosophy», 99 (10), pp. 532-
548.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
31
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
32
Allegato A
Frame-based detection of opinion holders and topics: a model and a tool
Aldo Gangemia,b
, Valentina Presuttib
, Diego Reforgiatob
aLIPN, Université Paris13-CNRS-SorbonneCité, France
bSTLab, ISTC-CNR, Italy
Abstract
We present a model and a tool, named Sentilo, to perform holder and topic detection in opinion
sentences. Sentilo implements an approach based on the neo-Davidsonian assumption that
events/situations are the primary entities for contextualizing opinion, which makes it able to
distinguish holders, main topics, and sub-topics of an opinion. It uses a heuristic graph mining
approach that relies on FRED, a machine reader for the Semantic Web leveraging Natural Language
Processing (NLP) and Knowledge Representation (KR) components jointly with cognitively-inspired
frames. The results of evaluation are excellent for holder detection (F1: 95%), very good for sub-topic
detection (F1: 78%), and good for topic detection (F1: 68%).
Keywords: opinion mining, sentic computing, sentiment analysis, topic and holder detection
1. Introduction
Sentiment Analysis (SA) is a much studied task in Natural Language Processing (NLP) that is made
up of identifying and extracting subjective information from text. Generally speaking, SA aims at
defining the attitude of a subject i.e., an opinion holder, towards a topic, or the overall tonality of a
document. In recent years, the exponential increase in Internet usage and exchange of public opinion
on the Web is the driving force behind SA. The Web is a huge repository of structured and
unstructured data: the analysis of this data in order to extract opinions and sentiments is an
opportunity, and a challenging problem.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
33
SA can be document-based, where the sentiment in the entire document is summarized as positive,
negative or objective, as well as sentence-based, where individual sentences bearing sentiments in
the text are classified. Sentence-based SA can be fine-grained when specific contexts within a
sentence are considered. We observe that fine grain enables a third variety of SA: aspect-based,
where topics are associated to different sentiments according to the considered aspect of a topic.
SA can be generalized as the analysis of opinions: an opinion is an intentional statement by
somebody (holder) on some fact (topic) that is expressed with a possible sentiment. Given a
document or a set of documents, they may contain opinions about multiple topics that are interesting
to users: in this scenario it is very important to be able to correctly detect topics, and to separate the
opinions associated with each topic (9).
One problem that occurs in current SA approaches is the incorrect identification of opinion topics. In
many recent SA systems such as (1; 13; 30), the user is prompted to just insert a topic in order to
obtain a sentiment. Then the system returns a list of opinions on the specified topic. However, some
of the returned results are useless to the user because they are out of the domain the user is
interested in. For example, one user could look for opinions about Berlusconi, and get several results
related to Berlusconi in politics, business, criminal investigations, or football. A different example
based on a similar rationale is a user asking about opinions on the italian Article 18 (Italy’s labour
code). In this case, opinions and sentiments can be expressed about e.g. its abolition, or in general
about the Article itself.
A SA system should be able to differentiate those possibilities as well. This is practicable only if a
system is able to properly distinguish the main topics from the sub-topics of an opinion, together with
its holders. For both examples, it would be important to distinguish opinions that are expressed on
Berlusconi or on Article 18 as main topics, from those expressed about events or situations involving
Berlusconi or Article 18, or other accessory topics. In the latter case, they would be sub-topics, hence
the opinion considered indirect. For example, if one expressed a positive opinion on the abolition of
Article 18, this would be indirectly a negative opinion on the Article 18. Most existing SA systems
would however recognize Article 18 as a topic with a positive opinion, hence providing the wrong
analysis for the sentiment, due to the incorrect identification of the main topic.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
34
In fact, several works (28; 12; 39; 21) show that considering topics jointly with sentiment features
improves the performance of SA systems, although those works do not focus on topic detection as a
specific task. A first step toward addressing this issue has been done by sentic computing, defined as
(6):
“...a multi-disciplinary approach to sentiment analysis at the cross roads between affective computing
and common sense computing, which exploits both computer and social sciences to better recognize,
interpret, and process opinions and sentiments over the Web.”
One of the goals of sentic computing is to bridge the semantic gap between word-level natural
language data and the concept-level opinions conveyed by these so as to provide a more efficient
passage from unstructured textual information to structured machine-processable data.
Following the same direction, this article presents a novel computational intelligence method for SA,
focused on representing the semantics of a sentence by modeling the roles played by its elements
with respect to a model of opinion sentences. We show, by means of a set of examples and an
evaluation, that this representation allows SA to precisely identify opinion holders and topics, hence
providing the basis for improving the accuracy of sentence-and aspect-based SA. Our method
combines NLP with knowledge representation, but we also envision the application of fuzzy logic,
combinatorial optimization, and analogical reasoning to arrive at a full-fledged sentic computing
solution.
Role assignment in our opinion model relies on the exploitation of fine-grained semantics,
combined with frame-based lexical and syntactic analysis. It has been proved in (36; 21; 10) that
the quality of SA algorithms improves when considering semantic features. However, in these
works (as in many others that focus on tweet analysis), topic detection is performed by relying on
named entity recognition or by assuming that sentences are topic-based, which can prove
efficient only in such specific settings.
Existing approaches are mainly based on supervised techniques. Although they prove very
effective in many tests, they have three main weaknesses: reliance on manually labelled
samples, such as movies/product reviews; need of opinion expressed with explicit sentiment;
limited portability, as their performance can change significantly when a same method is applied
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
35
to a different domain. On the contrary, our method is domain-independent, meaning that it is
completely automatic and unsupervised: it does not need a training phase. It performs a
semantic interpretation of the sentence according to a formal opinion model (cf. Section 3), and
is able to identify relevant entities of an opinion regardless of the presence of explicit expressions
of sentiment in a text. We show that our method is able to detect opinion holders with an
accuracy of 95%, opinion main topics with 68%, and opinion subtopics with 78% (F1 measure).
Our contribution can be summarized as follows:
• a new challenging task: detection of opinion holders, main topics and sub-topics;
• a method based on combining formal knowledge representation, natural language processing,
and cognitively-founded frames for opinion mining;
• an implementation of this method, named Sentilo (http://wit.istc.cnr.it/stlab-tools/sentilo),
which, given an opinion sentence, returns its semantic representation annotated with opinion-
relevant concepts;
• a model for opinion sentences that we use for annotating their semantic representation;
The paper is structured as follows: Section 2 discusses relevant related work; Section 3 presents our
method and describes the opinion model; Section 4 describes Sentilo. Results and evaluation of our
approach are shown in Section 5 whereas Section 6 drafts the conclusions and discusses future
directions.
2. Related Work
Comprehensive surveys on opinion mining and sentiment analysis are provided in literature by (9; 6;
29; 17; 23), hence we do not attempt any additional survey. In this section, we discuss works relevant
to our approach, and list some of the most popular lexical resources that are used for supporting
opinion mining.
Most existing SA approaches neglect the topic detection task because they focus on the identification
of sentiment features and on the analysis of the tone of an opinion. Several works (28; 12; 39; 21)
have considered the inclusion of topic detection as an important issue for improving SA, however
instead of focusing on the topic detection task itself, and evaluating their approaches in this respect,
they include topics within their models, assuming that their identification is correct on a statistical
basis, and then evaluate the aggregate results from a SA task perspective. Moreover, these
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
36
approaches rely on the presence of sentiment features for the identification of topics, as their interest
is on opinions that bear some explicit sentiment expression, hence they do not consider the
identification of opinion topics in general.
As for opinion holder extraction, (40) compares three different methods based on classifiers for
holder extraction and proposes a novel method for addressing the less common case of opinion
holder playing a patient role. (25) uses semantic role labeling based on FrameNet (34) for identifying
holder and topic in an opinion sentence focusing on a specific domain.
In this paper we focus on identifying holder and topics of an opinion independently of the presence of
sentiment features and show that our approach is promising with respect to the more general opinion
mining task. With regards to popular resources that are used for supporting opinion mining and SA,
we have considered (and partly used in the current version of our tool):
• SenticNet (7) is a publicly available semantic and affective resource for concept-level
opinion and sentiment analysis. SenticNet is built by means of sentic computing, a
paradigm that exploits both AI and Semantic Web techniques to better recognize,
interpret, and process natural language opinions over the Web. We have integrated
SenticNet in our implementation in order to retrieve the polarity scores of terms
expressing sentiment, which will be used in the next evolution of Sentilo i.e., polarity
classification of opinions associated with their topics and sub-topics.
• SentiWordNet (2) is a lexical resource for opinion mining. SentiWord-Net assigns to each
synset of WordNet three sentiment scores: positivity, negativity, objectivity. This resource
is integrated in Sentilo with the same aim as the integration of SenticNet.
• VerbNet (VN) (5) is the largest on-line verb lexicon currently available for English. It is a
hierarchical domain-independent, broad-coverage verb lexicon with mappings to other
lexical resources such as Word-Net, Xtag and FrameNet. VerbNet is organized into
(frame-like) verb classes extending Levin’s (27) classes through refinement and addition
of subclasses to achieve syntactic and semantic coherence among members of a class.
Each verb class is described by “frames” consisting of a syntactic description and
semantic predicates, with thematic roles and selectional restrictions on the arguments.
We exploit VerbNet in the frame-based semantic representation of opinion sentences. In
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
37
particular, VerbNet thematic roles are a key reference in our approach for the definition of
heuristics that helps in detecting holders and the topics of an opinion (see Section 4).
FrameNet (34) and LIWC (20) are additional examples of available lexical resources that can be
exploited in SA.
3. A model for sentic computing
Adapting the definition from (24), we describe an opinion as an intentional statement made by
somebody (holder) on some fact (topic), which is expressed with a possible sentiment.
Opinion sentences can refer to the holder of an opinion either explicitly or implicitly. For example, in
the sentence “I believe the issue raised by the President is sufficiently important”, the holder of the
sentiment is explicit and is denoted by “I”. It can be recognized thanks to the verb “believe”, which
also announces that an opinion (possibly with some sentiment) about a certain topic (i.e. the issue
raised by the President) is expressed elsewhere in the sentence. In the sentence “The issue raised
by the President is sufficiently important”, the holder is implicit (or externally identifiable, e.g. as the
author of the text or through other provenance mechanisms).
Similarly, the sentiment about a topic can be either implicit or explicit. The abovementioned
sentences express explicitly a sentiment about the topic, however sometimes this does not happen.
For example, consider the sentence “He said that the patient was suffering from tick bite fever”.
Again, the holder is explicit (i.e. “he”), and the verb “said” announces that an opinion is to be
expressed in the sentence, but the fact (i.e., the patient was suffering from tick bite fever) is not
associated with an explicit sentiment.
Special attention has to be given to topics of an opinion. Sentiment analysis is also useful for
supporting answers to questions such as: given a topic, what is the trend of opinions about it? For
this reason, it is important to correctly identify topics of an opinion, and to distinguish main topics from
sub-topics, which sometimes can be complex. For example, the sentence “I appreciate that
Berlusconi finally has been condemned”, expresses a positive sentiment about the fact: “Berlusconi
has been condemned”. However, if one is interested in knowing the trend of opinions about
Berlusconi, this positive expression should be attributed to the set of negative sentiments about him,
as Berlusconi is a subtopic in this opinionated sentence, and the event “condemn” has a negative
impact on him.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
38
In order to handle all these issues, and to be able to recognize holders and topics of an opinion, we
use an approach that combines knowledge representation and NLP. We first produce a semantic
representation of an opinion sentence (described in Section 3.1), and then we annotate it with a
model for opinions (described in Section 3.2) that identifies the opinion holder(s), topic(s), and sub-
topic(s).
3.1. Frame-based semantic representation of sentences
As far as the semantic representation of sentences is concerned, we make an ontological
commitment inspired by Davidson’s view (14) that the world is primarily described in terms of events
and situations (i.e., occurrences of frames), where objects are typically involved in some specific
event or situation. Based on this view, we produce an RDF/OWL semantic representation of an
opinion sentence as a series of linked events or situations, and their participating objects. We
implement this theory as a frame-based knowledge extraction approach (see Section 4). We use
DOLCE+DnS (31; 18) as a vocabulary for events and situations1, and VerbNet (35) as a reference
resource for thematic roles of events. Our commitment has the consequence that we try and look first
for events or situations as main topics, and only when these cannot be extracted, we look for objects
or other entities. This will become clearer later in the paper. Events and situations are also typed, and
their types are supposed to approximate existing cognitively-inspired frames (cf. (19)) as in FrameNet
(34), but also they can bear locally extracted roles, so that appropriate algorithms can discover new
frames based on frequency, relevance, or other criteria.
Let us consider the following example: “Anna says the weather will become beautiful”. Figure 1
shows the semantic representation of this sentence, which follows our ontological assumption. The
sentence expresses a main
1 prefix dul: stands for http://www.ontologydesignpatterns.org/ont/dul/DUL.owl and prefix rdf: stands for
http://www.w3.org/1999/02/22-rdf-syntax-ns#
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
39
Figure 1: The semantic representation of the sentence “Anna says the weather will become beautiful”.
event identified by the verb “says”, the agent of which is Anna and the topic role2
of which is an event
identified by the verb “become” (i.e., “the weather will become beautiful”); weather is the agent of
such event. Additionally, we represent that “will” expresses a particular modality for the verb, e.g.,
necessarily, and that weather is qualified by the quality beautiful.
3.2. A model for opinion
Our opinion model defines the main concepts characterizing an opinion, and is used for annotating
the semantic representation of a sentence, in order to identify its opinion holder and topic. Figure 2
depicts our opinion model. We define the semantic representation of an opinion sentence as having
two parts3: (i) opinion trigger context and (ii) opinionated context. The opinion trigger context is
optional and identifies concepts that indicate the
2 “topic” here is a thematic role for the event “say” according to VerbNet. 3 Note that an opinion sentence can have nested opinion sentences as its parts: this is represented by the
relation hasPartOpinionSentence. Each of them can be represented according to the two-parts model described here.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
40
Figure 2: A model for opinion sentences.
presence of an opinion expressed in the sentence, and its holder. It is composed of two parts: the
entities that allow the identification of the opinion holders (i.e. holders), and the events e.g., think,
say, support, etc., that act as triggers of an opinion (i.e., opinion triggers).
The opinionated context identifies concepts that express an opinion (possibly including sentiments). It
is composed of two parts: the entities that identify the opinion topics (i.e., topics), and those
expressing the opinion and its possible associated sentiments (i.e., the opinion features). In some
cases, terms that activate an opinion can also convey the opinion itself or a possible sentiment, e.g.
“approve” or “deny”. When this happens, such terms play the role of opinion triggers as well as that of
opinion features.
As for topics, we distinguish between main topics and sub-topics (see Figure 3 (b)). In fact, a topic
can be a complex structure e.g., an event or a situation, including other complex structure. For the
purpose of SA, it is important to distinguish all main topics, that are the direct targets of an opinion,
from sub-topics, which could be indirect targets of an opinion. For example, the main topic of the
opinion sentence represented in Figure 1 is the event become, while weather is a sub-topic. The
following axioms formalize the concepts of main topic and sub-topic by using a standard description
logic syntax, directly translatable into OWL.
Topics (of opinion sentences) can be either main topics (direct targets of the opinion) or sub-topics
(indirect targets of an opinion).
When a main topic is a situation, its involved entities are sub-topics.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
41
When a main topic is an event, entities that have a dependency relation with it are sub-topics.
Examples of dependency relations are: participation in the event (e.g., having a role in it), causality
relations, temporal relations e.g., follows, precedes), etc.
In order to annotate the semantic representation of an opinion sentence with this model, we rely on
three interpretation layers:
• Lexical layer: it provides the terms (and possibly a score for them) that act as triggers of an
opinion or as opinion features. From an implementation perspective, this layer depends on the
lexical resources used jointly with the NLP procedure. In our case, we are using Sentic-Net
(7), SentiWordNet (2), and a revision of the Levin’s classification of verbs (see Section 4).
• Syntactic layer: it provides the syntactic constructs that are relevant in an opinion expression.
From an implementation perspective, this layer is addressed by means of part of speech
tagging, dependency parsing, and co-reference resolution.
• Semantic layer: it provides the semantic constructs that are relevant in an opinion model.
These are relations, roles, qualities, modalities, negation. From an implementation
perspective, this layer is addressed by means of a set of heuristics that map natural language
into an event-based logical representation. We use a tool named FRED (33) that produces an
event-based RDF/OWL representation of natural language text (see Section 4).
Following the opinion model, the semantic representation of the sentence “Anna says the weather will
become beautiful” presented in Figure 1 is annotated as shown in Figure 3.
The opinion trigger context is composed of the event say (i.e., opinion trigger) and its agent Anna
(i.e., holder). The main topic is identified as the event become (which is not associated with any
specific opinion feature). As weather has a dependency relation with the event become (it
participates in it with the role of agent), it is identified as a sub-topic.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
42
Figure 3: The semantic representation of the sentence “Anna says the weather will become beautiful.”
annotated according to the opinion model.
The quality beautiful is annotated as an opinion feature of a sub-topic.
4. Sentilo: identifying holders and topics of an opinion sentence
From an implementation perspective, our approach (named Sentilo) is realized as a pipeline of
components depicted in Figure 4, where colored components indicate novel contributions.
Components in dashed boxes are currently being developed. To the best of our knowledge, Sentilo is
the first method for opinion mining that hybridizes formal semantics, NLP and typical computational
intelligence techniques.
In order to explain the pipeline, let us consider the following sentence from the corpus we have used
for the evaluation (presented in Section 5): Drug dealers have lost some 3,600 kilos of narcotics, the
colonel said.
The syntactic constructs (cf. Section 3) are provided by C&C (16), a combinatory categorial parser
that integrates named entity recognition, a categorial equivalent of dependency relation
extraction, and co-reference resolution. The output of C&C for the sample sentence is depicted
in Figure 5.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
43
Figure 4: The pipeline of components in Sentilo.
The output of C&C is processed by Boxer (4), an open-source software that produces event-based,
verb-centric, semantic representations of natural language complying with Discourse Representation
Theory (DRT) semantics. DRT is a formal theory of meaning originally described in (22). It provides
an event-based model to represent natural language, and is compatible with first-order logic (FOL).
DRT uses an explicit semantic structured language called Discourse Representation Structure
(DRS). In Boxer, DRS are enriched with the VerbNet (35) inventory of thematic roles. Boxer uses
thousands of heuristic rules to transform C&C trees into logical DRS representations
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
44
Figure 5: The output of C&C for the sentence “Drug dealers have lost some 3,600 kilos of narcotics, the colonel
said”.
Figure 6 shows the output of Boxer for our sample sentence. The first box introduces a first
existential quantification on a variable that is predicated as “colonel”, while the second box contains a
new event predicated variable (“say(e1)”), and two semantic roles declarations, one of which has an
embedded proposition “p2” as arguments. The referent of the p2 variable is a box that contains the
bulk of Boxer’s representation, with more variables predications, semantic roles, and co-references.
In (33) we have presented FRED (http://wit.istc.cnr.it/stlab-tools/fred),
a tool that formally maps DRT
logical forms (DRS) to RDF and OWL by exploiting frame-based design, and by implementing a set
of heuristics that address terminology and structure generation according to Semantic Web design
practices. FRED enables the semantic representation of opinion sentences according to the frame-
based model described in Section 3.1. FRED heuristics are designed to take into account the
semantic interpretation of language when transforming it to a formalized form.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
45
Figure 6: The output of Boxer for the sentence “Drug dealers have lost some 3,600 kilos of narcotics, the
colonel said”.
It addresses, besides sense tagging (to associate a type to a certain entity), sense disambiguation (to
identify the correct sense of a term given a certain context), semantic role labeling (to assign a
thematic role to an entity, in the context of an event it participates in), terminology extraction and
composition, taxonomy induction, named entity resolution, etc., and also issues that are important for
opinion and sentiment mining: attribute detection, situation modeling, negation and modality
representation. FRED is in charge of processing Boxer output, and of producing its RDF/OWL
representation: Figure 7 shows the semantic representation of the sample sentence as it is provided
by FRED4.
4 We have removed part of the graph for space reason, the reader is welcome to submit the sentence to
FRED or Sentilo online to see the complete output.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
46
Figure 7: FRED representation for the sentence Drug dealers have lost some 3,600 kilos of narcotics, the
colonel said.
FRED recognizes and represents two main event occurrences in this sentence, i.e. fred:say_15, 8
and fred:lose_1. For each of them it provides a type and identifies its participating entities, e.g.
fred:colonel_1 participates in fred:say_1 with the role of agent6
. Each entity is assigned with a
type and aligned, if possible, to an existing Semantic Web entity, e.g. an entity from some Linked
Data dataset: DBpedia, WordNet, etc. Notice some of the interpretations that makes Boxer
output compliant to Semantic Web modeling: the variables from Boxer output are either
eliminated, or transformed into new individuals, when they refer to actual entities in discourse
representation; the p2 proposition is interpreted as a “situation” that is eventually resolved to its
main contained event (fred:lose_1); the “drug” and “dealer” predicates are composed in the new
class fred:DrugDealer, with a subclass axiom to fred:Dealer, etc.
5 fred: prefix is the local namespace of the RDF graph produced by FRED.
6 vn.role: stands for http://www.ontologydesignpatterns.org/ont/vn/abox/role/. Thematic roles are based on
VerbNet (5).
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
47
4.1. Opinion model annotator On top of FRED, we have developed an opinion model annotator (37), a component that implements
a set of heuristics that extract, from the FRED’s graph of a given sentence, information about holders
of an opinion sentence, its topics, and its opinion expressing words (i.e., opinion features). Sentilo
enriches the RDF/OWL semantic representation of an opinion sentence with annotation triples based
on our opinion model (cf. Section 3.2).
Holder detection. To detect opinion holders we rely on Levinopinion (cf. Figure 8), a revision of Levin’s
classification of verbs (27; 38): we have classified four classes of opinion verbs that imply the
presence of an holder; we call them opinion trigger verbs. It is possible to download the four
categories of verbs from (32). Figure 8 specifies the relationship between different verb categories
(referring to Levin’s classification) depending on the presence of an holder which is stating or denying
a fact, or if they imply a positive sentiment. When a trigger verb is not present in a sentence, the
holder is assumed to be implicit (e.g. the author of the sentence). The four classes of trigger verbs
can be described as follows:
• Holder activation verbs: verbs such as accept, agree, think, say, tell, cite, claim, recognize, etc.
which indicate the presence of an opinion holder who is the subject of the underlying verb;
subjects of such verbs are affirming something expressed in the opinionated context. Verbs in
this class appear in the opinion trigger context described in Section 3.2;
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
48
Figure 8: Levinopinion: revision of Levin’s classification of verbs based on their relevance for the opinion mining
and sentiment analysis tasks. We define four categories: holder activation verbs, holder activation negative
verbs, holder positive polarity verbs, and holder negative polarity verbs.
• Holder activation negated verbs: verbs such as contest, disagree, dismiss, oppose, refuse, reject,
etc. which indicate the presence of an opinion holder, who is the subject of the underlying verb;
subjects of such verbs have an opinion which is in contrast with whatever is expressed in the
opinionated context. Basically, this class of verbs is equivalent to the first class when a negation such
as do not, never, etc. is present;
• Holder positive polarity verbs: verbs such as love, like, honor, support, etc.. These verbs indicate
the presence of an opinion holder expressing a positive sentiment on some topic(s). Verbs in this
category appear in the opinion trigger context and have an impact on the opinionated contexts
(Section 3.2);
• Holder negative polarity verbs: verbs such as dislike, hate, etc.. These verbs indicate the presence
of an opinion holder expressing a negative sentiment on some topic(s). This class of verbs is
equivalent to the previous one when a negation occurs. Verbs in this category appear in the opinion
trigger context and impact on the opinionated contexts (Section 3.2).
Based on our Davidson’s theory-based assumption, a verb in a sentence denotes an occurrence of
an event, which is participated in by a number of entities, each having a specific role: if a trigger
event is detected in a sentence, its participating agent is annotated as the opinion holder.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
49
In our sample sentence “Drug dealers have lost some 3,600 kilos of narcotics, the colonel said”, the
verb said is detected as an holder activation verb, hence its associated event instance fred:say_1 is
used for identifying the opinion holder that is the entity fred:colonel_1). This is obtained by
recognizing the triple pattern:
fred:say 1 vn.role:Agent ?holder .
It might happen that a same verb is classified in more than one category. For example, the verb
accept belongs to both Holder activation verbs and Holder positive polarity verbs as it both implies
the presence of an holder and the presence of a positive sentiment on a certain topic. This
information will influence the computation of sentiment scores associated with the opinion topics, a
task that we leave for future development.
Topic detection. As for topic detection, Sentilo distinguishes main topics from sub-topics of an
opinion. To enable this capability we have defined two equivalent classes of VerbNet thematic roles:
a class named AGT, which includes all agentive roles, and a class named PTT, which includes all
passive roles. Sentilo annotates as main topics those entities that participate in a trigger event
playing a PTT role. If the sentence misses a trigger event, all entities (modulo some exceptions)
having only outgoing arcs in the graph (roots) are annotated as main topics.
Recognizing sub-topics is a more complex and sophisticated task. Given an opinion expressed on an
event, such opinion can convey an indirect opinion about some of its participating entities. For
example, the sentence: I am happy that Berlusconi has been condemned for fiscal evasion.
expresses an opinion (positive) on the condemnation event, and indirectly it conveys an opinion
(negative) on Berlusconi, while it does not express an opinion on the specific motivation of the
condemnation. Hence, in this case “Berlusconi” should be annotated as a sub-topic, while “fiscal
evasion” should not. We say that only entities that play sensitive roles in an event are sub-topic7.
7 However, future work should take into account contextual effects on sensitivity. For example, the sentence I
am happy that Berlusconi has been condemned precisely for fiscal evasion. contains a modifier that shifts
sensitivity also to the oblique role filled by “fiscal evasion”.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
50
Establishing if a role is sensitive for an event depends on the specific context. However, we have
empirically observed that the roles belonging to AGT and PTT are sensitive in most of the cases.
Based on this rationale, our heuristics for annotating sub-topics refines the Formula 3 (cf. Section
3.2) as defined by the following Formula 4.
When a main topic is an event, entities that participate in it having either an agentive role or a
passive role are sub-topics.
Upcoming extensions. The following extensions are currently being plugged into the system:
• Sentiment score computation, which uses both the scores provided by SenticNet and
SentiWordNet and the semantics of the representation model to assess sentiment scores
to the detected topics.
• Topic co-reference resolution, which deals with the synonymy between entities or topics,
where the goal is to recognize the same situations or events denoted using different
expressions, using similarity methods combined with semantic models produced using
FRED.
• Topic and opinion models index, which deals with the indexing of the discovered/detected
topic associated with their sentiment models.
• Fuzzy reasoning, which will be utilized to handle multiple opinion feature scores in a more
flexible (natural, human-friendly) manner. This will be done by using fuzzy varieties of
OWL, such as Fuzzy OWL2 (3), and the related automated reasoners;
• Learning mechanisms, sentic pattern discovery, and combinatorial optimization, which will
be investigated to further improve the accuracy of the proposed approach. In our case,
the graph representations of FRED, and its augmentation with the Sentilo model, provide
ordered sets of features that will be reused to train machine learning classifiers, and to
perform sentiment patterns discovery, as a variety of knowledge patterns (19). Another
interesting direction is in extending combinatorial optimization applied to parsing trees (as
e.g. reported in (26)) to FRED’s semantic graphs;
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
51
• Analogical reasoning, which can be used to deal with sarcasm by extending the known or
newly discovered sentic patterns to figurative and ironic modalities. Here AffectiveSpace
(8) can play an important role as well, once its concepts are associated to frame-based
knowledge.
5. Results and evaluation
Sentilo has been evaluated on 50 sentences, including a subset of the MPQA opinion corpus (11),
and some more sentences extracted from the Europarl corpus8. MPQA was originally used for the
opinion analysis task with training and test cases. Our model does not require training, since it is
based on the semantic output of FRED. We can then compare our approach to the original
annotations about opinion holders9
provided in the corpus, incremented with appropriate annotations
made by three annotators also for the main topics and subtopics of those opinions.
Three annotators have been instructed on our assumptions about events and situations to be taken
as preferential main topics, and once they have expressed their choices, they have been allowed to
discuss in cases of disagreement.
They have reached a complete agreement in all cases for holder’s identification (modulo the three
amendments made to the original benchmark), in 47 cases out of 50 for topic identification (.96 is the
average interrater proportional agreement), and in 36 cases out of 50 for subtopic identification (.81 is
the average interrater proportional agreement)10.
When annotators did not reach a complete
agreement, we accepted the choice of the majority (2 out of 3).
8 http://www.statmt.org/europarl/ 9 Our three annotators actually amended three holder annotations, which resulted inaccurate. 10 We have used proportional agreement because in this case we need an absolute agreement measure, not a relative reliability measure such as Cohen’s k. Reliability measures are important when variation within the sample is of interest, e.g. when the research question refers to suitability of a test in a particular setting, cf. (15), which is not the case of simple acceptability of annotations. In such simple cases reliability can even produce paradoxical results, as reported by (15).
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
52
Table 1: Information measures for holder and topic detection.
The information measures for holder detection and topic detection (Table 1) include precision, recall,
F1, and accuracy, where the positives and negatives have been calculated locally on each sentence
output, i.e. the maximum score for each sentence is 1 for true positives plus false negatives, and for
false positives plus true negatives. The reason for this localization is straightforward: each sentence
is expected to provide a closed set of holders and topics, and we are interested in the performance of
Sentilo for each sentence, not for the joint opinion space of the collection of sentences. The results
are very satisfactory for holder detection, where two heuristics have resulted in very high accuracy for
most cases, i.e. choosing agentive entities in triggering events, or choosing an implicit holder when
all explicit heuristics fail.
The results are good also for main topic detection, a novel task in the way we perform it here, i.e. by
assuming a Davidsonian world, where main entities are assumed to be events or situations, except
when purely attributive states of affairs are referenced. Consider that for this first test, we have
applied a few heuristical rules for subgraph mining, without refining them, and without overfitting them
after evaluation. Our intent is actually to have a feedback on the validity of our hypotheses, while
leaving the optimization of detection methods, and their application to the ranking of opinion features.
As expected, difficult sentences for main topic detection (14/50) seem to concentrate on unusual
syntactic constructions within complex sentences, which require specific rules to enable topic
detection. Difficult sentences for topic detection often have an implicit holder (6/14 while the
expected distribution should be 4/14), which may indicate an insufficiency in the subgraph extraction
heuristics currently used for sentences with implicit holders.
For subtopics, the results are slightly better than main topics, probably because of the strong
connectedness of FRED graphs that allows reaching at subtopics even from wrong main topics. This
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
53
happens because FRED has been designed to maximize the amount of links between the semantic
elements expressed by a sentence: syntactic dependencies, compositional lexical dependencies,
automatic typing, robust semantic role labeling even in the absence of a known frame,
disambiguation of named entities and word senses. Therefore, the (subjective at the moment)
impression is that even when the primary topic attachment is not expected, a correct subtopic can be
still reached through one of the paths activated by FRED. Heuristics refinement is however barely
due in this case, since we have started only with the rules based on the formal definitions given in 2
and 3 (cf. Section 3).
6. Conclusion and future work
As described in (17), the current state of art in sentiment analysis and opinion mining suffers from
simplistic techniques, which leave several challenges, including: (a) compositionality of opinion, (b)
opinionated entity disambiguation, (c) contextualization of sentiment, (d) dealing with sarcasm,
(e) noise in text, and (f) factual sentiment.
In this paper we have described a method and a tool for opinion holder and topic detection,
which are crucial for (a), (c), and (f). Heuristic graph mining on top of a machine reader that
converts sentences into RDF-OWL graphs proves to be a good idea for taking advantage of the
relational features existing in the semantic structure of an opinionated text. Results are excellent
for holder detection and good for topic/subtopic detection, and improvement seems easily
attainable by incrementally refining heuristics for topic and subtopic detection. Crowdsourcing
techniques can be easily applied to this task.
In addition, the use of a semantic-web-aware machine reader like FRED makes it simple to solve
(b), at least for public entities and concepts that can be resolved on resources like DBpedia and
WordNet. FRED foundation on cognitive frames is also handy for attempting (future work) a
resolution of (d), based e.g. on formalizing AffectiveSpace (8) knowledge into frame-based
representations.
Ongoing work concentrates on extracting opinion features from all graph patterns that are
generated by Sentilo, and on designing an algorithm to calculate aspect-based opinion scores.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
54
The algorithm is being implemented, and will be functionally evaluated by comparison to state-of-
art sentiment analysis tools. Moreover, computational intelligence methods (cf. Fig. 4), including
fuzzy reasoning, combinatorial optimization on graph mining, learning mechanisms, sentic
pattern discovery and analogical reasoning, described in Section 4, are being developed on top
of Sentilo.
Acknowledgment
The work described in this paper was performed with the support of the PRISMA (PiattafoRme cloud
Interoperabili per SMArt-government) project, funded by the MIUR (Ministero dell’Istruzione,
dell’Università e della Ricerca).
References
[1] Sentiment 140. http://www.sentiment140.com/.
[2] Andrea Esuli Stefano Baccianella and Fabrizio Sebastiani. Sentiwordnet 3.0: An enhanced lexical
resource for sentiment analysis and opinion mining. In Nicoletta Calzolari (Conference Chair), Khalid
Choukri, Bente Maegaard, Joseph Mariani, Jan Odijk, Stelios Piperidis, Mike Rosner, and Daniel
Tapias, editors, Proceedings of the Seventh conference on International Language Resources and
Evaluation (LREC’10), Valletta, Malta, may 2010. European Language Resources Association
(ELRA).
[3] Fernando Bobillo and Umberto Straccia. Fuzzy ontology representation using owl 2. Int. J. Approx.
Reasoning, 52(7):1073–1094, October 2011.
[4] Johan Bos. Wide-coverage semantic analysis with boxer. In Proc. of the conference on Semantics
in Text Processing, STEP 31
’08, pages 277–286, Stroudsburg, PA, USA, 2008. Association for Computational Linguistics.
[5] Susan Windisch Brown, Dmitriy Dligach, and Martha Palmer. Verb-net class assignment as a wsd
task. In Proceedings of the Ninth International Conference on Computational Semantics, IWCS ’11,
pages 85–94, Stroudsburg, PA, USA, 2011. Association for Computational Linguistics.
[6] E. Cambria and A. Hussain. Sentic computing: Techniques, tools, and applications. Dordrecht,
Netherlands: Springer, ISBN: 978-94-0075069-2, 2012.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
55
[7] Erik Cambria, Catherine Havasi, and Amir Hussain. Senticnet 2: A semantic and affective
resource for opinion mining and sentiment analysis. In G. Michael Youngblood and Philip M.
McCarthy, editors, FLAIRS Conference. AAAI Press, 2012.
[8] Erik Cambria, Thomas Mazzocco, and Amir Hussain. Application of multi-dimensional scaling and
artificial neural networks for biologically inspired opinion mining. Biologically Inspired Cognitive
Architectures, pages 41–53, 2013.
[9] Erik Cambria, Bjorn Schuller, Yunqing Xia, and Catherine Havasi. New avenues in opinion mining
and sentiment analysis. IEEE Intelligent Systems, 28(2):15–21, 2013.
[10] Huajun Chen, Zhaohui Wu, and Philippe Cudr-Mauroux. Semantic web meets computational
intelligence: State of the art and perspectives [review article]. IEEE Comp. Int. Mag., 7(2):67–74,
2012.
[11] MPQA Opinion Corpus. http://mpqa.cs.pitt.edu/corpora/mpqa corpus/.
[12] Keke (Correspd. E-mail: [email protected]) Cai, Scott Spangler, Ying Chen, and Li Zhang.
Leveraging sentiment analysis for topic detection. Web Intelli. and Agent Sys., 8(3):291–302, August
2010.
[13] Opinion Crawl. http://opinioncrawl.com/.
[14] Donald Davidson. The logical form of action sentences. In Nicholas Rescher, editor, The Logic of
Decision and Action, pages 81–120. Univ. of Pittsburgh Press, 1967.
[15] Henrica C W de Vet, Lidwine B Mokkink, Caroline B Terwee, Otto S Hoekstra, and Dirk L Knol.
Clinicians are right not to like Cohen’s k. BMJ, 346, 4 2013.
[16] Bojan Djordjevic, James R. Curran, and Stephen Clark. Improving the efficiency of a wide-
coverage ccg parser. In Proceedings of the 10th International Conference on Parsing Technologies,
IWPT ’07, pages 39–47, Stroudsburg, PA, USA, 2007. Association for Computational Linguistics.
[17] Ronen Feldman. Techniques and applications for sentiment analysis. Commun. ACM, 56(4):82–
89, April 2013.
[18] Aldo Gangemi. What’s in a Schema? In Chu-Ren Huang, Nicoletta Calzolari, Aldo Gangemi,
Alessandro Lenci, Alessandro Oltramari, and Laurent Prevot, editors, Ontology and the Lexicon: A
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
56
Natural Language Processing Perspective, pages 144–182, Cambridge, UK, 2010. Cambridge
University Press.
[19] Aldo Gangemi and Valentina Presutti. Towards a pattern science for the semantic web. Semant.
web, 1(1,2):61–68, April 2010.
[20] Linguistic Inquiry and Word Count (LIWC). http://www.liwc.net/.
[21] Richard Johansson and Alessandro Moschitti. Relational features in fine-grained opinion
analysis. Computational Linguistics, 39(3):473–509, 2013.
[22] Hans Kamp. A theory of truth and semantic representation. In J. A. G. Groenendijk, T. M. V.
Janssen, and M. B. J. Stokhof, editors, Formal Methods in the Study of Language, volume 1, pages
277–322. Mathematisch Centrum, Amsterdam, 1981.
[23] Abe Kazemzadeh, Sungbok Lee, and Shrikanth S. Narayanan. Fuzzy logic models for the
meaning of emotion words. IEEE Computational Intelligence Magazine, 8(2):34–49, May 2013.
[24] Soo-Min Kim and Eduard Hovy. Determining the sentiment of opinions. In Proceedings of the
20th international conference on Computational
Linguistics, COLING ’04, Stroudsburg, PA, USA, 2004. Association for Computational Linguistics.
[25] Soo-Min Kim and Eduard Hovy. Extracting opinions, opinion holders, and topics expressed in
online news media text. In Proceedings of the Workshop on Sentiment and Subjectivity in Text, SST
’06, pages 1–8, Stroudsburg, PA, USA, 2006. Association for Computational Linguistics.
[26] Joseph Le Roux, Antoine Rozenknop, and Jennifer Foster. Leveraging alternative grammar
extraction strategies using lagrangian relaxation with pcfg-la product model parsing: A case study
with function labels and binarization. In Proceedings of EMNLP2013, 2013.
[27] Beth Levin. English Verb Classes and Alternations A Preliminary Investigation. University of
Chicago Press, Chicago and London, 1993.
[28] Chenghua Lin, Yulan He, Richard Everson, and Stefan Ruger. Weakly supervised joint
sentiment-topic detection from text. IEEE Transactions on Knowledge and Data Engineering,
24(6):1134–1145, 2012.
PRISMA – PiattafoRme cloud Interoperabili per SMArt-government
PON04a2_A -PON04a2_A / F– Settore mart Cities and Communities and Social Innovation
Rapporto Scientifico Ver. FINAL 29.10.2013
57
[29] Bing Liu. Sentiment Analysis and Opinion Mining. Synthesis Lectures on Human Language
Technologies. Morgan & Claypool Publishers, 2012.
[30] Social Mention. http://www.socialmention.com/.
[31] Dolce Ultra Lite Ontology. http://www.ontologydesignpatterns.org/ont/dul/dul.owl.
[32] Levin opinion. http://www.stlab.istc.cnr.it/documents/sentilo/levinopinion.zip.
[33] Valentina Presutti, Francesco Draicchio, and Aldo Gangemi. Knowledge extraction based on
discourse representation theory and linguistic frames. In Knowledge Engineering and Knowledge
Management, volume 7603 of Lecture Notes in Computer Science, pages 114–129. Springer Berlin
Heidelberg, 2012.
[34] The FrameNet project. http://framenet.icsi.berkeley.edu.
[35] The VerbNet project. http://verbs.colorado.edu/ mpalmer/projects/verbnet.html.
[36] Hassan Saif, Yulan He, and Harith Alani. Semantic sentiment analysis of twitter. In Proceedings
of the 11th international conference on The Semantic Web -Volume Part I, ISWC’12, pages 508–524,
Berlin, Heidelberg, 2012. Springer-Verlag.
[37] Sentilo. http://wit.istc.cnr.it/stlab-tools/sentilo.
[38] V.S. Subrahmanian and Diego Reforgiato. Ava: Adjective-verb-adverb combinations for
sentiment analysis. IEEE Intelligent Systems, 23:43– 50, 7 2008.
[39] Ivan Titov and Ryan McDonald. Modeling online reviews with multi-grain topic models. In
Proceedings of the 17th international conference on World Wide Web, WWW ’08, pages 111–120,
New York, NY, USA, 2008. ACM.
[40] Michael Wiegand and Dietrich Klakow. Generalization methods for in-domain and cross-domain
opinion holder extraction. In Proceedings of the 13th Conference of the European Chapter of the
Association for Computational Linguistics, EACL ’12, pages 325–335, Stroudsburg, PA, USA, 2012.
Association for Computational Linguistics.
Top Related