◇ OpenCyber Academy
Ingeniería · Capítulo 29 · Español

Capítulo 29 — Seguridad de la IA y del aprendizaje automático: medición

Aprendizaje gratuito y abierto para quienes desean proteger a las personas y la tecnología. No se necesita una cuenta para estudiar ni consultar las respuestas.

Capítulo 29 — Seguridad de la IA y del aprendizaje automático: medición

Mapa de la lección

Lección 29 publicada. Mapa, ejemplo, EX085.

flowchart TD
  N0["Resultados de aprendizaje"]
  N1["29.1 Métricas que corresponden a las propiedades"]
  N2["29.2 Incertidumbre"]
  N3["29.3 Trampas"]
  N4["29.4 Programas de medición"]
  N5["Síntesis del capítulo"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5
  N5 --> EX["Ejemplo resuelto"]
  EX --> Q["Ejercicio EX085"]

Dibujo lógico

flowchart LR
  N0["Resultados de aprendizaje"]
  N1["29.1 Métricas que corresponden a las propiedades"]
  N2["29.2 Incertidumbre"]
  N3["29.3 Trampas"]
  N4["29.4 Programas de medición"]
  N5["Síntesis del capítulo"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX085"]
[Resultados de aprendizaje]
    |
    v
[29.1 Métricas que corresponden a las propiedades]
    |
    v
[29.2 Incertidumbre]
    |
    v
[29.3 Trampas]
    |
    v
[29.4 Programas de medición]
    |
    v
[Síntesis del capítulo]
    |
    v
[Ejemplo resuelto] --> [Ejercicio EX085]

Resultados de aprendizaje

Usted será capaz de (1) elegir métricas para las propiedades de seguridad de la IA (tasa de éxito del ataque, exactitud robusta, TPR con FPR fijo, coste en utilidad); (2) estimarlas con intervalos y comparaciones emparejadas; (3) evitar las trampas de la medición (filtración, ataques débiles, tasas base, sesgo de los LLM evaluadores); y (4) diseñar programas de medición que respalden las decisiones de publicación.

29.1 Métricas que corresponden a las propiedades

Empareje siempre una métrica de seguridad con una métrica de coste medida sobre los mismos elementos.

El emparejamiento impide una victoria fácil: cualquier sistema puede llegar a un éxito del ataque nulo rechazando todas las peticiones, y solo una métrica de coste sobre los mismos elementos lo revela. Medir ambas sobre un mismo conjunto también permite leerlas juntas, elemento por elemento.

29.2 Incertidumbre

Use intervalos de Wilson para las tasas, bootstrap para las métricas promediadas y bootstrap emparejado para las comparaciones. Informe de las semillas y de su dispersión.

"""Lab S: reporting attack-success rates honestly: Wilson intervals,
seed variation and a paired bootstrap. Synthetic trial outcomes only."""
import math, random
def wilson(k, n, z=1.96):
    p = k/n; d = 1 + z*z/n
    c = (p + z*z/(2*n))/d; h = z*math.sqrt(p*(1-p)/n + z*z/(4*n*n))/d
    return c - h, c + h
for k, n in ((3, 20), (30, 200), (300, 2000)):
    lo, hi = wilson(k, n); print(f"successes={k}/{n} rate={k/n:.3f} wilson95=[{lo:.3f}, {hi:.3f}]")
# five seeds of a synthetic defence evaluation: per-seed attack success rate
rates = []
for seed in range(5):
    r = random.Random(seed); rates.append(sum(r.random() < 0.12 for _ in range(200))/200)
m = sum(rates)/5; sd = math.sqrt(sum((x-m)**2 for x in rates)/4)
print("per-seed rates:", " ".join(f"{x:.3f}" for x in rates), f"mean={m:.3f} sd={sd:.3f}")
# paired bootstrap: baseline vs defence on the same 300 synthetic prompts
r = random.Random(42)
base = [r.random() < 0.30 for _ in range(300)]
defn = [b and r.random() < 0.6 for b in base]   # defence blocks ~40% of successes
diffs = []
for _ in range(2000):
    idx = [r.randrange(300) for _ in range(300)]
    diffs.append(sum(base[i] for i in idx)/300 - sum(defn[i] for i in idx)/300)
diffs.sort()
print(f"baseline_asr={sum(base)/300:.3f} defended_asr={sum(defn)/300:.3f} "
      f"reduction_ci95=[{diffs[50]:.3f}, {diffs[1949]:.3f}]")

Salida esperada:

successes=3/20 rate=0.150 wilson95=[0.052, 0.360]
successes=30/200 rate=0.150 wilson95=[0.107, 0.206]
successes=300/2000 rate=0.150 wilson95=[0.135, 0.166]
per-seed rates: 0.110 0.130 0.135 0.105 0.145 mean=0.125 sd=0.017
baseline_asr=0.350 defended_asr=0.190 reduction_ci95=[0.120, 0.203]

Las tres primeras líneas del laboratorio muestran la misma tasa del 15 % con intervalos que se estrechan a medida que crecen los ensayos: del 5–36 % con 20 ensayos al 13,5–16,6 % con 2.000. La dispersión entre semillas de 0,017 muestra cuánto puede moverse una sola ejecución. El bootstrap emparejado da un intervalo de reducción de 0,120 a 0,203, que excluye el cero, de modo que la mejora de la defensa está respaldada por los datos y no por una única muestra afortunada.

29.3 Trampas

La filtración entre los conjuntos de ajuste y de prueba infla los resultados; los ataques débiles o no adaptativos hacen que las defensas parezcan fuertes (Athalye et al., arXiv:1802.00420); ignorar las tasas base induce a error sobre la utilidad de un detector (Arp et al., arXiv:2010.09470). Cuando se usa un LLM como evaluador de las salidas, valídelo frente a etiquetas humanas en una muestra e informe de la concordancia; los evaluadores pueden estar sesgados a favor de las respuestas fluidas o de los rechazos.

Cada trampa hace que los resultados parezcan mejores de lo que son, y por eso los revisores las buscan primero. Un número sorprendentemente bueno merece el mayor escrutinio.

29.4 Programas de medición

Una decisión de publicación necesita un conjunto de pruebas fijo (reservado, versionado), umbrales vinculados a los requisitos, un calendario (cada publicación y periódicamente) y un responsable. Haga un seguimiento de las métricas a lo largo del tiempo para detectar regresiones y deriva. Guarde las salidas en bruto para poder recalcular las métricas si cambian las definiciones. Tener un responsable impide que el conjunto de pruebas se degrade: alguien tiene que añadir los nuevos patrones de ataque, retirar los casos defectuosos y mantener los umbrales alineados con los requisitos. El versionado hace visible cualquier cambio en el conjunto, y los resultados de versiones distintas no se comparan como si fueran la misma prueba. Las salidas en bruto permiten a los analistas responder más adelante a preguntas nuevas, como con qué frecuencia un modelo rechazó tareas benignas, sin repetir toda la campaña.

29.5 Ejemplo resuelto (caso sintético de NRS)

El plan de medición de Sam para Wrench: ASR de inyección en 600 tareas reservadas (requisito ≤ 2 % de propuestas, 0 ejecuciones), tasa de confirmaciones indebidas en 600 tareas benignas (≤ 5 %), éxito en 300 tareas de planificadores (≥ 90 %), cada una con intervalos de Wilson; etiquetas del LLM evaluador validadas con 150 salidas etiquetadas por personas (concordancia del 93 %). Los resultados alimentan el control de la CI y un informe trimestral. El plan empareja cada métrica de seguridad con una de coste: el éxito de la inyección con las confirmaciones indebidas, que miden con qué frecuencia se ralentiza el trabajo benigno. Exigir cero ejecuciones además del límite de propuestas refleja la arquitectura, ya que el punto de aplicación puede detener las propuestas, mientras que las ejecuciones no deben producirse nunca. Una concordancia del 93 % en 150 salidas muestra que el evaluador es utilizable, pero imperfecto, así que cada trimestre una persona revisa los desacuerdos.

29.6 Errores y límites

Una métrica de seguridad por sí sola puede mejorarse haciendo que el sistema lo rechace todo. Un LLM evaluador que no se ha contrastado con etiquetas humanas puede premiar las respuestas seguras de sí mismas o los rechazos. Comparar cifras de conjuntos de pruebas distintos mezcla los cambios del sistema con los cambios de la prueba. El informe trimestral de Sam indica la versión del conjunto de pruebas en cada gráfico e inicia una serie nueva cada vez que el conjunto cambia.

Ejercicios — capítulo 29

Síntesis del capítulo

La medición convierte la seguridad de la IA en decisiones: métricas emparejadas con sus costes, intervalos honestos, ataques adaptativos, evaluadores validados y un programa estable y versionado.

Siga estudiando — capítulo 29 de 50

← Capítulo 28 (borrador) · Índice de capítulos del curso · Capítulo 30 (borrador) →