Italica Una introducción al Sentiment Analysis Fermín Cruz [email protected].

43
italica Una introducción al Sentiment Analysis Fermín Cruz [email protected]

Transcript of Italica Una introducción al Sentiment Analysis Fermín Cruz [email protected].

Page 1: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Una introducción al Sentiment Analysis

Fermín Cruz [email protected]

Page 2: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Contenido

Retos

Tareas

Recursos

Motivación

Definición

Aplicaciones

Page 3: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

1

Opiniones

Toma de decisiones.

2

Internet(Web 2.0)

3

Información no

estructurada

Motivación

Page 4: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Definición

Sentiment Analysis

Tratamiento computacional de las opiniones, sentimientos y fenómenos subjetivos en los textos.

…otras formas de llamarlo:opinion mining, sentiment classification, subjectivity analysis, review mining, appraisal extraction, affective computing,…

Page 5: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Aplicaciones

Websites recopilatorios de reviews de productos*

Recopilación automática Resumen automático Corrección de las puntuaciones

*también aplicable a artículos políticos, críticas de cine o música…

Page 6: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Aplicaciones

Business and Government Intelligence(aplicaciones en el lado oscuro)

Análisis de las opiniones de los clientes de una empresa con respecto a sus productos

Seguimiento de la valoración de los clientes en el tiempo

Monitorización de fuentes de información políticas para la detección de hostilidades

Seguimiento de la popularidad de candidatos políticos.

Page 7: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Aplicaciones

Como componente de otras tecnologías

Sistemas de recomendación Detección de lenguaje ofensivo Publicidad automática Extracción de información Question Answering Resumen automático Análisis de citas en artículos Interfaces de usuario “sentiment-aware”

Page 8: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Aplicaciones

Aplicación a otros campos científicos

Ciencias políticas Sociología Derecho (blawgs) Psicología

Page 9: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Retos

¿Qué hace a estas tareas especialmente difíciles?

Un caso: Sentiment Classification vs Topic Classification

Un dato:Usando técnicas de machine learning aplicadas frecuentemente a la clasificación de documentos clásica, se obtienen resultados en torno a un 80% de precisión (Pang et al.,2002)

Page 10: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Retos

Algunos textos de ejemplo (Pang and Lee, 2008):

¡ No hay palabras claramente negativas !

“If you are reading this because it is your darling fragance, please wear it at home exclusively, and tape the windows shut.”

Page 11: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

“…go read the book!”

Retos

Algunos textos de ejemplo (Pang and Lee, 2008):

¿Positivo o negativo?...Depende del dominio

Page 12: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Retos

Algunos textos de ejemplo (Pang et al., 2002):

Multitud de palabras positivas… ¡pero es una opinión negativa!

“The film should be brilliant. It sounds like a great plot, the actors are first grade, and the supporting cast is good as well, and Stallone is attemping to deliver a good performance. However, it can’t hold up.”

Page 13: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Retos

Algunos textos de ejemplo:

¿Opinión negativa o positiva?¿Quién es el director?¿Qué otras películas ha dirigido?¿Qué opiniones existen sobre esas otras películas?

“El director nos regala otra de las joyas a las que nos tiene acostumbrados.”

Page 14: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Retos

¿Qué hace a estas tareas especialmente difíciles?

Fuerte dependencia con el contexto y con el dominio

Importancia fundamental de la estructura del discurso

Necesidad de disponer de conocimiento del mundo

Ambigüedad inherente

Fenómenos pragmáticos

Page 15: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Tareas

Algunas de las tareas englobadas dentro del término Sentiment Analysis

Clasificación de documentos de opiniónBinaria (Sentiment polarity)Multiclases (Rating inference)

Detección de subjetividadExtracción de opinionesClasificación de la perspectivaDeterminación de la intensidad de las opinionesClasificación de las emocionesDetección de humor

Page 16: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Clasificación de documentos de opinión

Documento de opinión Clasificador

Clasificador binario

Page 17: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Clasificación de documentos de opinión

Documento de opinión Clasificador

Rating Inference

Page 18: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Thumbs up or thumbs down? Semantic orientation applied to unsupervised classification of reviews (Turney, 2002)

Extracción de bigramas: se seleccionan bigramas que contengan adjetivos o adverbios, según cinco reglas morfosintácticas muy simples.

