34

Evaluar sistemas de IA

¿Cómo compruebas que un sistema de IA sirve para tu caso?

12 minRuta ejecutiva

Evaluar sistemas de IA

Con voz. Puedes pausar y saltar a cualquier paso.

Lección completa

Subtítulos

Un proveedor te enseña que su modelo sacó la nota más alta en un examen público famoso. Suena bien. Pero la pregunta que importa es otra: ¿sirve para tu caso?

Voz

Sin voz: la lección avanza sola con subtítulos.

La voz de esta lección está en preparación: por ahora avanza sola con subtítulos.

0:00 / 0:00

Qué lograrás

  • Explicar qué es un benchmark y por qué su nota puede engañar: saturación y contaminación.
  • Armar un conjunto de evaluación con casos propios y elegir cómo calificarlo: con un programa, con una rúbrica, con un LLM como juez o con personas.
  • Interpretar el margen de una nota (su intervalo de confianza) y predecir cómo cambia con el número de casos al comparar dos sistemas.

Ideas clave

  1. Un benchmark es un examen público y fijo. Sirve para comparar modelos en general, pero se satura y puede estar contaminado: su nota no dice si el sistema sirve para tu caso.
  2. Tu conjunto de evaluación son casos reales de tu trabajo, con la respuesta que aceptan tus expertos, que el sistema no haya visto. Incluye lo frecuente, lo excepcional, lo riesgoso y lo que debe rechazarse, y reporta por grupo: el promedio esconde dónde falla.
  3. Las respuestas cerradas las califica un programa; las abiertas, una rúbrica aplicada por personas o por un LLM como juez. El juez escala, pero tiene sesgos (por ejemplo, el orden de las respuestas): califica en los dos órdenes y contrástalo con personas.
  4. Toda nota lleva un margen, su intervalo de confianza: con cien casos, unos ocho puntos; cuatro veces más casos dan la mitad. Si dos sistemas difieren menos que el margen, es un empate. Compáralos con los mismos casos.
  5. Evaluar es una rutina: prueba de regresión en cada cambio, red teaming para buscar el peor caso y métricas de negocio medidas en un piloto.

Lo que mucha gente cree

Creencia común «Este modelo encabeza los benchmarks públicos, así que será el mejor para mi organización».

Lo correcto Un benchmark mide un examen concreto, y su nota puede estar inflada por contaminación o ya no distinguir a nadie por saturación. Solo una evaluación con tus casos, que el sistema no haya visto y con su margen de error, dice si sirve para tu caso.

Compruébalo

Cuatro preguntas. Sin nota ni cuenta: sirven para ver si la idea quedó.

Concepto¿Qué es la contaminación de un benchmark?
ConceptoUn LLM como juez tiende a preferir la respuesta que aparece primero. ¿Qué defensa sencilla se usa?
CálculoCon cien casos, la nota de un sistema lleva un margen de unos ocho puntos. ¿Cuántos casos hacen falta, más o menos, para bajarlo a unos dos?
AplicaciónPruebas dos asistentes con los mismos 150 casos de tu operación: A acierta 81 % y B 79 %, y B cuesta la mitad. ¿Qué haces?

Por dentroPara quien quiere las fórmulas y el código. No hace falta para seguir el curso.

El margen de una nota

Con kk aciertos en nn casos, la exactitud medida es p^=k/n\hat p = k/n. Su intervalo de confianza aproximado al 95 % es

p^±1.96 p^ (1−p^)n.\hat p \pm 1.96\,\sqrt{\frac{\hat p\,(1-\hat p)}{n}}.

Con 78 de 100: 0.78±1.960.78⋅0.22/100=0.78±0.0810.78 \pm 1.96\sqrt{0.78 \cdot 0.22/100} = 0.78 \pm 0.081, es decir, de 70 % a 86 % (lo que usa la escena). Con 400 casos, ±0.041\pm 0.041. El margen depende de 1/n1/\sqrt n: cuadruplicar los casos lo parte a la mitad, y en el peor caso (p^=0.5\hat p = 0.5) vale casi exactamente 1/n1/\sqrt n: 10 puntos con 100 casos, 5 con 400, 2.5 con 1 600.

