Aplicaciones de la tecnología de inteligencia artificial: descripción general del análisis de sentimientos
Con el desarrollo de las redes sociales y las plataformas de comercio electrónico como Twitter, se ha generado una gran cantidad de opiniones, lo que proporciona la base de datos necesaria para el análisis de sentimientos. Hoy en día, el reconocimiento de emociones se ha utilizado ampliamente en muchos campos. Por ejemplo, en el campo del comercio minorista de productos básicos, las opiniones de los usuarios son información de retroalimentación muy importante para los minoristas y fabricantes. A través del análisis de sentimiento de reseñas masivas de usuarios, podemos cuantificar los elogios y críticas de los usuarios hacia los productos y los productos de la competencia, entendiendo así las demandas de productos de los usuarios y la comparación entre nuestros propios productos y los productos de la competencia. En el campo de la opinión pública, al analizar los comentarios públicos sobre eventos sociales candentes, podemos captar efectivamente la tendencia de la opinión pública. En términos de opinión pública corporativa, el uso del análisis de sentimiento puede comprender rápidamente la evaluación social de la empresa, proporcionar una base para la toma de decisiones para la planificación estratégica de la empresa y mejorar la competitividad de la empresa en el mercado. En el campo del comercio financiero, analiza las actitudes de los comerciantes hacia los derivados financieros, como las acciones, para proporcionar una base auxiliar para las transacciones de mercado.
En la actualidad, la mayoría de las plataformas abiertas de inteligencia artificial tienen capacidades de análisis de sentimientos. Como se muestra en la figura, es una demostración de la función de análisis de sentimiento de la plataforma abierta semántica china Berson. Se puede ver que además del análisis de sentimiento en campos generales, también hay análisis en campos específicos como automóviles, utensilios de cocina, catering, noticias y Weibo.
Entonces, ¿qué es exactamente el análisis de sentimiento? Desde la perspectiva de la tecnología de procesamiento del lenguaje natural, la tarea del análisis de sentimientos es extraer las entidades de la reseña del texto de la reseña, así como la tendencia emocional expresada por el revisor hacia la entidad. En el análisis de sentimientos se utilizarán todas las cuestiones técnicas básicas del lenguaje natural, como la semántica léxica, la resolución de referencias, el servicio tacaño, la extracción de información, el análisis semántico, etc. Por lo tanto, el análisis de sentimientos se considera una subtarea del procesamiento del lenguaje natural. Podemos unificar las emociones humanas en una entidad objetivo en un formato de cinco tuplas: (e, a, s, h, t).
Tomemos fotografías como ejemplo. e se refiere al restaurante, A se refiere a sus atributos de rentabilidad, S se refiere a su evaluación de rentabilidad, H se refiere al propio crítico y T es 65438 27 de julio de 2009. Por lo tanto, el análisis de sentimiento de esta reseña se puede expresar como una tupla de cinco (un determinado restaurante, rentabilidad, reseñas positivas, crítico, 65438, 27 de julio de 2009).
El análisis de sentimientos se puede dividir aproximadamente en tres niveles de tareas según la granularidad del procesamiento de texto, a saber, nivel de capítulo, nivel de oración y nivel de atributo. Veámoslos por separado.
1. Análisis de sentimientos a nivel de discurso
El objetivo del análisis de sentimientos a nivel de texto es determinar si todo el documento expresa emociones positivas o negativas, como una reseña de un libro o una reseña. de un determinado documento. Comentarios sobre noticias de actualidad. Siempre que el texto a analizar exceda el alcance de una oración, se puede considerar un análisis de sentimientos a nivel de texto.
El análisis de sentimiento a nivel de texto tiene una premisa, es decir, las opiniones expresadas en todo el texto son solo para una única entidad E y solo contienen las opiniones de un titular de opinión h. Este enfoque trata la totalidad. El documento en su conjunto no estudia las entidades específicas ni los atributos de entidad contenidos en el texto, lo que hace que el análisis de sentimientos a nivel de texto sea relativamente limitado en aplicaciones prácticas. No puede analizar por separado múltiples entidades en un texto, ni puede distinguir múltiples opiniones. en el texto.
Por ejemplo, el texto de la reseña es: "Creo que este teléfono es genial". El crítico expresa una evaluación positiva del teléfono en su conjunto, pero si es algo así como "Creo que la cámara". El funcionamiento de este teléfono es muy bueno. Una frase como "Pero la señal no es muy buena" tiene palabras positivas y palabras negativas en la misma evaluación, que no se pueden distinguir mediante el análisis a nivel de texto y solo se pueden analizar en su conjunto.
Afortunadamente, existen muchos escenarios en los que no es necesario distinguir entre la entidad que evalúa la opinión y el titular de la opinión. Por ejemplo, en el análisis de sentimientos de reseñas de productos, se puede suponer que el objeto de la reseña es el producto que se revisa, y el titular de la opinión de la reseña es también el propio revisor. Por supuesto, esto también depende del producto que se esté revisando.
Si se trata de un servicio de viajes, como viajes familiares, es probable que la reseña contenga más de un opinador.
En el trabajo real, el análisis de sentimientos a nivel de texto no puede satisfacer nuestra evaluación más detallada. Si se requiere un análisis más preciso y detallado de los comentarios, es necesario dividir cada oración del capítulo. Este es el problema del análisis de sentimientos a nivel de oración.
2. Análisis de sentimiento a nivel de oración
Al igual que el análisis de sentimiento a nivel de texto, la tarea del análisis de sentimiento a nivel de oración es determinar si una oración expresa un sentimiento positivo o negativo. Aunque la granularidad ha alcanzado el nivel de oración, el análisis a nivel de oración y el análisis a nivel de texto tienen la misma premisa, es decir, una oración solo expresa una opinión y una emoción, y solo hay un titular de opinión. Si una oración contiene más de dos evaluaciones o las opiniones de múltiples partidarios, el análisis a nivel de oración es indistinguible. Afortunadamente, en la vida real, la mayoría de las frases expresan sólo una emoción.
Dado que las limitaciones del análisis de sentimiento a nivel de oración son las mismas que las del nivel de texto, ¿cuál es la importancia del análisis de sentimiento a nivel de oración? Sobre este tema, necesitamos explicar la diferencia entre oraciones subjetivas y oraciones objetivas en lingüística. En nuestro lenguaje cotidiano, las oraciones se pueden dividir en oraciones subjetivas y oraciones objetivas según contengan los sentimientos subjetivos del hablante. Por ejemplo: "Me gusta este nuevo teléfono móvil". Es una oración subjetiva que expresa los sentimientos u opiniones internas del hablante. Además: "Esta aplicación se actualizó ayer con nuevas funciones". Es una oración objetiva que establece información fáctica objetiva y no incluye los sentimientos subjetivos del hablante. Distinguir si una oración es subjetiva puede ayudarnos a filtrar algunas oraciones sin emociones y hacer que el procesamiento de datos sea más eficiente.
Pero en la práctica, encontraremos que dicho método de clasificación no parece ser particularmente preciso, porque una oración subjetiva puede no expresar ninguna información emocional y el conocimiento expresa expectativas o conjeturas, como por ejemplo: " Creo que ya está de camino a casa." Esta frase es subjetiva y expresa la conjetura del hablante, pero no ninguna emoción. Las oraciones objetivas también pueden contener información emocional, lo que indica que el hablante no quiere que esto suceda. Por ejemplo, "El auto nuevo que compré ayer estaba rayado". Esta oración es objetiva, pero combinada con el sentido común, lo haremos. Descubra que esta oración Las palabras en realidad contienen los sentimientos negativos del hablante.
Por tanto, no basta con filtrar los datos simplemente mediante la clasificación subjetiva y objetiva de las frases. Lo que necesitamos es clasificar si una oración contiene información emocional. Si una oración expresa o implica directamente información emocional, se considera que contiene puntos de vista emocionales y las oraciones sin puntos de vista emocionales se pueden filtrar. Actualmente, la mayoría de las tecnologías de clasificación para determinar si las oraciones contienen información emocional utilizan algoritmos de aprendizaje supervisado, que requieren una gran cantidad de datos anotados manualmente para clasificar oraciones según las características de la oración.
En resumen, podemos dividir el análisis de sentimiento a nivel de oración en dos pasos. El primer paso es determinar si las oraciones a analizar contienen información de opinión. El segundo paso es analizar estas oraciones que contienen información de opinión para descubrir la tendencia emocional y determinar si es positiva o negativa. El método de análisis de tendencias emocionales es similar al nivel del texto y aún se puede procesar mediante aprendizaje supervisado o basándose en el diccionario de palabras emocionales, que explicaremos en detalle en los siguientes capítulos.
En comparación con el nivel de texto, el análisis de sentimiento a nivel de oración es más detallado, pero solo puede juzgar el sentimiento general e ignora los atributos de la entidad evaluada. Al mismo tiempo, no podemos juzgar opiniones emocionales comparativas, como: "La experiencia del usuario del producto A es mucho mejor que la del producto B". Para una oración que expresa múltiples emociones, no podemos simplemente clasificarla como una emoción positiva o una emoción positiva. emoción negativa, en cambio, es necesario refinar aún más la granularidad, extraer los atributos de las entidades de evaluación y asociar los atributos con entidades relacionadas. Este es un análisis de sentimiento a nivel de atributo.
3. Análisis de sentimiento a nivel de atributo
El análisis de sentimiento a nivel de texto y de oración presentado anteriormente no puede conocer con precisión lo que le gusta y lo que no le gusta al evaluador, y tampoco puede conocer con precisión lo que le gusta y lo que no le gusta al evaluador. distinguir los atributos A de la entidad evaluada tienden a ser positivos y los atributos B tienden a ser negativos. Pero en la expresión del lenguaje real, una frase puede contener muchas opiniones con diferentes tendencias emocionales, por ejemplo: "Me gusta el estilo de decoración de este restaurante, pero el sabor de la comida es normal.
"De manera similar a esta oración, es difícil comprender el nivel de atributo de un objeto a través del análisis de sentimientos a nivel de texto y de oración.
Para ser más detallados según el análisis a nivel de oración, necesitamos para encontrar o extraer del texto La información del tema del objeto de evaluación se utiliza para determinar si el evaluador expresa emociones positivas o negativas para cada atributo según el contexto del texto. Este es el llamado análisis de sentimiento a nivel de atributo. El análisis de sentimiento a nivel se centra en la entidad evaluada y sus atributos, incluido el autor de las evaluaciones y el tiempo de evaluación. El objetivo es extraer y descubrir la información de opinión de los comentarios sobre la entidad y sus atributos, generando así un resumen completo de cinco opiniones sobre la misma. la entidad de destino y sus atributos Específicamente a nivel técnico, el análisis de sentimiento a nivel de atributo se puede dividir en tres categorías. Los siguientes seis pasos son:
Los problemas de extracción de entidades y análisis de referencias en este artículo. Se han introducido en los capítulos relevantes del gráfico de conocimiento y no se repetirán aquí para los tres tipos de emociones: nivel de texto, nivel de oración y nivel de atributo. Para las tareas de análisis, la gente ha investigado mucho y ha propuesto muchos métodos de clasificación. Estos métodos se pueden dividir a grandes rasgos en dos tipos: aprendizaje basado en diccionarios y aprendizaje basado en máquinas.
Las palabras son las unidades más básicas que contienen información emocional, además de algunas frases. Los modismos con significado emocional también se denominan colectivamente palabras emocionales. Los métodos de análisis de sentimientos basados en diccionarios emocionales se basan principalmente en un diccionario que contiene palabras y frases emocionales etiquetadas, que incluyen las tendencias emocionales y la intensidad emocional de las palabras emocionales. como números positivos y las emociones negativas se marcan como números negativos.
Los pasos específicos son los siguientes: Primero, segmente el texto que se va a analizar y el resultado final se preprocesa para eliminar datos del texto, como palabras vacías. palabras inútiles Luego, los resultados de la segmentación de palabras se comparan con las palabras en el diccionario emocional y el texto se agrega de acuerdo con la puntuación emocional marcada en el diccionario. Si el resultado del cálculo final es una regla, es una emoción positiva. Negativo, es una emoción negativa, si es 0 o la tendencia emocional no está clara, es una emoción neutra o ninguna emoción.
El diccionario emocional es el núcleo de todo el proceso de análisis y la palabra emocional. La calidad de los datos determina directamente los resultados de la clasificación de emociones. En este sentido, se pueden utilizar directamente los diccionarios de emociones de código abierto existentes, como el diccionario de emociones de BosonNLP creado en base a fuentes de datos como Weibo, noticias y foros, y el Diccionario de emociones CNKI. y el Diccionario de polaridad de sentimiento chino simplificado de la Universidad de la provincia de Taiwán (NTSUSD), el diccionario marco snownlp, etc., y también puede utilizar el Diccionario extendido de sinónimos Cilin compilado por el Instituto de Tecnología de Harbin.
Por supuesto, nosotros. También podemos entrenar nuestras propias emociones según las necesidades del negocio. Actualmente, existen tres métodos principales para construir diccionarios de palabras emocionales: métodos manuales, métodos basados en diccionarios y métodos basados en corpus, que son los más simples. El método consiste en asignar todas las palabras emocionales positivas a 1 y las palabras emocionales negativas a 1. A la palabra se le asigna un valor de -1 y finalmente se obtiene el resultado del análisis de sentimientos.
Pero obviamente este método de asignación. No satisface las necesidades reales. En la expresión del lenguaje real, hay muchas expresiones que pueden cambiar la intensidad de la emoción. Los típicos son los adverbios de grado. Hay dos tipos de adverbios de grado. Un tipo de palabras que pueden fortalecer la emoción original de las palabras emocionales se denominan palabras que intensifican las emociones. Por ejemplo, "muy bueno" tendrá un nivel emocional más fuerte que "muy bueno", y "muy bueno" tendrá un nivel emocional más fuerte que "muy bueno". La otra es una palabra emocionalmente atenuada. Por ejemplo, aunque "no tan bien" también es una tendencia positiva, la intensidad emocional es mucho más débil que la de "bien". Si hay palabras intensificadoras, es necesario aumentar los puntos emocionales sobre la base de la asignación original. Si hay palabras debilitantes, es necesario reducir los puntos emocionales correspondientes.
Otra situación a tener en cuenta son las palabras negativas. La aparición de palabras negativas generalmente cambiará la tendencia emocional original de la palabra emocional y la convertirá en la emoción opuesta. Por ejemplo, "malo" se forma agregando la palabra negativa "no" antes de "bueno" para convertirlo en un término despectivo. En estudios anteriores, las palabras emocionales con palabras negativas se invertían directamente, es decir, si la tendencia emocional de "bueno" era 1, entonces la tendencia emocional de "malo" era -1. Sin embargo, esta simple y cruda regla no puede corresponder a la verdadera expresión de la emoción. Por ejemplo, "muy bueno" es una palabra con una tendencia positiva más fuerte que "bueno". Si el valor de "bueno" es 1, entonces "demasiado bueno" se puede asignar a 3. Agregar la palabra negativa "no tan bueno" a -3 es obviamente demasiado despectivo.
Basándonos en esta situación, también podemos agregar un grado de asignación a la palabra negativa en lugar de simplemente tomar la negación. Para palabras que expresan una fuerte negativa, como "no es tan malo", asigne un valor de más o menos 4. Cuando se combina con una palabra positiva, la palabra positiva toma un número negativo, y cuando se combina con una palabra despectiva, toma un número positivo. Por ejemplo, a la palabra despectiva "feo" se le asigna un valor de -3, y la puntuación emocional cuando la palabra negativa se cambia a "no tan feo" será (-3)
La tercera situación que necesita atención es la palabra condicional. Si aparece una palabra condicional en una oración, probablemente no sea adecuada para el análisis de sentimientos, como "Si puedo ir de viaje mañana, seré muy feliz". Obviamente hay palabras emocionales de elogio en esta oración, pero porque. del condicional Con la palabra "si", esta oración no expresa los verdaderos sentimientos del titular de la opinión, sino que es una suposición.
Además de las oraciones condicionales, hay otro tipo de expresión lingüística que debe excluirse en la etapa de preprocesamiento de datos: las oraciones interrogativas. Por ejemplo, "¿Este restaurante es realmente tan bueno como dijiste?" Aunque hay una palabra muy emotiva "genial" en la oración, aún así no se puede clasificar como una oración elogiosa. Las preguntas suelen tener una palabra final fija, como "...?" o "...?" Sin embargo, algunas preguntas omitirán la palabra final y utilizarán el signo de puntuación "?". Por ejemplo, la frase "¿Estás infeliz hoy?" contiene la palabra "infeliz" compuesta de palabras negativas y afirmativas, pero no puede clasificarse como despectiva.
La última situación que necesita atención es la transición. La palabra típica es "pero". La tendencia emocional antes de la transición suele ser opuesta a la posterior, como por ejemplo "Me quedé muy bien en este hotel". la última vez. Esta vez pero muy decepcionado". En esta oración de transición, la palabra "muy bien" antes de la palabra de transición tiene un fuerte significado positivo, mientras que la expresión emocional real después de la palabra de transición es "muy decepcionado", que debe clasificarse. como una emoción despectiva. Por supuesto, también hay casos en los que aparecen palabras de transición, pero la emoción de la oración en sí no cambia. Por ejemplo, "Has logrado un gran progreso en este examen en comparación con la última vez, pero creo que puedes hacerlo mejor". La palabra "girar" aquí no significa girar, sino progresar. En la operación real, necesitamos determinar cuál es la verdadera expresión emocional de la oración cambiante para poder realizar análisis y cálculos correctos.
Construir un diccionario de sentimientos es una tarea que requiere mucha mano de obra. Además de los problemas anteriores, también existen problemas como baja precisión y dificultad para incorporar rápidamente nuevas palabras y términos de Internet al diccionario. Al mismo tiempo, los métodos de análisis basados en diccionarios también tienen muchas limitaciones. Por ejemplo, una oración puede tener palabras emocionales, pero no expresa emoción. O una oración no contiene palabras emocionales pero contiene los sentimientos del hablante. Y el significado de algunas palabras emotivas cambiará con el cambio de contexto. Por ejemplo, la palabra "inteligente" se puede utilizar como palabra elogiosa o despectiva para criticar a los demás.
Aunque actualmente existen muchos problemas, los métodos de análisis de sentimientos basados en diccionarios también tienen una ventaja insustituible, es decir, este método de análisis es universal. En la mayoría de los casos, las emociones expresadas en el texto se pueden analizar sin anotaciones especiales de datos de dominio y pueden usarse como la primera opción para el análisis de sentimientos de dominio general.
En el capítulo sobre algoritmos de aprendizaje automático, introdujimos muchos algoritmos de clasificación, como regresión logística, Naive Bayes, KNN, etc. Todos estos algoritmos se pueden utilizar para el reconocimiento de emociones. Al igual que el aprendizaje automático, el método específico requiere dos pasos. El primer paso es establecer un modelo de algoritmo basado en los datos de entrenamiento. El segundo paso es ingresar los datos de prueba en el modelo de algoritmo y generar los resultados correspondientes, y luego hacer una explicación específica.
Primero, debemos preparar algunos datos de texto para el entrenamiento y anotar manualmente los datos según la clasificación de sentimiento. Generalmente, si hay dos categorías de significado positivo y significado negativo, el significado positivo se marca como 1 y el significado negativo se marca como 0; si hay tres categorías de significado positivo, significado negativo y significado neutral, se marca el significado positivo; como 1 y el significado neutro está marcado como 0. 0, el significado negativo está marcado -65433.
En este paso, si el etiquetado se realiza manualmente, puede verse afectado por factores subjetivos personales. Para evitar la influencia de factores humanos y mejorar la eficiencia del etiquetado, también existen algunos métodos ingeniosos para etiquetar datos automáticamente. Por ejemplo, en el ámbito del comercio electrónico, además de los datos de texto, las reseñas de productos suelen tener una valoración de 5 estrellas.
Podemos utilizar la evaluación de 5 estrellas del usuario como base para la puntuación. Si es de 1 a 2 estrellas, se marcará como despectiva. Si es de 3 estrellas, se marcará como neutral. , se marcará como positivo. Por ejemplo, en el campo de la comunidad, muchas comunidades tienen funciones para dar me gusta y no me gusta a las publicaciones. Estos datos también se pueden utilizar como referencia para anotaciones emocionales.
El segundo paso es segmentar el texto marcado con tendencias emocionales y preprocesar los datos. Ha habido muchas introducciones a los participios antes, por lo que no entraré en detalles aquí. El tercer paso es anotar palabras con características emocionales a partir de los resultados de la segmentación de palabras. Especialmente para clasificar emociones, puede consultar el diccionario de emociones para realizar anotaciones, o puede utilizar el algoritmo TF-IDF para extraer automáticamente las palabras características del documento para realizar anotaciones. Si el análisis se realiza en un campo específico, es necesario anotar las palabras del campo específico, como nombres de productos, nombres de categorías, nombres de atributos, etc. El cuarto paso es construir un modelo de bolsa de palabras basado en la frecuencia estadística de palabras de segmentos de palabras para formar una matriz de palabras características, como se muestra en la tabla. En este paso, a cada palabra característica se le puede asignar un peso de acuerdo con las necesidades comerciales, y la puntuación de la palabra característica se puede obtener multiplicando la frecuencia de las palabras por el peso. El último paso es utilizar la matriz de palabras características como datos de entrada para obtener el modelo de clasificación final basado en el algoritmo de clasificación.
Después de entrenar el modelo de clasificación, se puede clasificar el conjunto de pruebas. El proceso específico es similar al proceso de modelado. Primero, los datos del texto de prueba se segmentan y preprocesan, y luego se extraen las palabras características del texto de prueba de acuerdo con la matriz de palabras características y se construye una matriz de bolsa de palabras. Se sustituyen en el modelo previamente entrenado como datos de entrada para la clasificación y se obtienen los resultados de la clasificación.
El análisis de sentimiento basado en aprendizaje automático tiene varias desventajas. Primero, las diferencias en las descripciones del lenguaje en varios campos de aplicación significan que el modelo de clasificación entrenado no se puede aplicar a otros campos y debe construirse por separado. La segunda es que el efecto de clasificación final depende de la selección del texto de entrenamiento y la anotación emocional correcta, y la comprensión de las emociones por parte de las personas es subjetiva. Si la anotación está sesgada, tendrá un impacto en el resultado final.
Además de los métodos basados en diccionarios y en el aprendizaje automático, algunos académicos también combinan los dos para compensar las deficiencias de los dos métodos. El efecto de clasificación es mejor que usar un solo método. Además, algunos académicos intentan utilizar métodos de aprendizaje profundo como LSTM para analizar las emociones. Creo que en el futuro, el análisis de sentimientos se aplicará a más productos, lo que nos ayudará a comprender mejor las necesidades de los usuarios y mejorar su experiencia en el uso de productos inteligentes.
Con la aplicación de algoritmos como las redes neuronales profundas, la dirección de investigación del análisis de sentimientos ha logrado grandes avances, pero todavía quedan algunos problemas sin resolver. Se debe prestar especial atención a los siguientes tipos de datos en la práctica. operaciones:
La rueda emocional se usa ampliamente en el diseño de experiencias de usuario y muchos diseños emocionales se basan en la rueda emocional. Sin embargo, en el campo de la inteligencia artificial, la clasificación múltiple de emociones es mucho más difícil que la tarea de tres clasificaciones del análisis de sentimientos, y la precisión de la mayoría de los métodos de clasificación es inferior al 50%. Esto se debe a que la emoción en sí misma contiene demasiadas categorías y diferentes categorías pueden tener similitudes. Una palabra emocional puede expresar diferentes categorías emocionales en diferentes contextos, lo que dificulta que los algoritmos las clasifiquen. Incluso si el texto se etiqueta manualmente con categorías emocionales, los resultados suelen ser deficientes porque las emociones son muy subjetivas y diferentes personas pueden tener diferentes interpretaciones de diferentes textos, lo que hace que el proceso de etiquetar manualmente las analogías emocionales sea extremadamente difícil. Cómo hacer que las máquinas comprendan las emociones reales sigue siendo un problema sin resolver.