File size: 6,003 Bytes
d9569aa
59be5e8
 
 
78789c3
 
 
 
 
 
 
d9569aa
 
 
 
 
 
fb0188a
 
d9569aa
 
 
 
 
fb0188a
 
d9569aa
58e2945
 
d9569aa
0991231
d9569aa
 
94d2ff9
beb759f
d9569aa
fb0188a
d9569aa
 
 
fb0188a
e8d0df8
 
dfdfd3c
d9569aa
 
 
dfdfd3c
d9569aa
2a1bdbe
fb0188a
 
 
 
d9569aa
 
dfdfd3c
d9569aa
 
 
fb0188a
 
 
d9569aa
dfdfd3c
d9569aa
fb0188a
2a1bdbe
 
fb0188a
 
d9569aa
dfdfd3c
d9569aa
 
 
58e2945
d9569aa
e8d0df8
d9569aa
fb0188a
d9569aa
57da0bd
d9569aa
 
49e1e0c
d9569aa
fb0188a
d9569aa
 
fb0188a
 
49e1e0c
d9569aa
 
 
fb0188a
d9569aa
fb0188a
49e1e0c
d9569aa
 
 
fb0188a
d9569aa
fb0188a
d9569aa
fb0188a
d9569aa
fb0188a
 
 
d9569aa
fb0188a
57da0bd
d9569aa
fb0188a
d9569aa
 
 
df08241
d9569aa
df08241
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
---
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

<!-- Provide a quick summary of what the model is/does. -->

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](https://github.com/GilbertoBarranco/ironiaL52_roberta/blob/main/ironial52_roberta.py) 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

<!-- Provide the basic links for the model. -->

- **Repositorio:** En el siguiente [enlace](https://github.com/GilbertoBarranco/ironiaL52_roberta) se puede acceder al repositorio con los componentes del modelo.


## Usos

<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->

### 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

<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->

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

<!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->

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.


<!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->

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

### Procedimiento para el entrenamiento

<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->

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

<!-- This section describes the evaluation protocols and provides the results. -->

A partir de la matriz de confusión

![image/png](https://cdn-uploads.huggingface.co/production/uploads/650a6a3bc9aa376f76e0e492/FCW2a5qf9lBQUi-ASfImF.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

<!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->

Las emisiones de Carbono pueden ser estimadas usando la [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presente en [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).

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