Capítulo 3 — Diseño del estudio, ética y reproducibilidad
Mapa de la lección
Lección 03 publicada. Mapa, ejemplo, EX015.
flowchart TD
N0["Resultados de aprendizaje"]
N1["3.1 Elegir un diseño"]
N2["3.2 Variables y controles"]
N3["3.3 Ética y protección de datos"]
N4["3.4 Reproducible desde el diseño"]
N5["3.6 Actividades de práctica"]
N6["Síntesis del capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
N6 --> EX["Ejemplo resuelto"]
EX --> Q["Ejercicio EX015"]
Dibujo lógico
flowchart LR
N0["Resultados de aprendizaje"]
N1["3.1 Elegir un diseño"]
N2["3.2 Variables y controles"]
N3["3.3 Ética y protección de datos"]
N4["3.4 Reproducible desde el diseño"]
N5["3.6 Actividades de práctica"]
N6["Síntesis del capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX015"]
[Resultados de aprendizaje]
|
v
[3.1 Elegir un diseño]
|
v
[3.2 Variables y controles]
|
v
[3.3 Ética y protección de datos]
|
v
[3.4 Reproducible desde el diseño]
|
v
[3.6 Actividades de práctica]
|
v
[Síntesis del capítulo]
|
v
[Ejemplo resuelto] --> [Ejercicio EX015]
Resultados de aprendizaje
Usted será capaz de (1) elegir un diseño (experimento controlado, estudio observacional, estudio de caso) que se ajuste a la pregunta; (2) definir las variables, los controles, la aleatorización y el tamaño muestral; (3) planificar el tratamiento de los datos y la ética para datos personales o sensibles; (4) hacer el estudio reproducible desde el principio; y (5) documentar el plan para que un supervisor pueda aprobarlo.
3.1 Elegir un diseño
La mayoría de los proyectos de maestría en seguridad de la IA son experimentos controlados: se cambia un factor (deduplicación activada o desactivada), se mantienen fijos los demás y se miden los resultados. Los estudios observacionales analizan datos existentes sin intervenir (por ejemplo, los registros de intentos de inyección de instrucciones contra un asistente desplegado) y deben preocuparse por los factores de confusión. Los estudios de caso examinan un sistema en profundidad y son útiles cuando los experimentos son imposibles, pero sustentan una generalización más débil. Elija el diseño más sólido que pueda llevar a cabo de forma ética y dentro del plazo. La pregunta de Leo compara condiciones que él puede controlar, así que encaja un experimento controlado.
3.2 Variables y controles
En el caso de Leo, la variable independiente es el tratamiento del conjunto de entrenamiento (original, con duplicados exactos eliminados, con casi duplicados eliminados). Las variables dependientes son la TPR de la inferencia de pertenencia con una FPR del 1 %, el AUC y el F1 macro del clasificador. Las variables controladas incluyen la arquitectura del modelo, las épocas, la tasa de aprendizaje, las semillas aleatorias y la partición de evaluación. Aleatorice qué registros van al entrenamiento y cuáles a los conjuntos reservados, para que los miembros y los no miembros procedan de la misma distribución; de lo contrario, un ataque puede detectar un cambio de distribución en lugar de la pertenencia, un error conocido. Use varias semillas e informe de la variabilidad. Estime el tamaño muestral a partir de un piloto (capítulo 5).
3.3 Ética y protección de datos
Cuando los datos se refieren a personas, aplique los principios de protección de datos: base jurídica, limitación de la finalidad, minimización, limitación del plazo de conservación y seguridad. El RGPD se aplica en la UE; otras jurisdicciones tienen leyes similares. Nota para el lector hispanohablante: en España, el RGPD se complementa con la Ley Orgánica 3/2018, de Protección de Datos Personales y garantía de los derechos digitales; en América Latina rige la ley de cada país, por ejemplo la Ley 25.326 en Argentina o la Ley 1581 de 2012 en Colombia. Prefiera datos sintéticos que conserven las propiedades que necesita; si los datos reales son imprescindibles, obtenga la aprobación del comité de ética de su institución y del responsable del tratamiento, seudonimice, restrinja el acceso y fije fechas de supresión. Los ataques contra la privacidad sobre datos reales crean precisamente el daño que usted estudia; ejecútelos solo sobre copias amparadas por un acuerdo y nunca publique los registros recuperados. Si su proyecto implica a personas (anotadores, participantes en encuestas), necesita su consentimiento informado.
3.4 Reproducible desde el diseño
Prepare desde el primer día: un repositorio con control de versiones; un entorno fijado; archivos de configuración en lugar de parámetros escritos en el código; semillas fijas; una sola orden para ejecutar cada experimento; registros escritos como datos legibles por máquina; y una ficha de datos que describa la procedencia y el procesamiento (Gebru et al., arXiv:1803.09010). El programa de reproducibilidad de NeurIPS (Pineau et al., arXiv:2003.12206) ofrece una lista de comprobación que merece la pena adoptar. Incorporar la reproducibilidad desde el principio es mucho más barato que añadirla después. El diseño de Leo enumera desde el principio el repositorio, un archivo de bloqueo y una interfaz run.py --config, lo que simplificó sus reejecuciones posteriores.
3.5 Ejemplo resuelto (caso sintético de Harbourline)
El documento de diseño de Leo especifica un experimento controlado con tres condiciones × cinco semillas. Datos: 20.000 notas de siniestros sintéticas generadas a partir de plantillas con duplicación controlada (un 8 % de duplicados exactos y un 6 % de casi duplicados), de modo que se conoce la verdad de referencia sobre la duplicación. Los miembros y los no miembros se extraen mediante una partición aleatoria del mismo conjunto. La sección de ética recoge que no se usa ningún dato real de reclamantes, que el delegado de protección de datos de Harbourline revisó el plan y que se publicará el generador sintético. La sección de reproducibilidad enumera el repositorio, el archivo de bloqueo del entorno y una interfaz run.py --config.
El laboratorio de estadística muestra por qué se planifican cinco semillas: los resultados por semilla varían aunque no cambie nada más que la semilla.
"""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]
3.6 Actividades de práctica
- Redacte su diseño con las variables, los controles y la aleatorización. 2. Redacte un borrador de la sección de ética y protección de datos. 3. Cree el esqueleto del repositorio con archivos de configuración y una política de semillas. Use el diseño de Leo como modelo: nombre las variables independientes, dependientes y controladas, e indique cómo se extraen los miembros y los no miembros del mismo conjunto. En el texto de ética, indique qué datos se usan, quién revisó el plan y qué se publicará. En el repositorio, incluya archivos de configuración, un archivo de bloqueo, una política de semillas y una sola orden por experimento. Pida a su supervisor que revise los tres.
3.7 Errores y límites
Cuatro errores se repiten, y cada uno socava el resultado; revise su diseño en busca de los cuatro:
- Miembros y no miembros extraídos de distribuciones diferentes; esto permite que el ataque detecte el cambio de distribución en lugar de la pertenencia.
- Una semilla por condición; una sola semilla no puede mostrar la variabilidad, que el Lab S hace visible.
- Usar datos personales reales cuando bastarían datos sintéticos; los datos personales reales crean el daño que se estudia cuando servirían datos sintéticos, como sirven las notas sintéticas de Leo.
- Rutas y parámetros escritos en el código que hacen imposibles las reejecuciones; hacen que las reejecuciones fallen para cualquier otra persona, incluidos los examinadores.
Ejercicios — capítulo 3
- EX015 — Elección del diseño. Para «¿reciben los asistentes desplegados intentos de inyección, y de qué tipos?», elija un diseño y justifíquelo. Rúbrica: 3 = estudio observacional de registros autorizados con notas sobre factores de confusión/consentimiento; 2 = solo el diseño; 1 = mal ajuste; 0 = nada.
- EX016 — Variables. Enumere las variables independiente y dependientes y tres variables controladas para un experimento sobre una defensa contra la evasión. Rúbrica: 3 = todas correctas; 2 = laguna menor; 1 = laguna importante; 0 = nada.
- EX017 — Error de distribución. Explique por qué los miembros y los no miembros deben proceder de la misma distribución. Rúbrica: 3 = de lo contrario el ataque detecta el cambio de distribución, lo que infla los resultados; 2 = parcial; 1 = vago; 0 = incorrecto.
- EX018 — Protección de datos. Nombre cuatro principios de protección de datos que se aplican a un estudio de ataques contra la privacidad. Rúbrica: 3 = cuatro correctos; 2 = tres; 1 = uno o dos; 0 = ninguno.
- EX019 — Lectura del laboratorio. En el laboratorio de estadística, ¿cuál es el intervalo de las tasas por semilla y cuál es la media? Rúbrica: 3 = 0.105–0.145, media 0.125, sd 0.017; 2 = dos de tres; 1 = uno; 0 = incorrecto.
- EX020 — Preparación para la reproducibilidad. Enumere cinco cosas que hay que preparar antes del primer experimento. Rúbrica: 3 = cinco entre repositorio, entorno fijado, configuraciones, semillas, orden única, registros, ficha de datos; 2 = cuatro; 1 = dos; 0 = ninguna.
Síntesis del capítulo
El diseño determina lo que se puede concluir. Las variables controladas, el muestreo emparejado de miembros y no miembros, las múltiples semillas, el tratamiento ético de los datos y la reproducibilidad incorporada desde el principio son lo que permite que un proyecto breve produzca una respuesta creíble.
Siga estudiando — capítulo 03 de 08
← Capítulo 02 (borrador) · Índice de capítulos del curso · Capítulo 04 (borrador) →