La lectura correcta: si repitieras la evaluación muchas veces con casos nuevos, alrededor del 95 % de los intervalos construidos así contendría la exactitud real. Con pocos casos o con notas cerca de 0 % o de 100 % esta fórmula se queda corta; Brown, Cai y DasGupta (2001) recomiendan el intervalo de Wilson, que con 78 de 100 da de 68.9 % a 85.0 %. Bowyer, Aitchison e Ivanova (2025) muestran que, con menos de unos cientos de casos, los márgenes basados en la aproximación normal suelen salir demasiado chicos.

Comparar dos sistemas con los mismos casos

Para cada caso ii, sea di=ai−bi∈{−1,0,+1}d_i = a_i - b_i \in \{-1, 0, +1\} (acierto de A menos acierto de B). Si en n10n_{10} casos acierta solo A y en n01n_{01} solo B, la diferencia medida es dˉ=(n10−n01)/n\bar d = (n_{10}-n_{01})/n y su error estándar,

EE(dˉ)=(n10+n01)/n−dˉ 2n−1,dˉ±1.96 EE.\mathrm{EE}(\bar d) = \sqrt{\frac{(n_{10}+n_{01})/n - \bar d^{\,2}}{n-1}}, \qquad \bar d \pm 1.96\,\mathrm{EE}.

En la simulación de la lección, en cada caso ambos aciertan con probabilidad 0.66, solo A 0.12, solo B 0.08 y ninguno 0.14. La varianza de did_i es 0.12+0.08−0.042=0.1980.12 + 0.08 - 0.04^2 = 0.198; si cada sistema se probara con casos distintos se sumarían las de cada uno, 0.78⋅0.22+0.74⋅0.26=0.3640.78\cdot0.22 + 0.74\cdot0.26 = 0.364: casi el doble. Por eso, con los mismos casos, hacen falta casi la mitad.

La probabilidad exacta de que A quede por delante (con la distribución multinomial) es 78.5 % con 100 casos, 88.4 % con 200, 95.9 % con 400 y 99.75 % con 1 000; las 100 comparaciones de la escena dan 78, 88, 96 y 100. Con casos distintos, 400 casos dan alrededor de 90 % y hacen falta unos 650 para llegar a 95 %; con los mismos casos bastan unos 360. Que A gane no es lo mismo que demostrar la diferencia: para que el intervalo de dˉ\bar d excluya el cero el 80 % de las veces hacen falta n≈(1.96+0.84)2⋅0.198/0.042≈970n \approx (1.96 + 0.84)^2 \cdot 0.198/0.04^2 \approx 970 casos.

Miller (2024) resume el oficio: reportar errores estándar, comparar por pares (caso por caso), agrupar los casos que no son independientes (por ejemplo, varias preguntas sobre un mismo documento) y planificar el tamaño de la muestra antes de evaluar.

Contaminación: la cuenta del ejemplo

Si un modelo acierta siempre lo que vio, resuelve una fracción aa de lo demás y vio una fracción cc del examen, su nota es

nota=c+(1−c) a.\text{nota} = c + (1-c)\,a.

Con a=0.70a = 0.70: c=0.2c = 0.2 da 0.2+0.8⋅0.7=0.760.2 + 0.8 \cdot 0.7 = 0.76, lo mismo que B, y c=0.4c = 0.4 da 0.820.82. Es un modelo simplificado: la memoria real es parcial. La contaminación se busca con coincidencias de texto entre el examen y el corpus (el informe de GPT-4 usó tres subcadenas de 50 caracteres por pregunta; así descubrió que parte de BIG-bench se había colado por accidente en el entrenamiento y estimó que una cuarta parte de HumanEval estaba en sus datos), con problemas nuevos equivalentes o midiendo cuánta probabilidad asigna el modelo a las preguntas del examen. GSM1k (Zhang et al., 2024) son 1 205 problemas escritos por personas al estilo de GSM8k: algunas familias de modelos bajaron hasta 8 puntos, con más caída cuanto más probable era que el modelo generara ejemplos de GSM8k; los modelos de frontera casi no bajaron.

El juez automático

Zheng et al. (2023) compararon a GPT-4 como juez con expertos humanos en MT-bench: sin contar empates, coincidieron 85 % de las veces, más que los expertos entre sí (81 %). También midieron sus sesgos. Orden: con dos respuestas casi idénticas, el veredicto se mantuvo al invertir el orden 65.0 % de las veces con GPT-4, 46.2 % con GPT-3.5 y 23.8 % con Claude-v1. Longitud: al inflar 23 respuestas con una lista repetida sin información nueva, Claude-v1 y GPT-3.5 prefirieron la versión inflada en 21 de 23 (91.3 %) y GPT-4 en 2 (8.7 %). Su defensa contra el sesgo de orden: calificar dos veces, invirtiendo el orden, y declarar ganadora una respuesta solo si gana en las dos.

