ironiaL52_roberta / README.md
gil8's picture
Update README.md
57da0bd verified
metadata
language:
  - es
pipeline_tag: text-classification
widget:
  - text: >-
      Chicos busquen en el diccionario 'sarcasmo', 'ironía', y 'peronismo
      inteligente'. Dos de esas existen.
  - text: Oh, brillante...
  - text: Anoche llovió muy fuerte.
license: cc-by-nc-sa-4.0

Tarjeta para el modelo ironiaL52_roberta

ironíaL52_roberta es un modelo que toma una oración corta como entrada y decide si su contenido muestra un tono irónico o no. En este código se puede ahondar en su funcionamiento.

Detalles del modelo

Descripción del modelo

Este modelo ha sido el resultado de proyectos anteriores, en los cuales se tomában twitts etiquetados como irónicos y no irónicos. Con base en ello, se entrena el modelo y se espera que éste pueda reconocer ironía en textos cortos. El modelo que se presenta, además del proceso anterior, fue reentrenado con datos etiquetados manualmente, obteniendo nuevos resultados.

Este proyecto tiene como segundo propósito ser una base para futuros proyectos de clasificación de textos.

  • Desarrollado por: Gilberto Barranco Sánchez, Heili Yamilit Espinosa Castro, Eric Yaven Báez Reyes, Max Armando Sánchez Hernández, Gabriela Jasso López & Ivan Vladimir Meza Ruiz.
  • Tipo de modelo: Clasificador de textos.
  • Lenguaje(s) (NLP): Español.
  • Licencia: CC BY-NC-SA 4.0
  • Basado en el modelo [optional]: cardiff/twitter-roberta-base-irony.

Referencias del modelo

  • Repositorio: En el siguiente enlace se puede acceder al repositorio con los componentes del modelo.

Usos

Uso directo

Para el uso del modelo, se puede insertar oraciones cortas en el prompt que aparece a la derecha. Tras un escaneo, se determinará qué porcentaje de ironía posee dicho mensaje. Entre los principales usos que tiene ironiaL52_roberta están:

  • Probar y entender las limitaciones y sesgos del mismo modelo.
  • Es una aplicación que puede servir de ejemplo en el ámbito educativo de la computación.

Usos incorrectos

Algunas formas erróneas de usar el modelo es introducir frases muy largas (más de 280 caracteres) o en otros idiomas.

Además, dado que ironiaL52_roberta no es un modelo robusto, éste no puede realizar análisis de sentimientos, moderar un foro de internet mediante la detección de mensajes malintencionados o mejorar la experiencia con un chatbot. Para ello, se necesita un entrenamiento con un mayor número de datos.

Riesgos, sesgos y limitaciones

El modelo fue entrenado con twitts, por lo cual, aprendió a detectar la ironía y sarcásmo que se utiliza en esta red social, mas no aquella definida en campos de estudio tales como la Lingüística. De esta manera, el grado de ironía de una oración depende de la visión de ese reducido conjunto de datos.

Por otro lado, la ironía y el sarcasmo dependen del contexto en que se dice una oración. Así, frases que nosotros podemos considerar como irónicas o sarcásticas en la vida cotidiana, no serán fáciles de detectar para el modelo.

Recomendaciones

Se recomienda que las frases introducidas en el prompt sean en español y no superiores a los 280 caracteres. Además, dado que el sistema fue entrenado con twitts, se espera que el tipo de frases sean aquellas que uno puede encontrar en redes sociales.

Cómo adentrarse en el modelo

Use el código de abajo para iniciarse en el modelo.

https://github.com/GilbertoBarranco/ironiaL52_roberta/blob/main/ironial52_roberta.py

Detalles de entrenamiento.

El modelo fue entrenado con 59759 twitts previamente etiquetados como irónicos y no irónicos.

Procedimiento para el entrenamiento

Para realizar el entrenamiento, fue necesario hacer una limpieza de los datos. Esta limpieza se realizó al eliminar hashtags, nombres de usuario, letras mayúsculas y otros aspectos que no aportaban contenido semántico.

Por otra parte, pensamos que era conveniente conservar los emojis, ya que éstos sí pueden cargar con contenido semántico. Para procesar los emojis se utilizó la librería emoji.

Evaluación

A partir de la matriz de confusión

image/png

obtenemos las métricas de evaluación.

  • Precisión: 0.992063
  • Recall: 0.472887
  • F1Score: 0.640477

Datos de evaluación

El modelo fue evaluado utilizando 5000 twitts.

Impacto ambiental

Las emisiones de Carbono pueden ser estimadas usando la Machine Learning Impact calculator presente en Lacoste et al. (2019).

  • Tipo de Hardware: T4 GPU.
  • Horas empleadas: 2h.
  • Proveedor de Nube: Google Cloud Platform.
  • Región del cómputo: Noreste de América.