Tema
Evaluación de texto generado
- Lenguaje natural y modelos de lenguaje
- Nivel intermedio
La métrica BLEU compara la salida con una o varias referencias contando cuántos n gramas del candidato aparecen en ellas, con un recorte por repetición y una penalización cuando el candidato es más corto que la referencia.
Nombre en inglés
Evaluating generated text
Intuición
Nace de una idea humilde, que consiste en suponer aceptable el candidato que comparte muchos trozos con una buena traducción. El recorte impide ganar puntos repitiendo la misma palabra, y la penalización por brevedad impide ganar precisión emitiendo tres palabras seguras y callándose el resto.
Fórmula
BLEU = BP \cdot exp( \sum_{n=1}^{4} w_n \log p_n ), con BP = 1 si c > r, y BP = exp(1 - r/c) en otro caso
Ejemplo resuelto
Sea la referencia el gato duerme en el sofá, de 6 palabras, y el candidato el gato duerme, de 3. Los 3 unigramas del candidato aparecen en la referencia, de modo que la precisión de unigramas vale 3 / 3 = 1.0, y los 2 bigramas también, con precisión 2 / 2 = 1.0. La penalización por brevedad vale exp(1 menos 6/3) = exp(menos 1) = 0.368, y ese factor es el que hunde la puntuación pese a la precisión perfecta.
Errores frecuentes
- Comparar valores de BLEU entre trabajos con tokenizaciones o números de referencias distintos, comparación que no significa nada aunque las cifras estén en la misma escala.
- Usar BLEU para resumen o conversación, tareas donde una salida correcta puede no compartir ningún n grama con la referencia.
- Informar una ganancia de 0.3 puntos de BLEU como mejora, cuando la variación entre semillas del mismo sistema suele ser de ese mismo orden.
Ejercicio
Un candidato de 10 palabras se compara con una referencia de 12. ¿Cuánto vale la penalización por brevedad?
Ver la solución
Como la longitud del candidato, 10, es menor que la de la referencia, 12, la penalización vale exp(1 menos r/c) = exp(1 menos 12/10) = exp(menos 0.2). El resultado es 0.819, de modo que la puntuación final queda multiplicada por ese factor. Si el candidato midiera 12 palabras o más, la penalización valdría 1 y no restaría nada.
Respuesta: 0.819