# Análisis de sentimiento

Análisis de sentimiento (también conocido como minería de opinión) se refiere al uso de procesamiento de lenguaje natural, análisis de texto y lingüística computacional para identificar y extraer información subjetiva de los recursos. Desde el punto de vista de la minería de textos, el análisis de sentimientos es una tarea de clasificación masiva de documentos de manera automática, en función de la connotación positiva o negativa del lenguaje empleado en el documento. Es importante mencionar que estos tratamientos generalmente "se basan en relaciones estadísticas y de asociación, no en análisis lingüístico".
En términos generales, el análisis de sentimiento intenta determinar la actitud de un interlocutor o usuario con respecto a algún tema o la polaridad contextual general de un documento. La actitud puede ser su juicio o evaluación, estado afectivo (o sea, el estado emocional del autor al momento de escribir), o la intención comunicativa emocional (o sea, el efecto emocional que el autor intenta causar en el lector).

## Subtareas

Una tarea básica en análisis de sentimientos es clasificar la polaridad de un texto dado en un documento, una oración, o en un rasgo o característica — si la opinión expresada en un documento, una oración o un rasgo/característica de una entidad es positiva, negativa, o neutra. La clasificación del sentimiento más avanzada, "más allá de la polaridad" busca, por ejemplo, estados emocionales tales como "enfado", "tristeza", o "felicidad".
Los primeros trabajos en esta área incluyen Turney y Pang, los cuales aplicaron diferentes métodos para detectar la polaridad de críticas de productos y de películas respectivamente. Este trabajo es a nivel de documento. También es posible clasificar la polaridad de un documento en una escala de varios valores, lo cual fue intentado por Pang y Snyder (entre otros): expandiendo la tarea básica de clasificar una crítica de película como positiva o negativa a predecir evaluaciones en una escala de 3 o 4 estrellas, mientras que Snyder realizó un análisis en profundidad de críticas a restaurantes, prediciendo evaluaciones para varios aspectos del restaurante dado, tales como la comida y atmósfera (en una escala de 5 estrellas). A pesar de que en la mayoría de los métodos de clasificación estadísticos, la clase neutra es ignorada bajo la suposición de que los textos neutros se encuentran cerca de la frontera del clasificador binario, varios investigadores sugieren que, al igual que en todo problema de polaridad, tres categorías deben ser identificadas. Además, puede ser probado que algunos clasificadores específicos tales como el de Máxima Entropía y las SVMs se pueden beneficiar de la introducción de la clase neutra y mejorar la precisión global de la clasificación.
Un método diferente para determinar sentimiento es el uso de un sistema de escalado donde a las palabras comúnmente asociadas con un sentimiento negativo, neutro o positivo se les asigna un número asociado en una escala desde -10 a +10 (más negativo hasta más positivo) y cuando una pieza de texto no estructurado es analizada usando procesamiento de lenguaje natural, los subsecuentes conceptos son analizados para un entendimiento de estas palabras y de cómo se relacionan con el concepto. A cada concepto se le otorga entonces una puntuación basada en la forma en que las palabras asociadas con sentimientos se relacionan con el concepto, y su puntuación asociada. Esto nos permite movernos a un entendimiento más sofisticado de los sentimientos basado en una escala de 11 puntos. De forma alternativa, se le puede otorgar a los textos una puntuación por la intensidad de sentimientos positivos y negativos si el objetivo es determinar el sentimiento en un texto en lugar de la polaridad e intensidad general del texto.
Otra dirección de investigación es la identificación subjetivo/objetivo. Esta tarea se define comúnmente como clasificar un texto dado (usualmente una oración) en una de dos clases: objetivo o subjetivo. Este problema puede a veces ser más difícil que la clasificación de polaridad: la subjetividad de palabras y frases puede depender de su contexto y un documento objetivo puede contener oraciones subjetivas (por ejemplo, un artículo de prensa citando opiniones de personas). Además, como menciona Su, los resultados dependen en gran medida de la definición de subjetividad usada al analizar textos. Sin embargo, Pang mostró que eliminar las oraciones objetivas de un documento antes de clasificar su polaridad ayudó a mejorar su rendimiento.
Un modelo de análisis más detallista es el llamado análisis de sentimiento basado en rasgos/características. Se refiere a determinar las opiniones o sentimientos expresados sobre diferentes rasgos o características de entidades, por ejemplo, de un teléfono celular, una cámara digital, o un banco. Un rasgo o característica es un atributo o componente de una entidad, por ejemplo, la pantalla de un teléfono celular, o la calidad de las fotografías de una cámara. Este problema involucra varios sub-problemas, por ejemplo, identificar entidades relevantes, extraer sus rasgos/características, y determinar si una opinión expresada sobre cada rasgo/característica es positiva, negativa o neutra. Es posible encontrar discusiones más detalladas sobre este nivel de análisis de sentimiento en el capítulo "Sentiment Analysis and Subjectivity" del libro "Handbook of Natural Language Processing" de Liu.

