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.

Las bases del análisis del sentimiento en redes sociales

3,462 views

Published on

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

Published in: Technology

Las bases del análisis del sentimiento en redes sociales

  1. 1. Análisis del «sentimiento» Marzo 2013
  2. 2. ¿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.
  3. 3. Podemos analizar… • Hechos – «Esa pintura costó más que un Monet» • Opiniones – «El Monet no me gustó, Pollock es un mejor artista»
  4. 4. 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
  5. 5. 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?
  6. 6. 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
  7. 7. ¿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ón f-> alguna característica del objeto so->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)
  8. 8. 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
  9. 9. Obtenemos «Social Data»
  10. 10. 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í:
  11. 11. Revisamos como están orientado el sentimiento (so) de los patrones que extrajimos: Increíble + Teléfono Lo 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
  12. 12. 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érmino Por ejemplo: Doble negativo mediano -> no está mal = bien Doble negativo extremo -> no está horrible = regular
  13. 13. 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
  14. 14. 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
  15. 15. 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
  16. 16. 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

×