Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Opinion mining

327 views

Published on

Presentación en el curso Web y Text Mining en la Universidad de Palermo.

Published in: Technology
  • Login to see the comments

  • Be the first to like this

Opinion mining

  1. 1. OPINION MINING Web y Text MiningJuan Azcurra
  2. 2. Introducción: Hechos vs. Opiniones2  Una manera de dividir la información según objetividad: Hechos (supuestamente objetivos) y Opiniones (evidentemente subjetivos)  La mayoría de las técnicas de IR trata a todo como hechos (asume que son ciertos, o su veracidad es otro problema).  Los hechos pueden ser identificados simplemente por su descripción (tópicos).  Los motores de búsqueda no entienden de opiniones  Las opiniones no se resumen con un tópico:  ¿Que piensa la gente acerca de los teléfonos Nokia?  La manera de armar un ranking en un motor de búsqueda no sirve para armar ranking incluyendo opiniones (una opinión, ¿es más o es menos relevante que un hecho?).
  3. 3. Introducción – Opiniones 3  Opiniones en la web  Es mucho mas fácil escribir opiniones que hechos (bloggers vs. periodistas). Se pueden encontrar opiniones en casi cualquier agregación de contenido: comentarios sobre cosas (productos, libros, películas), foros de discusión, blogs.  Agregadas, estas opiniones contienen información valiosa sobre cosas, y sobre la gente que usa esas cosas. Esta información no es imparcial, pero refleja el gusto colectivo.  Queremos extraer opiniones a partir de contenido generado por la gente, que no fue escrito con el objetivo de hacer la extracción más fácil.
  4. 4. Opinion Mining en la Web 4  Empresas: gastan muchísimo dinero en encuestas y focus groups para averiguar que opinan sus clientes. Se puede usar opinion mining para saber que opinan los clientes de sus productos y servicios, y de los de la competencia.  Personas: Una persona busca la opinión de otras para:  Comprar un producto o servicio  Encontrar opiniones similares sobre temas políticos  Tomar una decisión con alto grado de incertidumbre, recibiendo el consejo de “expertos”.  Publicidad Online: Se puede mejorar la efectividad de un anuncio publicitario si éste aparece cuando:  El producto es un producto sobre el que la persona tiene opinion positiva.  Se resaltan las diferencias con productos sobre los que la persona dio opinión negativa.  Mercado de Opiniones: Mucha gente apostando al resultado de un evento (opinando) incorpora muchos puntos de vista, que colectivamente dan buenos resultados como predictores (Iowa Electronic Markets http://www.biz.iowa.edu/iem).
  5. 5. Tipos de opinión 5  Opiniones Directas: Una persona expresa lo que siente sobre algo (productos, eventos, personas, etc).  “P.ej. La recepción de este teléfono es excelente”  Estas opiniones son siempre subjetivas, o limitadas a la experiencia del usuario.  Comparaciones: Son opiniones que expresan similaridades o diferencias entre varios objetos, la mayoría del tiempo definen un orden.  P.ej. “La batería del nokia N95 dura mucho más que la del IPhone”.  Pueden ser objetivas (testeadas) o subjetivas.
  6. 6. Opinion Mining: El ideal 6  ¿Se pueden buscar y clasificar opiniones como si fuera buscar y clasificar tópicos?  Escenario ideal: poder resumir las opiniones colectivas sobre todo:  Opiniones: “Motorola RAZR”  Comparaciones: “Motorola vs. Nokia” (a través del tiempo)  Ranking: ¿Cuál es el producto propio del que nuestros clientes tienen peores opiniones?  Clasificación: ¿Es un párrafo dado una opinión o una descripción?
  7. 7. Encontrando la opinión de una persona sobre X7  En algunos casos un motor de búsqueda es suficiente: P.ej. “Opinión de Kirchner sobre indultos”  Esto funciona porque…  Una persona u organización normalmente tiene una sola opinión sobre una cosa o hecho en particular, y esa opinión se encuentra descripta en un documento.  ¿Que pasa cuando queremos agregar opiniones?
  8. 8. Encontrando la opinión de una persona sobre X8  Encontrar opiniones sobre X es diferente de encontrar a X (búsqueda tradicional).  Ordenar los resultados es diferente: En una búsqueda tradicional, los resultados se ordenan a partir de un criterio de utilidad (o autoridad). 1resultado = 1 página.  Opinion search: Ranking en base a utilidad (que tanto un párrafo es una opinión sobre X), y autoridad (que tan reputada es la fuente de la opinión). 1 resultado = varias páginas.
  9. 9. Buscando opiniones 9  Distribución del Ranking:  ¿Producir 2 rankings…  Mostrando separadamente opiniones positivas y negativas  Mostrando algún resumen de todo (p.ej. cuantas de cada tipo)  …O producir 1 ranking?  Donde la parte más visible del ranking (p.ej. mejores 30) reflejan la distribución entre todas las clases (p.ej positivos y negativos) de todos los reviews (asumiendo que no hay spam).  Opinión General:  ¿Debería el usuario leer todas las opiniones? O….  ¿Debería el sistema preparar un resumen de las opiniones?
  10. 10. Muchas críticas = Encuestas 10  Reseñas y críticas tienen puntos en común con encuestas tradicionales.  En una encuesta tradicional, los formularios llenados con las respuestas son la información “cruda”.  Luego se analizan todos los formularios para resumir el resultado (p.ej.% en contra de un tema).  En minería de opiniones hace falta reunir muchas opiniones en un resumen:  ¿Se puede producir un resumen?  ¿Qué debería incluir ese resumen?
  11. 11. Roadmap 11  Opinion mining – Las partes básicas  Domain level sentiment classification  Sentence level sentiment analysis  Feature-based sentiment analysis and summarization  Summary
  12. 12. Partes de una opinión 12  Componentes de una opinión:  Opinador/a: Una persona u organización que expresa una opinión especifica sobre un objeto en particular.  Objeto: Sobre qué se opina.  Opinión: Un punto de vista, postura, o valoración de un objeto por parte de un opinador. Una opinión puede ser positiva, negativa, o neutra.
  13. 13. Tareas en Opinion mining 1/2 13  A nivel de Documento: Objetivo: sentiment classification de críticas  Clases: positive, negative, and neutral  Presunción: cada documento (o crítica) se enfoca en un solo objeto (no es cierto en foros) y contiene una opinión de un solo opinion holder.  A Nivel de Sentencia:  Objetivo 1: identificar frases que contienen una opinión  Clases: objetiva / subjetiva (con opinión)  Objetivo 2: sentiment classification de frases  Clases: positive, negative and neutral.  Presunción: Una frase contiene solo una opinión.
  14. 14. Tareas en Opinion mining 2/2 14  A Nivel de Feature:  Tarea 1: Identificar y extraer las features que marcan comentarios en cada documento o párrafo.  Tarea 2: Determinar si las las features están asociadas a opiniones positivas, negativas o neutrales.  Tarea 3: Agrupar features en sinónimos.  Producir un resumen de varias opiniones a partir de los features.  Opinion holders: Identificar a los opinion holders es también útil (p. ej. Quién escribió un artículo).
  15. 15. Más a nivel de Feature 15  Problema 1: Tanto F (el conjunto de features) como W (el conjunto de sinónimos de cada feature) es desconocido.  Hace falta llevar a cabo las 3 tareas.  Problema 2: F es conocido pero W no.  Hace falta llevar a cabo las 3 tareas, pero la tarea 3 es más fácil; se convierte en un problema de asociar features nuevas al set de features conocidas.  Problema 3: F y W son conocidos  Solo hace falta llevar a cabo la tarea 2.
  16. 16. Roadmap 16  Opinion mining – the abstraction  Document level sentiment classification  Sentence level sentiment analysis  Feature-based sentiment analysis and summarization  Summary
  17. 17. Sentiment classification 17  Clasificar documentos (p.ej. críticas) basándonos en la impresión general expresada por los autores,  Positiva, negativa, y (tal vez) neutral.  En este modelo, la opinión es sobre un objeto O.  Parecido pero diferente a clasificación de texto:  En clasificación de texto basada en tópicos, las palabras que indican los tópicos son importantes.  En sentiment classification, palabra que indican sentimiento son más importantes, p.ej., bueno, excelente, horrible, malo, peor, etc.
  18. 18. Unsupervised review classification (Turney, ACL-02)18  Datos: Críticas de epinions.com acerca de automóviles, bancos, películas, y destinos de viajes.  Enfoque: 3 pasos  Paso 1:  Part-of-speech tagging  Extraer 2 palabras consecutivas de las críticas si los PoS tags siguen algún patrón dado, p.ej. NN AQ.
  19. 19. 19  Paso 2: Estimar la orientación semántica de las frases extraídas  Usa Pointwise mutual information  Semantic orientation (SO): SO(phrase) = PMI(phrase, “excelente”) - PMI(phrase, “pobre”)  Extrae las frases usando el operador NEAR de AltaVista para buscar el número de veces que aparecen juntas y cerca, y así calcular
  20. 20. 20  Paso 3: Calcular el SO promedio de todas las phrases  clasifica el objeto como recomendado si el SO promedio es positivo, y no recomendado si es negativo.  Precisión final de la clasificación:  automóviles - 84%  bancos - 80%  películas - 65.83  destinos de viajes - 70.53%
  21. 21. Sentiment classification usando machine learning (Pang et al, EMNLP-02)21  Este paper aplicó varias técnicas de machine learning techniques para clasificar críticas de películas en positivas o negativas.  Probó con 3 métodos de clasificación:  Naïve Bayes  Maximum entropy  Support vector machine  Pre-procesamiento: negation tag, unigrama (single words), bigramas, POS tag, position.  SVM: la mejor precision, 83% (con unigramas)
  22. 22. Roadmap 22  Opinion mining – the abstraction  Document level sentiment classification  Sentence level sentiment analysis  Feature-based sentiment analysis and summarization  Summary
  23. 23. Sentiment Analysis a nivel de Frase23  Sentiment classification a nivel de documento es muy vago para la mayoría de las aplicaciones.  La mayoría del trabajo en clasificación de opiniones a nivel de frases se enfoca en identificar cuáles son las frases subjetivas en noticias.  Clasificación: objetiva / subjetiva.  Todas las técnicas usan formas de machine learning.
  24. 24. 24  Sentiment classification de críticas y frases es útil, pero ignora qué es lo que a la persona le gusta o disgusta (el objeto).  P.ej. “El auto es muy bueno, pero a mí no me gusta la trompa”.  Que una frase tenga sentimiento negativo/positivo no quiere decir que ese sentimiento se aplique a todos los objetos en la frase.  Necesitamos identificar los objetos como features.
  25. 25. Roadmap 25  Opinion mining – the abstraction  Document level sentiment classification  Sentence level sentiment analysis  Feature-based sentiment analysis and summarization  Summary
  26. 26. Feature-based opinion mining and summarization (Hu and Liu, KDD- 04)26  Enfocado en críticas a productos (es un dominio concreto)  Objetivo: Encontrar qué les gustó/disgustó a los opinion holders.  Qué = características de productos.  Como puede haber varias críticas diferentes de un mismo objeto, queremos producir un resumen de las opiniones.  Es deseable que sea un resumen con estructura  Que los resultados sean fácilmente comparable.
  27. 27. Tareas 27  Volviendo a las 3 etapas de la extracción...  Tarea 1: Extractar features de objetos que haya sido comentadas frecuentemente.  Tarea 2: Determinar si las opiniones sobre las features son positivas, negativas o neutras.  Tarea 3: Agrupa las features en sinónimos.
  28. 28. Diferentes formatos de críticas 28  Formato 1 - Pros, Cons y crítica detallada: El autor describe Pros y Cons separadamente y además escribe una crítica detallada (Epinions.com).  Formato 2 - Pros and Cons: El autor describe sólo Pros y Cons, separadamente. (C|net.com).  Formato 3 - Libre: El autor escribe libremente, sin separación de Pros y Cons. (Amazon.com).
  29. 29. 29
  30. 30. Resumen visual y comparación 30
  31. 31. Extracción de Features a partir de los Pros and Cons del Formato 131  Observación: Cada segmento de frase en los Pros o Cons contiene solo una feature. Los segmentos de una frase se pueden reconocer por estar separados por comas, puntos, dos puntos, guiones, ‘y’, ‘pero’, etc.  Pros en un Ejemplo se podría separar en 3 segmentos: great photos <photo> easy to use <use> very small <small>  <size>  Cons se podría separar en 2 segmentos: battery usage <battery> included memory is stingy <memory>
  32. 32. Extracción usando Label Sequential Rules32  Label sequential rules (LSR) es un tipo de patrón descubierto a partir de secuencias.  LSR Mining es supervisado. El conjunto de entrenamiento es una serie de secuencias p.ej.,  “Included memory is stingy”  que se convierte en una secuencia con POS tags.  {included, VB}{memory, NN}{is, VB}{stingy, JJ}  y luego en  {included, VB}{$feature, NN}{is, VB}{stingy, JJ}
  33. 33. Identificando la orientación de una opinión de una feature33  La unidad de trabajo es la frase, pero considerando que:  Una frase puede contener varias features.  Diferentes features pueden tener diferentes orientación de opiniones.  P.ej: The battery life and picture quality are great (+), but the view founder is small (-).  Casi todos los enfoques se basan en opinion words y frases de opinión. Pero no es tan fácil:  Algunas opinion words tienen orientación independientemente del contexto, p.ej. “fantástico”  La orientación de algunas otras opinion words depende del contexto, p. ej “pequeño”.
  34. 34. Detectando Frases de Opinión por Reglas34 M=modificador, NP=frase nominal, P=Predicado, O=objeto  La orientación se propaga de una palabra conocida a una desconocida mediante conjunciones, disjunciones, sinónimos y antónimos (vía WordNet), detección de familia de palabras (bueno, buenísimo). Regla Ejemplo si E (M,NP=f)  po=M expensive scanner si E (S=f,P,O)  po=O Lamp has problems si E (S,P,O=f)po=P I hate this scanner si E(S=f,P)  po=P Program crashed

×