## Métodos y características

Los enfoques existentes en análisis de sentimiento se pueden agrupar en cuatro categorías principales: localización de palabras clave, afinidad léxica, métodos estadísticos, y técnicas a nivel de concepto. La localización de palabras clave clasifica el texto en categorías de afecto basado en la presencia de palabras de afecto no ambiguas como feliz, triste, asustado, y aburrido. Afinidad léxica no solo detecta palabras de afecto obvias, también asigna a palabras arbitrarias una probable “afinidad” a emociones particulares. Los métodos estadísticos sacan ventaja de elementos de aprendizaje de máquina tales como análisis de semántica latente, máquinas de vectores de soporte, "bolsa de palabras" y Orientación Semántica — Información Mutua Puntual (ver el trabajo de Peter Turney en esta área). Métodos más sofisticados tratan de detectar el poseedor de un sentimiento (o sea la persona que mantiene ese estado afectivo) y el objetivo (o sea la entidad sobre la cual se siente el afecto). Para minar la opinión en contexto y obtener la característica sobre la cual se opinó, son usadas las relaciones gramaticales de las palabras. Las relaciones de dependencia gramatical son obtenidas mediante un análisis gramatical profundo del texto. A diferencia de las técnicas puramente sintácticas, los enfoques a nivel de concepto sacan ventaja de elementos de representación del conocimiento tales como ontologías y redes semánticas y, por lo tanto, son también capaces de detectar semánticas que son expresadas de manera sutil, por ejemplo, mediante el análisis de conceptos que no transmiten explícitamente información relevante, pero que están implícitamente ligados a otros conceptos que sí.
Existen herramientas de software de código abierto que despliegan técnicas de aprendizaje de máquina, estadísticas, y de procesamiento de lenguaje natural para automatizar el análisis de sentimiento en grandes colecciones de textos, que incluyen páginas web, noticias en línea, grupos de discusión en Internet, críticas en línea, web blogs, y medios sociales. Los sistemas basados en conocimiento, en su lugar, hacen uso de recursos de acceso público, por ejemplo, WordNet-Affect, SentiWordNet, AIN Thesurus and SenticNet, para extraer la información semántica y afectiva asociada con conceptos del lenguaje natural. El Análisis de Sentimiento también puede ser realizado sobre contenido visual o sea imágenes y videos. Uno de los primeros enfoques en esta dirección es SentiBank utilizando una pareja de sustantivo y adjetivo para la representación de contenido visual.
Un componente de análisis humano es necesario en análisis de sentimiento, debido a que los sistemas automatizados no son capaces de analizar tendencias históricas del comentador individual, o la plataforma y a menudo los sentimientos expresados son clasificados de forma incorrecta. La automatización logra aproximadamente un 23% de los comentarios que son clasificados correctamente por humanos.
En ocasiones, la estructura de sentimientos y temas es bastante compleja. Adicionalmente, el problema de análisis de sentimiento es no monotónico con respecto a la extensión de la oración y sustitución de stop-word (compare la oración en inglés THEY would not let my dog stay in this hotel contra I would not let my dog stay in this hotel). Para enfrentar esta cuestión se han aplicado al análisis de sentimiento varios enfoques basados en reglas y basados en razonamiento, incluyendo Programación Lógica Refutable. Adicionalmente, existen varias reglas de recorrido de árboles aplicadas a árboles de análisis sintáctico para extraer la realidad de los sentimientos en condiciones de dominio abierto.

## Evaluación

