El Leaderboard ODESIA proporciona una infraestructura de evaluación para modelos de lenguaje preentrenados en inglés y español que permite una comparación directa entre el rendimiento de modelos en uno y otro idioma y, por tanto, medir la brecha de efectividad inglés-español. La infraestructura consta de un benchmark sobre el cual se evalúan los modelos, una plataforma de evaluación y un leaderboard donde se muestran los resultados por tarea e idioma y los resultados del cálculo de la brecha de efectividad.
Datasets y Tareas
Un benchmark para evaluar comparativamente modelos de lenguaje suele consistir en una colección diversa de tareas de Procesamiento del Lenguaje Natural susceptibles de ser abordadas por los modelos de lenguaje mediante entrenamiento supervisado (fine-tuning) o con otras aproximaciones (zero-shot, few-shot, in context learning, etc.). El benchmark del Leaderboard ODESIA está formado por dos grupos de tareas: Core Tasks, para evaluar las cuales se proporcionan datasets con partición de test privada creada específicamente para este leaderboard, y Extended Tasks, para evaluar las cuales se proporcionan datasets públicos. Para todas las tareas se proporcionan datasets comparables en inglés y español.
Los datasets con particiones de test privadas, en los que se puede garantizar que no hay contaminación, son los siguientes:
- DIPROMATS 2023. Este dataset es una colección de tuits emitidos por diplomáticos de cuatro potencias mundiales (la Unión Europea, Rusia, China y Estados Unidos), anotados en función de las técnicas de propaganda que utilizan para transmitir una imagen determinada de sus países o de sus competidores a nivel global. Se enmarca en el problema de la desinformación. Hay tres tareas asociadas a este dataset:
- Identificación de tuits con contenido propagandístico.
- Caracterización a grano grueso de las técnicas de propaganda (4 técnicas).
- Caracterización a grano fino de las técnicas de propaganda (15 técnicas subsumidas en las anteriores).
- EXIST 2022. Este dataset contiene tuits anotados con información sobre sexismo: una etiqueta binaria que indica si el tuit expresa sexismo o no, y una etiqueta multiclase que incide en el tipo de sexismo que se transmite. Se enmarca en el problema de la toxicidad en las redes sociales. Hay dos tareas asociadas a este dataset:
- Detección de sexismo.
- Categorización de sexismo.
- DIANN 2023. Este dataset es una colección de resúmenes de artículos biomédicos, anotados con menciones de discapacidades. Hay una tarea de etiquetado de secuencias asociada:
- Reconocimiento de entidades nombradas.
- EXIST 2023. Como EXIST 2022, se trata de una colección de tuits etiquetados en función del tipo de sexismo expresado o descrito en ellos. A diferencia de EXIST 2022 el dataset se ha anotado siguiendo el paradigma de "aprendizaje con desacuerdo'' (Learning with Disagreement, LeWiDi). Contiene anotaciones para tres tareas que abarcan clasificación binaria, clasificación jerárquica multiclase y clasificación jerárquica multilabel. Se enmarca dentro del problema de la toxicidad en redes sociales. Las tareas relacionadas son:
- Detección de tuits sexistas.
- Categorización del sexismo.
- Categorización de la intención del autor.
- SQUAD/SQAC 2024. Este dataset es un conjunto de evaluación privado construido con la misma metodología empleada en SQUAD (inglés) y español (SQAC). Los modelos pueden entrenarse sobre los datasets SQUAD/SQAC. Contiene artículos de divulgación científica del CSIC para el español y de Cambridge University para el inglés, anotados con preguntas y respuestas extractivas. Tiene una tarea relacionada:
- Comprensión de texto extractiva en sistemas de pregunta-respuesta. La tarea consiste en responder a preguntas sobre un texto, de tal manera que la respuesta sea un fragmento extraído directamente del texto. Se trata de una tarea de etiquetación de secuencias.
Para construir estos datasets en inglés y español de manera que sean comparables se ha aplicado una metodología idéntica en los dos idiomas para seleccionar los textos fuente y anotarlos manualmente, y se han definido mecanismos de calibración para compensar posibles diferencias de dificultad intrínseca entre los datasets de ambos idiomas.
El subconjunto de evaluación de estos datasets se mantendrá privado indefinidamente, para evitar los efectos de sobreajuste de sistemas y para evitar la posible contaminación de los modelos de lenguaje en la fase de pre-entrenamiento.
Los datasets con particiones públicas se listan a continuación. Para todos estos datasets utilizamos los datos públicos de entrenamiento y evaluación, y por lo tanto son susceptibles de presentar problemas de contaminación.
- Multilingual Document Classification Corpus (MLDoc) (Schwenk y Li, 2018) contiene noticias clasificadas en cuatro categorías: corporate/industrial, economics, government/social y markets.
- MultiCONER 2022 (Malmasi et al., 2022) es un dataset multilingüe para reconocimiento de entidades nombradas complejas con seis categorías diferentes.
- STS-2017 (Cer et al., 2017) es un dataset multilingüe de similitud textual. La tarea consiste en predecir el grado de similitud entre un par de oraciones.
- SQUAD/SQAC está formado por un dataset en español, Spanish Question Answering Corpus (SQUAD/SQAC) (Gutiérrez-Fandiño et al., 2021) y otro en inglés, SQuAD v1.1 (Rajpurkar et al., 2016). Se trata de textos de dominio general (Wikipedia fundamentalmente) anotados con preguntas y sus respuestas extractivas. La tarea asociada es la comprensión de texto extractiva en sistemas de pregunta-respuesta.
Puede encontrarse información detallada sobre las tareas en la página de Tareas.
Evaluación
Los resultados de la evaluación se presentan en tres tablas (https://leaderboard.odesia.uned.es/leaderboard/tablesV2) para cada conjunto de tareas (Core Tasks y Extended Tasks):
- Una tabla donde constan los resultados obtenidos para las tareas en inglés por sistema y tarea.
- Otra tabla donde constan los resultados obtenidos para las tareas en español por sistema y tarea.
- Otra tabla donde constan los resultados de la medición del gap inglés/español por tarea.
El Leaderboard ODESIA utiliza la librería de evaluación PyEvALL para las tareas de clasificación. PyEvALL es accesible desde el gestor de paquetes Pip y puede ser utilizada durante la fase de desarrollo de los sistemas para evaluar las tareas de DIPROMATS 2023, EXIST 2022 y EXIST 2023. Así mismo, la métrica F1 implementada para evaluar las tareas del dataset SQUAD/SQAC original ha sido adaptada para evaluar las tareas del dataset SQUAD-SQAC 2024. Su implementación original, para su uso en la fase de desarrollo, se puede encontrar en SQUAD METRIC. Por su parte, la tarea de etiquetado de secuencias DIANN 2023 utiliza la métrica Macro F1 implementada en la librería HuggingFace Evaluate, que también ha sido adaptada para ser utilizada en el Leaderboard ODESIA. Para evaluar las tareas de etiquetado de secuencias DIANN 2023 y MultiCoNER 2022 se utiliza la métrica Macro F1 implementada en la librería HuggingFace Evaluate, siendo adaptada para ser utilizada en Leaderboard ODESIA. Finalmente, la métrica Pearson Correlation, implementada en SciPy, ha sido adaptada para evaluar la tareas del datasets STS 2017.
Para obtener los resultados del cálculo de la brecha se usa un indicador basado en comparar, por idioma y tarea, los resultados de sistemas baseline que no utilizan información lingüística con los mejores resultados que constan en el leaderboard. A continuación se detalla este procedimiento.
Definir un indicador de brecha en efectividad entre lenguas requiere tener en cuenta muchas variables, que en muchos casos dependen también del problema y de los datos disponibles para la evaluación. El primer problema a resolver es que no todas las métricas de efectividad tienen las mismas propiedades de escala. La mayoría de las métricas, como por ejemplo la tasa de aciertos, están acotadas entre cero y uno. Otras métricas no tienen una cota superior. Por tanto, no se pueden equiparar las diferencias obtenidas para varios problemas en los que se emplean diferentes métricas. Es decir, un intervalo en una métrica puede tener una relevancia completamente distinta del mismo intervalo en otra métrica. Por tanto, es necesario establecer un intervalo-unidad o intervalo de referencia.
El segundo problema es que la efectividad obtenida puede ser sensible a la dificultad intrínseca de los datos de evaluación. Por ejemplo, sobre un tamaño de datos de entrenamiento menor, es normal obtener valores de efectividad menores. Pero que el tamaño de los datos de entrenamiento de un dataset sea diferente entre dos idiomas no significa que exista una brecha intrínseca en cuanto a la efectividad de los sistemas en cada uno de los idiomas. Para controlar este aspecto, será necesario tomar como referencia un sistema baseline que cumpla ciertas características. La más crucial es que el baseline no debe utilizar ningún tipo de tecnología lingüística. Es decir, debe de ser un sistema no pre-entrenado para ningún idioma, y que además no emplee herramientas de procesamiento lingüístico. Un ejemplo de baseline adecuado puede ser emplear un clasificador SVM que funcione sobre conjuntos de tokens. Por tanto, las diferencias de efectividad entre idiomas de un baseline de este tipo vendrán determinadas únicamente por la dificultad del conjunto de datos de evaluación. Con esta información, se pueden calibrar los resultados producidos por modelos de lenguaje para medir la brecha entre idiomas.
Para ello, tomaremos como intervalo de referencia en cada idioma la distancia entre la efectividad del sistema baseline, que denotaremos como b, y un punto de referencia en la escala de la métrica que denotaremos como r. Es decir, tomaremos como intervalo unidad |b-r|.
El punto de referencia r también requiere un análisis previo. En casos en los que la métrica no esté acotada superiormente o en casos en los que la efectividad de los sistemas sea muy baja, este punto debería ser la cota inferior. Por otro lado, en casos en los que exista una cota superior y la efectividad sea alta debería tomarse como punto de referencia el valor superior en la escala de la métrica. Por ejemplo, dado un sistema base con efectividad cercana al uno en una métrica acotada superiormente, por ejemplo, 82% de acierto, y tomando como punto de referencia el 100% de acierto, el intervalo unidad debería ser del 18%.
Una vez definido este intervalo unidad |b-r| la aportación efectiva de un sistema (no baseline) en un idioma se calculará como el ratio de la diferencia entre efectividad del sistema evaluado y el sistema base respecto al intervalo unidad:
$$\Delta=\frac{s-b}{|b-r|}\cdot 100$$
La aportación lingüística en cada idioma cumple las siguientes propiedades: en primer lugar, la aportación es nula cuando el mejor sistema se comportan igual que el sistema base ausente de tecnología lingüística:
$$s=b\Longrightarrow\Delta=0$$
En segundo lugar, dada una efectividad fija por parte del sistema base, la aportación es proporcional a la diferencia de efectividad entre el sistema evaluado y el baseline:
$$b=k\Longrightarrow\Delta\propto s-b$$
En tercer lugar, dado una diferencia fija entre el sistema y el sistema base, la contribución será proporcional a la inversa del intervalo unidad:
$$s-b=k\Longrightarrow\Delta\propto \frac{1}{|b-r|}$$
Esto quiere decir que, tomando como referencia la máxima puntuación (r=1) a medida que la efectividad del sistema y del sistema base se aproximen al punto máximo, la contribución será mayor. Por ejemplo, una mejora de 0.97 a 0.98 es más importante que una mejora de 0.67 a 0.68, porque representa una mejora de un punto sobre tres posibles. Inversamente, a valores bajos de efectividad, tomando como punto de referencia (r=0), una mejora de 0.1 a 0.2 será más significativa que una mejora de 0.3 a 0.4: la primera es una mejora porcentual del 100% y la segunda del 33%.
Así el indicador de la brecha de efectividad entre idiomas inglés (EN) y español (ES) queda definido de esta manera:
Cálculo de la brecha de efectividad
Representa la diferencia entre idiomas entre mejoras porcentuales sobre un sistema base no lingüístico.
$$Ind(EN,ES)=\Delta_{EN}-\Delta_{ES}=\frac{s_{EN}-b_{EN}}{|b_{EN}-r|}-\frac{s_{ES}-b_{ES}}{|b_{ES}-r|}$$
donde \( s_{EN} \), \( b_{EN} \) y \( r \) representan la efectividad del sistema, la efectividad del sistema base y el punto de referencia en inglés. La notación para el español es análoga.
Los sistemas baseline utilizados como referencia para calibrar la efectividad de los modelos del lenguaje entre inglés y español son los siguientes:
- DIPROMATS 2023 Para la primera tarea de DIPROMATS entrenamos modelos de regresión logística, xgboosts y Support Vector Machines (SVM). Tomamos como baseline la media de los resultados obtenidos. Para las tareas 2 y 3 de DIPROMATS, y continuando con la idea de evitar usar información semántica en los modelos, usamos un clasificador multietiqueta, basado en el algoritmo de KNN (K-Nearest Neighbors).
- EXIST 2022. Vectorizamos el conjunto de datos y test sin ningún tipo de preprocesamiento, para evitar utilizar información lingüística. A partir de los conjuntos resultantes, entrenamos modelos de regresión logística, xgboosts y Support Vector Machines (SVM). Tomamos como baseline la media de los resultados obtenidos.
- DIANN 2023. Se ha utilizado Conditional Random Fields (CRF) sin ningún tipo de información lingüística.
- EXIST 2023. Este caso es más complejo por tratarse de un dataset en el que el ground-truth no es una etiqueta por caso, sino una probabilidad para cada etiqueta que refleja el grado de acuerdo entre anotadores.
- Para establecer un baseline para cada una de las tareas de EXIST-2023 se entrenó una red neuronal simple con una única capa oculta para la clasificación de los textos. La red se entrenó a 20 epochs con un learning rate de 0.001. El algoritmo de optimización escogido fue Adam. La función de pérdida usada por la red neuronal fue la entropía binaria para las tres tareas. La arquitectura de la red neuronal constó de tres componentes principales: dos capas totalmente conectadas y una función de activación unitaria lineal rectificada (ReLu). Los textos de entrada suministrados a la red se convertieron primeramente a vectores de 10.000 dimensiones mediante el método TF-IDF. La última capa de la red neuronal produce salidas que corresponden al número de capas objetivo de cada tarea específica: 2 para la tarea 1, 4 para la tarea 2 y 6 para la tarea 3. Para obtener un baseline robusto en cada tarea, se promediaron los resultados de 10 ejecuciones distintas para cada tarea.
- SQUAD/SQAC 2024. El algoritmo baseline consiste simplemente en cotejar, mediante distancia coseno, cada frase del texto con la pregunta, tomando la más semejante como respuesta candidata.
- MLDoc. Para este conjunto de datos usamos los algoritmos ya comentados de Regresión logística, Xgboosts y SVM. Al igual que en los anteriores baseline, vectorizamos evitando utilizar información lingüística.
- MultiCONER 2022. Utilizamos Conditional Random Fields (CRF). No se ha usado ningún tipo de información lingüística.
- STS-2017. Vectorizamos las dos frases de cada caso mediante la función
TfidfVectorizer
de sklearn, y calculamos el coseno entre ambas representaciones como aproximación de su similitud. - SQUAD/SQAC. El algoritmo baseline consiste en cotejar, mediante distancia coseno cada frase del contexto con la pregunta, quedándose con toda la frase como respuesta candidata. Nótese que al tomar toda la frase como respuesta (para evitar cualquier tipo de proceso lingüístico), la puntuación del baseline es muy baja.