01 · Punto de partida
Decidir es gestionar dos errores
Cambiar el turno por una «mejora» que era azar cuesta dinero; no cambiar ante una mejora real cuesta oportunidad. Más el azar que fabrica hallazgos (Tema 39) y el sobreajuste que disfraza memoria de comprensión (Temas 6, 9).
- ¿Qué error duele más aquí: falsa alarma o ceguera?
- ¿Qué potencia tienes para tu Δ?
- ¿El «hallazgo» es señal o p-hacking?
- ¿El modelo comprende o memorizó?
02 · Definición
Tipo I, tipo II y los otros dos
Falsa alarma (α)
Rechazar H0 verdadera: declarar mejora que era azar. La fijás vos (0,05): 1 de cada 20.
Ceguera (β)
No ver efecto real por poco n. Potencia = 1−β: con n chico solo catástrofes se ven.
Azar + memoria
m pruebas fabrican alarmas (Tema 39); train≪test delata sobreajuste (Temas 6, 9).
| Decides \ Realidad | H0 cierta | H1 cierta (Δ) |
|---|---|---|
| Rechazar (cambiar) | Error I (α) | Acierto (potencia) |
| No rechazar | Acierto | Error II (β) |
03 · Método
Protocolo anti-culpa en 5 pasos
- 1Pesar costos asimétricos.
¿Duele más falsa alarma (obra inútil) o ceguera (colapso)? El costoso pide α o β más chico.
- 2Fijar α y potencia para Δ.
Ej.: α = 0,05, potencia 80% para Δ = 1. Sin Δ no hay potencia (Temas 27–28).
- 3Pre-registrar y corregir m.
Una prueba primaria + Bonferroni al resto (Tema 39). Cazar sin corregir es fabricar.
- 4Separar train/test.
Si train ≪ test hay memoria, no comprensión: volver a Temas 9 y 18.
- 5Exigir réplica.
Otro equipo, otras semillas, mismo protocolo: lo que no replica no decide.
04 · Potencia y costos
Ver lo relevante con n suficiente
Potencia
1−β para Δ
Probabilidad de detectar Δ si existe. 80% estándar: de cada 5 efectos reales, uno se escapa. Sube con n y Δ, baja con s.
Costos
Asimetría manda α
Alarma barata + ceguera cara → α generoso. Alarma cara (obra) → α estricto. El 0,05 no es ley divina.
- Sobreajuste
- Train excelente + test malo = memoria. Antídoto: menos parámetros, test sellado, walk-forward (Tema 6).
- Azar múltiple
- m×α falsas esperadas (Tema 39). Antídoto: primaria única + corrección.
- Replicabilidad
- Mismo protocolo, otros datos: ¿sobrevive? Lo que vive una vez es anécdota (Temas 43–44).
05 · Representación en Python
Falsas alarmas y potencia simuladas
Python en tu navegador. Bajo H0 el 5% «da»; con Δ real la potencia rescata.
import random
rng = random.Random(42)
# 200 experimentos bajo H0 (sin efecto): ¿cuántos p<0.05?
falsas = sum(rng.random() < 0.05 for _ in range(200))
print(f"falsas: {falsas}/200 ≈ {falsas/200:.0%} (≈ α=5%)")
~10/200: el azar fabrica el 5% prometido. Sin corrección, esas 10 serían «hallazgos».
Potencia para Δ con n dado
import math
def potencia(delta, s, n, alfa=0.05):
ee = s/math.sqrt(n)
z = 1.645 if alfa == 0.05 else 2.33 # una cola aprox
# P(detectar |Δ|) ≈ P(Z > z - Δ/EE)
from math import erf
def Phi(x):
return 0.5*(1+erf(x/math.sqrt(2)))
return 1 - Phi(z - abs(delta)/ee)
print(f"potencia Δ=1, s=2, n=16: {potencia(1,2,16):.0%}")
print(f"potencia Δ=1, s=2, n=64: {potencia(1,2,64):.0%}")
06 · Exploración
Laboratorio: dos curvas, dos errores
H0 (sin efecto) en gris, H1 (con efecto Δ) en lima para tu n y α. La línea es el umbral: a la derecha se rechaza. Roja = falsa alarma (α); naranja = ceguera (β). Mové los tres y mirá el trueque.
α vs. β en vivo
potencia = 1 − β para tu Δ
Con Δ=1 y n=16, la potencia ronda 50%: moneda al aire.
Curvas del estadístico bajo H0 y H1. Roja: rechazar siendo H0 (α). Naranja: no rechazar siendo H1 (β).
Preguntas para explorar
- Con Δ=1, n=16 y α=0,05: ¿potencia y β? ¿Apostarías una obra con 50% de ceguera?
- Subí n a 64 sin tocar lo demás: ¿potencia? ¿Qué precio pagaste por ver?
- Subí α a 0,10 con n=16: ¿α y potencia? ¿Cuándo conviene (alarma barata, ceguera cara)?
Ver respuestas sugeridas
- Potencia ≈ 50%, β ≈ 50%: moneda. No: «no significativo» sería ceguera probable, no absolución.
- Potencia ≈ 90%: 4× n por ver. El precio es cómputo (Temas 27–28).
- α 10%, potencia ≈ 65%: más alarmas, menos ceguera. Conviene si la alarma es barata (revisar) y la ceguera cara (colapso).
07 · Comprensión
Confusiones frecuentes
«α = 0,05 siempre»
α se fija por costos, no por tradición. Obra cara pide 0,01; tamizaje barato admite 0,10.
«No significativo = iguales»
Solo con potencia alta y IC angosto en 0 (Temas 26, 38). Con potencia 40% es «no sé», no «son iguales».
«Sobreajuste es alta varianza y listo»
Es memoria que finge comprensión: train≪test + narrativa. Se cura con menos parámetros y test sellado, no con más datos del mismo pozo.
«Réplica es repetir el código»
Repetir el código repite el bug. Réplica = otros datos/semillas con mismo protocolo (Temas 29, 43).
08 · Práctica guiada
Ejercicios con Python
Ejercicio 1: falsas esperadas
¿Alarm as con m=30 bajo H0?
print(30*0.05, "falsas esperadas (reportar 2/30 sin corregir es cazar)")
Ver solución razonada
1,5: dos «hallazgos» son el azar esperado. Con Bonferroni α = 0,0017 casi seguro ninguno sobrevive.
Ejercicio 2: potencia a mano
¿Potencia con Δ=1, s=2, n=64?
import math
from math import erf
def Phi(x):
return 0.5*(1+erf(x/math.sqrt(2)))
ee = 2/math.sqrt(64)
print(f"{1-Phi(1.645-1/ee):.0%} (EE 0.25: Δ a 4 EE, casi seguro)")
Ver solución
≈ 97%: Δ a 4 EE se ve casi siempre. Con n=16 (EE 0,5, Δ a 2 EE) era ≈ 50%.
Ejercicio 3: train≪test delata
¿Memoria o comprensión con train 0,1 y test 2,0?
Ver una posible respuesta
print("Memoria: 20× peor fuera. Simplificar y revalidar (Temas 9, 6).")
Brecha 20× = sobreajuste grave. Menos parámetros, test sellado y walk-forward antes de decidir.
09 · Síntesis
Ideas para recordar
- α (falsa alarma) lo fijás por costos; β (ceguera) lo bajas con n para Δ.
- Potencia sin Δ no existe: 80% estándar con n calculado.
- m×α falsas esperadas + pre-registro + corrección o es caza.
- train≪test = memoria; réplica independiente = comprensión.
- «No significativo» con poca potencia = «no sé», no absolución.
En el próximo tema blindaremos la repetición: reproducibilidad.