Para medir la coincidencia con personas sin dejarse engañar por el azar se usa la κ\kappa de Cohen: κ=(po−pe)/(1−pe)\kappa = (p_o - p_e)/(1 - p_e), con pop_o la coincidencia observada y pep_e la esperada por azar. La evaluación humana también se hace a gran escala: Chatbot Arena reunió más de 240 000 votos de personas que comparan respuestas a ciegas (Chiang et al., 2024), pero con preguntas que no son las tuyas.

La nota caduca y el examen también falla

Chen, Zaharia y Zou (2023) midieron el mismo servicio en marzo y en junio de 2023 con 500 números primos y 500 compuestos: GPT-4 pasó de 84.0 % a 51.1 %, porque la versión de junio respondía «compuesto» casi siempre (99.7 %) y dejó de seguir el razonamiento paso a paso que se le pedía. Es un cambio de comportamiento más que de capacidad, pero para quien depende del servicio el efecto es el mismo, y solo se nota volviendo a medir.

Los exámenes tienen errores: Gema et al. (2024) estiman que el 6.49 % de las preguntas de MMLU tienen alguno (en virología, el 57 % de las revisadas). Y se agotan: Phan et al. (2025) construyeron un examen nuevo de 2 500 preguntas porque los mejores modelos ya pasaban del 90 % en MMLU.

En código

import numpy as np

def margen(k, n, z=1.96):
    """Mitad del intervalo de confianza al 95 % para k aciertos de n casos."""
    p = k / n
    return z * np.sqrt(p * (1 - p) / n)

for n in (100, 400, 1600):
    print(n, round(100 * margen(0.78 * n, n), 1))
# 100 8.1
# 400 4.1
# 1600 2.0

# Dos sistemas con los mismos casos: ambos aciertan 0.66; solo A, 0.12; solo B, 0.08; ninguno, 0.14
rng = np.random.default_rng(0)
def a_por_delante(n, reps=20000):
    c = rng.multinomial(n, [0.66, 0.12, 0.08, 0.14], size=reps)   # ambos, solo A, solo B, ninguno
    return round(float(np.mean(c[:, 1] > c[:, 2])), 2)

for n in (100, 200, 400, 1000):
    print(n, a_por_delante(n))
# 100 0.78
# 200 0.88
# 400 0.96
# 1000 1.0

Lo que viene

La calidad medida es un eje; el riesgo es otro: privacidad, manipulación con instrucciones, sesgo y regulación. La lección 35 los recorre, y la 36 usa esta evaluación dentro de un piloto que escala.

Lente de decisión

Qué significa esta idea si tu trabajo es decidir, no programar.

  • Antes de comprar, pide la evidencia completa de cada cifra: qué examen, con qué instrucciones, qué versión del modelo, en qué fecha y cómo se descartó la contaminación. Sin eso, dos cifras no se pueden comparar.
  • Evalúa con tus datos: unos cientos de casos reales y anonimizados, con la respuesta que aceptan tus expertos, que el proveedor no haya visto. Incluye lo frecuente, lo excepcional, lo riesgoso y lo que debe rechazarse, y pide resultados por grupo.
  • Exige el margen de cada nota. Si dos sistemas difieren menos que el margen, trátalos como empate y decide por costo, rapidez y riesgo. Si califica un LLM como juez, pregunta cuánto coincide con personas y si se calificó en los dos órdenes.
  • Haz de la evaluación una rutina: repítela en cada cambio de modelo, instrucciones o datos; que un equipo ataque el sistema antes del lanzamiento; y fija de antemano qué resultado de negocio justifica seguir, medido en un piloto.

Términos de la lección

Transcripción completa
ComentariosConversación pública de esta lección: dudas, datos por revisar, ideas.

Los comentarios viven en GitHub Discussions, en el repositorio público del curso; para escribir se necesita una cuenta de GitHub. Se cargan desde giscus.app al abrir esta sección. Las personas que revisan el curso los leen, y si un cambio se acepta, se aplica en los dos idiomas. Abrir el hilo en GitHub

Fuentes