Orientación semántica: valor real cuyo signo determina la implicación positiva o negativa del término y cuyo valor absoluto determina la intensidad de dicha implicación.

)"(")""(

)"(")""(log)(

excellenthitspoorNEARthits

poorhitsexcellentNEARthitstSO IRPMI

Clasificación de documentos de opinión

Page 19: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Thumbs up or thumbs down? Semantic orientation applied to unsupervised classification of reviews (Turney, 2002)

Clasificación de documentos de opinión

Page 20: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Thumbs up or thumbs down? Semantic orientation applied to unsupervised classification of reviews (Turney, 2002)

Domain of Review Accuracy

Automobiles 84.00%

Banks 80.00%

Movies 65.83%

Travel Destinations 70.53%

All 74.39%

Clasificación de documentos de opinión

Page 21: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Clasificación de documentos basada en la opinión: experimentos con un corpus de críticas de cine en español (F.Cruz et al., 2008)

Corpus en castellano: formado por críticas de cine extraídas de http://www.muchocine.net

Críticas introducidas por usuarios

Textos procesados con FreeLing (Atserias et al., 2006) Disponible en http://www.lsi.us.es/~fermin/corpusCine.zip

Clasificación de documentos de opinión

Page 22: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Clasificación de documentos de opinión

Clasificación de documentos basada en la opinión: experimentos con un corpus de críticas de cine en español (F.Cruz et al., 2008)

Tres experimentos realizados

1

Reproducción del clasificador no supervisado de

Turney (Turney, 2002)

Semillas y patrones de extracción adaptados al castellano.

2

Utilización de semillas múltiples

3

Búsqueda supervisada del

umbral óptimo entre clases para la suma de las orientaciones

semánticas.

Page 23: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Clasificación de documentos basada en la opinión: experimentos con un corpus de críticas de cine en español (F.Cruz et al., 2008)

Experimento aciertospositivas

aciertonegativas

aciertostotal

Semillas simples 35,5% 91,5% 63,5%

Semillas múltiples 70% 69% 69,5% umbral

Supervisado(semillas simples) 72,5% 82,5% 77,5% 13

Supervisado(semillas múltiples) 75% 72,5% 73,75% -2,25

Clasificación de documentos de opinión

Page 24: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Thumbs up? Sentiment Classification using Machine Learning Techniques (Pang et al., 2002)

Corpus de críticas de cine extraídas de iMDb Afrontan el problema como si se tratara de una

clasificación basada en topic. Estudio previo: selección de palabras clave para cada

categoría

Clasificación de documentos de opinión

Page 25: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Thumbs up? Sentiment Classification using Machine Learning Techniques (Pang et al., 2002)

Aplicación de tres algoritmos de machine learningNaive BayesMaximum EntropySupport Vector Machines

Clasificación de documentos de opinión

Page 26: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Sentiment Classification Using Word Sub-sequences and Dependency Sub-trees (Matsumoto et al., 2005)

Sobre el mismo corpus anterior, se emplean features que capturan la aparición de secuencias frecuentes de palabras y de subárboles de dependencias.

Utilizan SVM Alcanzan una precisión

de 92.9%

Clasificación de documentos de opinión

Page 27: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Seeing stars: Exploiting class relationships for sentiment categorization withrespect to rating scales (Pang and Lee,2005)

Rating inference: dado un documento de opinión, determinar si la opinión es positiva o negativa dentro de una escala (p.ej. de 1 a 5)

Tres aproximaciones Clasificador multiclases Regresión Metric labelling

SVM

Multiclases < Regresión ≈ Metric labelling

Clasificación de documentos de opinión

Page 28: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Detección de subjetividad

Unidad textual Clasificador

Page 29: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Learning Extraction Patterns for Subjective Expressions (Riloff and Wiebe,2003)

1. Primero, se utilizan clasificadores con alta precisión (pero baja cobertura) para detectar oraciones objetivas y subjetivas. Basados en items léxicos (palabras y n-gramas) recolectados a mano.

2. A partir de las oraciones identificadas, se construyen mediante aprendizaje reglas de extracción de patrones. Se restringe el tipo de patrones que se pueden extraer, mediante plantillas sintácticas, e.g., <subj> passive-verb.

3. Se utilizan los patrones aprendidos para extraer nuevas oraciones objetivas y subjetivas. El proceso se repite…

Detección de subjetividad

Page 30: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Learning Extraction Patterns for Subjective Expres (Riloff and Wiebe,2003)

Algunos patrones extraídos

Detección de subjetividad

Page 31: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Extracción de opiniones

Documento de opinión(Análisis de un producto)

Detector de features

Detector de opiniones Clasificador de opiniones

*Opcional*

Opiniones

Page 32: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Mining Opinion Features in Customer Reviews (Hu and Liu, 2004)

Generación de un “resumen” de las opiniones acerca de un producto extraídas de un conjunto de reviews

Digital_camera_1:picture quality:Positive: 253 <individual reviews>Negative: 6 <individual reviews>size:Positive: 134 <individual reviews>Negative: 10 <individual reviews>…

Tres problemas Extracción de features Extracción de opiniones Clasificación de las opiniones

Extracción de opiniones

Page 33: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Mining Opinion Features in Customer Reviews (Hu and Liu, 2004)

Extracción de opiniones

Extracción de features Se extraen palabras o n-gramas frecuentes Se eliminan aquellos que:

Si aparece de manera compacta en menos de dos oraciones

Si están contenidos en un feature de más tamaño

Extracción de opiniones Adjetivos cercanos a los features

Clasificación de las opiniones Se utiliza WordNet para decidir la orientación semántica

de los adjetivos (Miller et al., 1990)

Page 34: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Clasificación de la perspectiva

Unidad textual Clasificador

Page 35: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Get out the vote: Determining support or opposition from Congressionalfloor-debate transcripts (Thomas et al.,2006)

Corpus generado a partir de http://govtrack.us

Transcripciones de debates legislativos, divididos por intervenciones. Cada intervención es etiquetada según la votación posterior del político (apoya o no apoya la ley).

Problema: ante una nueva intervención, decidir si es de apoyo o de rechazo a la ley.

Clasificación de la perspectiva

Page 36: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Get out the vote: Determining support or opposition from Congressionalfloor-debate transcripts (Thomas et al.,2006)

Sistema en dos niveles Clasificador binario (SVM): decide de forma

independiente la probabilidad de que una intervención sea de apoyo o de rechazo.

Detección de acuerdos (SVM): detecta acuerdos o desacuerdos entre dos intervenciones.

Ambos modelos son entrenados sobre un mismo training. Se utiliza una técnica basada en grafos (minimum cuts)

para encontrar las clases de salida óptimas.

Precisión: 71,28%

Clasificación de la perspectiva

Page 37: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Otras tareas

Intensidad de las opiniones Puede verse como una clasificación no binaria de la

subjetividad (p.ej. neutral, low, medium, high)Just how mad are you? Finding strong and weak opinion clauses (Wilson et al., 2004)

Clasificación de emociones Clasificar unidades textual según la emoción que

contienen: anger, disgust, fear, happiness, sadness y suprise (Ekman, 1982)Emotions from text: machine learning for text-based emotion prediction (Alm et al.,2005)

Detección de humor Clasificar una unidad textual como humorística o no

Humor: Prosody Analysis and Automatic Recognitionfor FRIENDS (Purandare et al., 2006)

Page 38: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Recursos

Corpus

Blog06: colección de entradas de blogs, con opiniones etiquetadas (positive, negative, mixture)http://ir.dcs.gla.ac.uk/test_collections/access_to_data.html

Congressional floor-debate transcriptshttp://www.cs.cornell.edu/home/llee/data/convote.html

Cornell movie-review datasetsSentiment polaritySentence-level polaritySentiment-scaleSubjectivity dataset

http://www.cs.cornell.edu/people/pabo/movie-review-data/

Page 39: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Recursos

Corpus

Customer review dataset: reviews de cinco productos electrónicos extraídos de Amazon y Cnet, etiquetados con features y opinioneshttp://www.cs.ui.edu/~liub/FBS/CustomerReviewData.zip

Corpus Muchocinehttp://www.lsi.us.es/~fermin/corpusCine.zip

Page 40: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Recursos

Recursos léxicos

General Inquirer: incluye términos con varios tipos de orientaciones semánticas positivas o negativas, y palabras relacionadas con acuerdo y desacuerdohttp://www.wjh.harvard.edu/~inquirer

OpinionFinder’s Subjectivity Lexicon: diccionario de indicadores de subjetividadhttp://www.cs.pitt.edu/mpqa/

SentiWordnet: los synsets de WordNet con puntuaciones que reflejan estádísticasmente cuando expresan opinión positiva/negativa, o cuando son objetivos http://sentiwordnet.isti.cnr.it/

Page 41: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Recursos

Competiciones

TREC Blog tracks: las sesiones organizadas en 2006, 2007 y 2008 proponen tareas de extracción y clasificación de opiniones de blogs

NTCIR-6: detección de oraciones con opinión y clasificación de las mismas (positivas, negativas o neutrales)

NTCIR-7: añade a la tarea anterior la clasificación de la intensidad de las opiniones (débil, media o fuerte)

Opinion pilot (TAC 08): resumen multidocumentos de opiniones a partir de blogs

Page 42: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Recursos

Para saber más…

Opinion Mining and Sentiment Analysis *: survey realizado

por Bo Pang y Lillian Lee de la Universidad de Cornell (2008)

* Cualquier parecido con los contenidos de esta presentación es pura casualidad ;)

Page 43: Italica Una introducción al Sentiment Analysis Fermín Cruz fcruz@us.es.

italica

Fermín Cruz [email protected]