Analisis de sentimientos con NLP Azure

[!IMPORTANT] Actividad grupal: Aplicación de una tarea de PLN

Objetivos

Con esta actividad, alcanzaréis un conocimiento suficiente de las aplicaciones genéricas de PLN y de las técnicas que se utilizan para implementarlas. A través de esta actividad reflexionaréis sobre cómo el PLN puede aplicarse en vuestras áreas de estudio/trabajo.

Mediante esta actividad analizaréis aquellas aplicaciones de PLN que os pueden ser más útiles en vuestro área de conocimiento y cuáles son las dificultades que tendréis que afrontar al aplicar la tarea.

Descripción de la actividad

Esta tarea se realizará en grupos. Cada grupo estará formado por 3 estudiantes. Justificadamente el tutor podrá aceptar equipos de 2 o 4 estudiantes. Los grupos se formarán a propuesta de los estudiantes. En caso de no poderse formar completamente, el tutor completará los grupos o formará grupos nuevos.

Los componentes de los grupos deberán pensar en una tarea de PLN que puedan aplicar a su área de estudios/trabajo. Deberán presentar lo siguiente:

  • Parte 1

Explicación detallada de la tarea elegida. Motivo por el cual esa tarea es aplicable a su campo de estudios/trabajo. Justificar la decisión.

  • Parte 2

Proporcionar un ejemplo concreto en el que aplicarán la tarea. Incluir detalles, recursos, herramientas, etc. Pasos que piensan realizar para aplicar la tarea. Describir cada paso y justificarlo.

  • Parte 3

Reflexionar sobre los posibles problemas y dificultades que puedan encontrar al aplicar la tarea y cómo piensan solventarlos. Describir los beneficios de la aplicación de esa tarea a su campo de estudios/trabajo.

Proyecto para realizar un análisis de la semántica del odio en twitter de los políticos más representativos el marco de protestas sociales

Introducción

Hemos elegido este tema, ya que es pertinente en el contexto actual en Colombia, y también porque es un tema transversal a cualquier estado social de derecho que se encuentre en algún tipo de proceso de restitución de derechos en el marco de los derechos humanos fundamentales.

En esos procesos, la sociedad digital se ha dado cuenta que los medios de comunicación instantáneos y las redes sociales son herramientas de difusión de información altamente efectiva, pero también son un medio rápido de propagación de emociones. Con este proyecto se pretende demostrar que las figuras públicas hacen uso de toda una semántica del odio para generar emociones negativas e influir en las actitudes y formas de afrontar temas como las protestas sociales. En este caso, en el contexto colombiano que se vive en la actualidad desde el 28 de abril de 2021. Es también el objetivo de este proyecto proporcionar un modelo replicable en el que las personas en diferentes momentos y lugares también puedan hacer análisis de las intenciones semánticas de los diferentes personajes públicos. Todo bajo los estándares de datos abiertos para permitir su replicación.

Definición del lenguaje de odio

En principio, debemos establecer cuál es el marco en el que se encasillan el discurso el cual los políticos más representativos de la sociedad en este caso colombiana.

Para ello hemos investigado a los políticos que más emociones encontradas generan en un contexto de percepción general. Los elegidos son: @AlvaroUribeVel y los que él ha realizado RT.

Con ello podemos determinar que hay oraciones que a simple vista tienen un contexto agresivo, con este contexto, buscaremos qué resultados nos arroja el análisis que nos proponemos a realizar.

Relevancia del análisis

Las redes sociales hoy día sirven no solo para informar, también para expresar opiniones o sentimientos frente a algún tema que refleje el sentir de la sociedad, una empresa o individuo. Dada la situación actual que se vive en Colombia revisar el impacto positivo o negativo de las opiniones que se realizan en torno al paro reviste importancia por que se impacta directamente al ciudadano logrando desestigmatizar un acto ciudadano en plena facultad de derechos.

Herramientas y proceso

Clasificación y extracción de tweets

En este punto encontramos dos problemas de entrada, la selección de los tweets a analizar y la manera en la que haremos la extracción de la data que vamos a analizar.

El primer punto lo solucionamos haciendo un riguroso proceso de selección, de acuerdo a criterios como: relevancia del personaje, relevancia de la información y alcance de la publicación.

