Las bases del análisis del sentimiento en redes sociales

19
Análisis del «sentimiento» Marzo 2013

description

En está presentación cubrimos algunas de las ideas básicas de como hacen el análisis del sentimiento (sentir) de la gente en las redes sociales y sitios web las aplicaciones existentes

Transcript of Las bases del análisis del sentimiento en redes sociales

Page 1: Las bases del análisis del sentimiento en redes sociales

Análisis del «sentimiento»

Marzo 2013

Page 2: Las bases del análisis del sentimiento en redes sociales
Page 3: Las bases del análisis del sentimiento en redes sociales

¿Qué es?

Es el utilizar un software que automáticamente extrae opiniones, emociones y el sentir de la gente en un texto.

Nos permite rastrear actitudes y sentimiento en el web. Ya sea en blogs, comentarios, foros, twitter etc.

Se pueden rastrear productos, marcas o personas para determinar si son bien o mal vistos en la red.

Page 4: Las bases del análisis del sentimiento en redes sociales

Podemos analizar…

• Hechos

– «Esa pintura costó más que un Monet»

• Opiniones

– «El Monet no me gustó, Pollock es un mejor artista»

Page 5: Las bases del análisis del sentimiento en redes sociales

Varias áreas de la computación se mezclan

• Procesamiento de lenguaje natural– Transforma el texto en un formato que la máquina puede

comprender• Big Data– Se recaban una gran cantidad de datos (minería de datos,

minería de opiniones) para mejorar el desempeño de los algoritmos

• Inteligencia artificial– Utiliza la información que le da el PLN y muchas

matemáticas para determinar si algo es positivo o negativo

Page 6: Las bases del análisis del sentimiento en redes sociales

El problema tiene varias dimensiones

• ¿Cómo define el algoritmo la subjetividad y el sentir?

• ¿Cómo analizamos la polaridad (positivo/negativo)?

• ¿Cómo lidiamos con oraciones con palabras subjetivas?

• ¿Cómo asignamos un valor a una opinión?

• ¿Cómo podemos saber la intensidad de un sentimiento?

Page 7: Las bases del análisis del sentimiento en redes sociales
Page 8: Las bases del análisis del sentimiento en redes sociales

HE y ML• Human Engineering– Sistemas expertos con listas de palabras buenas y malas

hechas a mano• Machine Learning– NLP: Procesamiento natural del lenguaje y

entendimiento del habla, se utilizan modelos estadísticos y sets de entrenamiento

– Tipos:• Supervisado y directo• Sin supervisar y sin datos• Semisupervisado

Page 9: Las bases del análisis del sentimiento en redes sociales

¿Qué es una opinión para una máquina?

Es un «quintuple» o sea un objeto hecho de 5 cosas distintas

O -> el objeto en cuestiónf-> alguna característica del objetoso->el valor del sentir de la opinión de la persona h en cuanto a la característica f del objeto o al tiempo t

Estos 5 elementos los tiene que identificar el software(definido por Bing Liu en el NLP Handbook)

Page 10: Las bases del análisis del sentimiento en redes sociales

El lenguaje es demasiado ambiguo para la máquina

«El reloj no es resistente al agua» - Es negativo en una

reseña pero neutral en la descripción del producto

«tan útil como una trampa en un bote salvavidas» –Es

negativo pero no lo entiende la máquina

«lol estuvo increeeeeibleeeeee» - lenguaje común en

redes muy difícil de procesar

Page 11: Las bases del análisis del sentimiento en redes sociales

Obtenemos «Social Data»

Page 12: Las bases del análisis del sentimiento en redes sociales

El proceso inicial…Etiquetar parte del discurso pero también la posición y más:

Las palabras en un texto son etiquetadas usando un POStagger (Petra tagger en español) para asignarle una etiqueta a cada palabra, permitiendo así que el algoritmo las pueda procesar, esto se ve algo así:

Page 13: Las bases del análisis del sentimiento en redes sociales

Revisamos como están orientado el sentimiento (so) de los patrones que extrajimos:Increíble + TeléfonoLo cual es:[JJ] + [NN] (adjetivo seguido por un sustantivo)

Lo opuesto sería terrible, en este paso el algoritmo trata de situar en una escala emotiva por así decirlo

Page 14: Las bases del análisis del sentimiento en redes sociales

Los efectos de la negación

«la comida no estuvo buena»

Hay que seguir el negativo hasta el término de la oración o algún signo de puntuación para determinar el sentimiento

El efecto de la negación depende del términoPor ejemplo:

Doble negativo mediano -> no está mal = bienDoble negativo extremo -> no está horrible = regular

Page 15: Las bases del análisis del sentimiento en redes sociales

Parcialidad del aprendizaje• Si revisamos IMDB encontramos que la palabra «bad» se repite

mucho más veces en las críticas con 10 estrellas que en las de 2 estrellas

• Por lo tanto tenemos que normalizar usando las frecuencias relativas

Page 16: Las bases del análisis del sentimiento en redes sociales

Sentimiento en redes• Emoticons

– ;( :/– Con expresiones regulares podemos detectar el 95% de estos – Ignoramos los complejos

• Longitud– «La presentación estuvo geniaaaaaaaaaaaal! David es el mejoooooor!

Ahhhhhhhh!»– No hay palabras con 3 vocales seguidas – Fácil de normalizar por lo común que son

El ruidio lo podemos quitar con más datos, usamos la idea de Big Data y limpiamos los datos

Incluimos muchos modelos de entrenamiento

Page 17: Las bases del análisis del sentimiento en redes sociales

Clasificando los «sentimientos»

• Naive Bayes (usamos el teoréma de Bayes)• Entropía máxima (usa distribuciones de probabilidad

con base a conocimiento parcial)• Support Vector Machine (los datos los convertimos a

vectores en un espacio 2D)• Relevance Vector Machine ( similar a SVM pero asigna

probabilidades usando Sparse Bayesian Learning para ARD)

SVM y RVM tienen un 80% de mejor desempeño que los otros

Page 18: Las bases del análisis del sentimiento en redes sociales

Herremientas• Part-of-speech (POS) taggers

– Petra a POS tagger en español• Parsers

– Enju — A deep syntactic parser for English– CFG Parser — A fast CFG parser for English

• Named entitities/terms– Named-entity Recognizer — Part of the GENIA Tagger– ACELA — Tool for efficient annotation of named entitites– Smart dictionary lookup — machine learning-based gene/protein name lookup– Term Normalization Tool — Normalizes terms with string rewriting rules automatically generated based

on a dictionary.• Other tools

– EventMine — A machine learning-based event extraction system.– brat — A free, open-source, web-based tool for text annotation visualisation and editing.– Cafetiere — An easy-to-use text mining system for carrying text mining on your own document collection– Sentence and paragraph breaker — An accurate sentence and paragraph detector based on heuristic

rules– Clinical Document Classification — automatic document classification demo– Sentiment Analysis Tool — Analyses sentiment of input text.– Rapid Miner - Professional open source data mining made easy: Analytical ETL, Data Mining, and

Predictive Reporting with a single solution

Page 19: Las bases del análisis del sentimiento en redes sociales