La precisión de un sistema de análisis de sentimiento es, en principio, cuánto coincide con juicios humanos. Esto es usualmente medido mediante precisión y recobrado. Sin embargo, de acuerdo a investigaciones evaluadores humanos normalmente están de acuerdo en un 79% de las veces. De este modo, un programa acertado un 70% de las veces se comporta casi tan bien como los humanos, a pesar de que tal precisión pueda no sonar impresionante. Si un programa estuviera "bien" el 100% de las veces, los humanos aún estarían en desacuerdo con él alrededor de un 20% de las veces, puesto que están en desacuerdo lo mismo con cualquier respuesta. Es posible aplicar mediciones más sofisticadas, pero la evaluación de sistemas de análisis de sentimientos sigue siendo un asunto complejo. Para las tareas de análisis de sentimiento que devuelven una escala en lugar de juicios binarios, la correlación es una mejor medida que la precisión porque tiene en cuenta cuán cercano es el valor predicho del valor esperado.

## Análisis de sentimiento y la Web 2.0

El ascenso de los medios sociales tales como blogs y redes sociales ha alimentado el interés en el análisis de sentimientos. Con la proliferación de críticas, calificaciones, recomendaciones y otras formas de expresión en línea, la opinión en línea se ha convertido en una especie de divisa virtual para negocios que buscan comercializar sus productos, identificar nuevas oportunidades y manejar sus reputaciones. Debido a que los negocios intentan automatizar el proceso de filtrar el ruido, entender las conversaciones, identificar el contenido relevante y actuar apropiadamente, muchos están ahora mirando hacia el campo de análisis de sentimientos. Para complicar más el asunto, está el ascenso de plataformas de medios sociales anónimas tales como 4chan y Reddit. Si la web 2.0 consistía en democratizar la publicación, entonces la nueva etapa de la web pudiera estar basada en democratizar la minería de datos de todo el contenido que está siendo publicado.
Un paso hacia este objetivo se logra mediante la investigación. Varios equipos de investigación en universidades alrededor del mundo se centran actualmente en entender la dinámica de los sentimientos en las comunidades virtuales a través del análisis de sentimiento. El proyecto CyberEmotions, por ejemplo, identificó recientemente el papel de emociones negativas en la conducción de discusiones en las redes sociales.
El problema es que la mayoría de los algoritmos de análisis de sentimiento usan términos simples para expresar sentimientos acerca de un producto o servicio. Sin embargo, factores culturales, matices lingüísticos y diferentes contextos hacen extremadamente difícil convertir una cadena de texto escrito en un simple sentimiento a favor o en contra. El hecho de que los humanos a menudo no están de acuerdo en el sentimiento de un texto ilustra cuán difícil tarea es que las computadoras lo logren bien. Mientras más corta la cadena de texto, más difícil se vuelve.
A pesar de que las cadenas de texto cortas pueden ser un problema, el análisis de sentimientos aplicado al microblogging ha mostrado que Twitter puede ser visto como un indicador en línea válido de sentimiento político. Los sentimientos políticos de los tuits demuestran una correspondencia cercana con las posiciones políticas de los partidos y personas políticas, indicando que el contenido de los mensajes de Twitter refleja plausiblemente el paisaje político en línea. Werfamous.com es una herramienta gratuita que analiza el análisis de opiniones a través de Internet y Twitter.

## Herramientas de análisis del sentimiento
### G-POMS (Google-POMS)

    6 dimensiones(Calma, Alerta, Seguro, Vital, Bueno y Feliz)

### Google N-gram

    Modelo N-gram

### Lingmotif

    Aplicación de escritorio multiplataforma para usuario final que analiza el sentimiento de un texto de entrada. Devuelve la orientación semántica de textos (ya sea positivo o negativo, y sus niveles). Funciona en inglés y en español.

### LIWC

    (Linguistic Processes, Psychological Processes, Personal Concerns, Spoken categories) 68 categorías de palabras de diferentes tipos que corersponden a constructos significativos psicológicos o lingüísticos, además de una lista de palabras que pertenecen a cada categoría)

### POMS

    Mood analysis (Tensión-Ansiedad, Depresión-Abatimiento, Ira-Hostilidad, Vigor-Actividad, Fatiga-Inercia)

### Opinion Finder

    Estado positivo vs. negativo a partir de contenidos de texto