El segundo punto es más complejo técnicamente, ya que Twitter tiene restringido el acceso a su información, a tal nivel que ya ni con acceso a la API podemos extraer la información en la disposición o segmentos que requerimos.

Finalmente decidimos que el software a usar para la extracción del texto será octoparse.com, ya que nos permite extraer los datos en los segmentos y la disposición requerida para hacer uso de la herramienta que veremos en el siguiente apartado.

Análisis de tweets con Microsoft Azure Text Analytics

Las técnicas para análisis de sentimientos tienen como objetivo determinar la actitud con la cual el autor de un texto manifiesta una opinión.

Hemos seleccionado este servicio, ya que nos ahorra tiempo haciendo todos los pasos que describiremos a continuación:

Pre Procesamientos

Para llegar a que un algoritmo determine cuál es el sentimiento de una oración deben ocurrir previamente pre procesamientos y procesamientos que describiremos a continuación:

Construcción de Corpus

Con el servicio de Microsoft los corpus están construidos y almacenados en base a la cantidad de elementos rastreados y etiquetados de toda la web.

Normalización

Es el proceso por el cual se estandariza la tipografía, el idioma, y se determina el tipo de información del texto el cual se analizará. Por ejemplo, “restaurante”, “restaurant”, “restorán”, “resto”.

Tokenización

Consiste en realizar una segmentación de oraciones y palabras para asignarlas en tokens que le indican al los algoritmos cosas como el inicio, el final o el contexto de la oración, entre otros detalles.

Stemming

Consiste en obtener la raíz de la palabra eliminando las terminaciones. “validar” “valid”. El stem de una palabra no necesariamente es un término válido del vocabulario.

Lematización

El lema de una palabra es su forma flexionada, es decir como la encontraríamos en un diccionario, en su modo más global. Ya que cada palabra que será analizada puede aportar diferentes valores en su contexto, se reemplaza esa palabra por su lema.

Otros Pre Procesamientos

Otras transformaciones que pueden representar una mejora en la efectividad de los algoritmos, tales como: corrección ortográfica, comparación con corpus especializados para eliminar ambigüedades, entre otras.

¿Cómo se puede extraer de ahí el lenguaje del odio?

En la documentación ofrecida por Microsoft podemos detallar cómo se realiza el proceso de análisis con su algoritmo.

Análisis de sentimiento basada en aspectos en el procesamiento de lenguaje natural (NLP), proporciona información más detallada sobre las opiniones relacionadas con los atributos de los productos o servicios del texto. La API muestra las opiniones como un destino (con un sustantivo o verbo) y una evaluación (con un adjetivo).

El servicio de Text Analytics proporciona los modelos de AI que usa la API. Si envía una solicitud de Análisis de sentimiento, la API devolverá etiquetas de sentimiento (como «negative», «neutral» y «positive») y puntuaciones de confianza en el nivel de oración y de documento.

También puede enviar solicitudes de minería de opiniones mediante el punto de conexión de Análisis de sentimiento, que proporciona información detallada sobre las opiniones relacionadas con palabras (como los atributos de los productos o servicios) en el texto.

Valor agregado

La intención de este trabajo además de demostrar rápidamente el tipo de lenguaje que se ha usado en el contexto descrito, es el de demostrar que solo basta con tener los conocimientos básicos necesarios de informática y python, para poder usar potentes algoritmos como los de Microsoft, IBM o Google, y poder aplicarlos a las investigaciones o análisis académicos de manera rápida y sencilla.

Análisis y Resultados

Obtendremos el análisis de sentimientos de los tweets de personajes representativos de la política, en este caso aplicado a Colombia.

Pasos realizados para la obtención de resultados:

  1. Instalar paquetes necesarios para la ejecución
  2. Crear variables con los datos de la API requeridos para la autenticación
  3. Importar las librerías necesarias para el llamado de la API
  4. Establecer los parámetros de autenticación
  5. Establecer los parámetros de lectura del dataset a analizar
  6. Ejecutar el análisis del dataset
  7. Extracción de entidades vinculadas al texto
  8. Análisis de sentimientos mediante minería de opiniones

Referencias

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Vuelve al inicio