machine learning - analisis - Análisis de sentimiento no supervisado
analisis de sentimientos (7)
David,
No estoy seguro de si esto ayuda, pero es posible que desee consultar la publicación de blog de Jacob Perkin sobre el uso de NLTK para el análisis de sentimientos.
He estado leyendo muchos artículos que explican la necesidad de un conjunto inicial de textos clasificados como "positivos" o "negativos" antes de que un sistema de análisis de sentimientos realmente funcione.
Mi pregunta es: ¿Alguien ha intentado simplemente hacer un control rudimentario de los adjetivos "positivos" contra los adjetivos "negativos", teniendo en cuenta los elementos negativos simples para evitar clasificar "no feliz" como positivo? Si es así, ¿hay algún artículo que discuta solo por qué esta estrategia no es realista?
El papel de Turney (2002) mencionado por larsmans es uno bueno básico. En una investigación más reciente, Li y He [2009] introducen un enfoque que usa la asignación de Dirichlet latente (LDA) para capacitar a un modelo que puede clasificar el sentimiento general y el tema de un artículo simultáneamente de manera totalmente no supervisada. La precisión que logran es 84.6%.
Intenté detectar palabras clave usando un diccionario de afectos para predecir la etiqueta de sentimiento a nivel de oración. Dada la generalidad del vocabulario (no dependiente del dominio), los resultados fueron solo del 61%. El documento está disponible en mi página de inicio.
En una versión algo mejorada, se consideraron los adverbios de negación. El sistema completo, llamado EmoLib, está disponible para demostración:
http://dtminredis.housing.salle.url.edu:8080/EmoLib/
Saludos,
Intenté varios métodos de Análisis de opinión para la minería de opiniones en Revisiones. Lo que funcionó mejor para mí es el método descrito en el libro de Liu: http://www.cs.uic.edu/~liub/WebMiningBook.html En este libro, Liu y otros, compararon muchas estrategias y discutieron diferentes trabajos sobre Análisis de Sentimientos y Opinión Minería.
Aunque mi objetivo principal era extraer características en las opiniones, implementé un clasificador de sentimientos para detectar la clasificación positiva y negativa de estas características.
Utilicé NLTK para el preprocesamiento (tokenización de Word, etiquetado POS) y la creación de trigramas. Luego también usé los clasificadores bayesianos dentro de este takeit para comparar con otras estrategias que Liu estaba señalando.
Uno de los métodos se basa en etiquetar como pos / neg cada trigrram que expresa esta información, y usar algún clasificador en estos datos. Otro método que probé, y funcionó mejor (alrededor del 85% de precisión en mi conjunto de datos), fue calcular la suma de puntajes de PMI (información mutua puntual) para cada palabra en la oración y las palabras excelente / pobre como semillas de clase pos / neg .
No hay "atajos" mágicos en el análisis de sentimientos, como ocurre con cualquier otro tipo de análisis de texto que busque descubrir la "identidad" subyacente de un fragmento de texto. Intentar acortar los métodos de análisis de texto probados a través de una comprobación simplista "adjetiva" o enfoques similares conduce a ambigüedades, clasificaciones incorrectas, etc., que al final del día le dan una baja precisión en la lectura del sentimiento. Cuanto más escueta es la fuente (por ejemplo, Twitter), más difícil es el problema.
No he intentado hacer análisis de sentimientos no entrenados como el que está describiendo, pero fuera de mi cabeza, diría que está simplificando demasiado el problema. Simplemente analizar los adjetivos no es suficiente para obtener una buena comprensión del sentimiento de un texto; por ejemplo, considere la palabra ''estúpido''. Solo, clasificaría eso como negativo, pero si una revisión de producto fuera a tener ''... [x] producto hace que sus competidores parezcan estúpidos por no pensar primero en esta característica ...'' entonces el sentimiento allí definitivamente sería positivo . El mayor contexto en el que aparecen las palabras definitivamente importa en algo como esto. Esta es la razón por la cual un enfoque de bolsa de palabras no entrenado solo (y mucho menos un conjunto de adjetivos aún más limitados) no es suficiente para abordar este problema de manera adecuada.
Los datos precategorizados (''datos de entrenamiento'') ayudan a que el problema pase de intentar determinar si un texto es de sentimiento positivo o negativo desde cero, a tratar de determinar si el texto es más similar a textos positivos o negativos, y clasificarlo de esa manera. El otro gran punto es que los análisis textuales, como el análisis de sentimientos, a menudo se ven afectados en gran medida por las diferencias de las características de los textos en función del dominio. Esta es la razón por la cual tener un buen conjunto de datos para entrenar (es decir, datos precisos dentro del dominio en el que está trabajando, y con suerte es representativo de los textos que va a tener que clasificar) es tan importante como construir un buen sistema para clasificar con.
No es exactamente un artículo, pero espero que ayude.
Un artículo clásico de Peter Turney (2002) explica un método para realizar análisis de sentimiento no supervisado (clasificación positiva / negativa) utilizando solo las palabras excelente y pobre como conjunto de semillas. Turney usa la información mutua de otras palabras con estos dos adjetivos para lograr una precisión del 74%.