Parte: 13 — Evaluación, seguridad y gobernanza
Nivel: experto · Horas estimadas: 6
Laboratorio: evaluation · Estado: EXECUTABLE_CORE
Comprender sesgo, fairness y grupos afectados dentro de la evolución de la inteligencia artificial, implementar un experimento mínimo verificable y distinguir qué parte constituye evidencia frente a una afirmación todavía no comprobada.
Al finalizar podrás:
- Explicar sesgo, fairness y grupos afectados usando los conceptos
bias,fairness,subgroups,harms. - Ejecutar el laboratorio con una semilla explícita y revisar su contrato JSON.
- Identificar al menos un supuesto, una limitación y un riesgo de aplicación.
- Comparar el enfoque con la etapa anterior de la ruta de aprendizaje.
- Producir una evidencia reproducible y una conclusión que no exceda los datos.
bias, fairness, subgroups, harms
Cuando un modelo decide sobre personas —crédito, contratación, libertad condicional, moderación— la pregunta deja de ser solo "¿acierta?" y pasa a "¿acierta de forma equitativa entre grupos?". Kleinberg, Mullainathan y Raghavan (arXiv:1609.05807) demostraron en 2016 un resultado de imposibilidad: varias definiciones intuitivas de "justo" no pueden satisfacerse a la vez salvo en casos degenerados. La equidad, por tanto, no es un interruptor que se activa: es un conjunto de criterios en tensión que exige elegir explícitamente cuál priorizar y por qué.
Sesgo (en el sentido de fairness) es una diferencia sistemática de comportamiento del modelo entre grupos definidos por atributos protegidos (género, etnia, edad…). Fuentes:
- Sesgo histórico: los datos reflejan desigualdades del mundo real (menos préstamos aprobados a un grupo históricamente excluido). El modelo aprende y perpetúa el patrón.
- Sesgo de representación: un grupo está subrepresentado en el dataset; el modelo rinde peor con él.
- Sesgo de medición: la etiqueta o las features son proxies imperfectos y sesgados (usar "arrestos" como proxy de "delito" hereda el sesgo policial).
- Sesgo de agregación: un único modelo para grupos heterogéneos ajusta al grupo mayoritario.
Notación: Y = etiqueta real (1 = positivo), Ŷ = predicción, A = grupo protegido.
Paridad demográfica P(Ŷ=1 | A=a) igual para todo a
(misma tasa de resultado positivo entre grupos)
Igualdad de oportunidad P(Ŷ=1 | Y=1, A=a) igual para todo a
(mismo recall / TPR entre grupos)
Equalized odds TPR y FPR iguales entre grupos
Calibración por grupo P(Y=1 | score=s, A=a) igual para todo a
(un score significa lo mismo en cada grupo)
Kleinberg et al. probaron que, salvo casos triviales (predicción perfecta o tasas base idénticas
entre grupos), no se pueden satisfacer simultáneamente tres condiciones deseables:
calibración por grupo, igualdad de la tasa de falsos positivos y de falsos negativos. Corolario
práctico: cuando las tasas base (P(Y=1)) difieren entre grupos —lo habitual—, hay que
elegir qué criterio de equidad priorizar; optimizar uno degrada otro. No existe el modelo "justo"
sin especificar según qué definición.
El disparate impact mide la desproporción de resultados positivos entre el grupo desfavorecido y el favorecido:
DI = P(Ŷ=1 | A = desfavorecido) / P(Ŷ=1 | A = favorecido)
La regla del 80 % (four-fifths rule, EEOC de EE. UU.) considera indicio de impacto adverso un DI < 0.80. Es un umbral legal orientativo, no una garantía de equidad ni de su ausencia.
Pre-procesado : reponderar/reetiquetar datos para equilibrar grupos
In-procesado : añadir una restricción de equidad a la función objetivo
Post-procesado : ajustar umbrales por grupo para igualar el criterio elegido
Cada punto tiene trade-offs: post-procesar por umbral distinto por grupo puede chocar con requisitos legales de trato igual; el punto de intervención es también una decisión de gobernanza.
Modelo de aprobación de crédito evaluado sobre dos grupos, A y B.
Grupo A: 500 personas, aprobadas (Ŷ=1) = 200
Grupo B: 500 personas, aprobadas (Ŷ=1) = 120
- Tasas de resultado positivo: A = 200/500 = 0.40; B = 120/500 = 0.24.
- Disparate impact (B es el desfavorecido): DI = 0.24 / 0.40 = 0.60.
- Regla del 80 %: 0.60 < 0.80 → indicio de impacto adverso contra B.
- ¿Es injusto? Depende de la tasa base. Añadimos la etiqueta real (quién realmente paga):
aprobados solvencia real (Y=1) TPR = P(Ŷ=1|Y=1)
Grupo A 200 250 solventes 180/250 = 0.72
Grupo B 120 150 solventes 96/150 = 0.64
- Igualdad de oportunidad: TPR_A = 0.72 vs TPR_B = 0.64 → el modelo aprueba a un solvente de B con menos frecuencia que a uno de A. Hay disparidad tanto en resultado (DI) como en oportunidad.
- Tensión: si sube el umbral de aprobación para B a igualar TPR, cambia su FPR y puede romper calibración —exactamente la imposibilidad de Kleinberg. La decisión (qué criterio priorizar) es normativa, no técnica, y debe documentarse con las partes afectadas.
| Criterio | Qué iguala | Cuándo es apropiado | Choca con |
|---|---|---|---|
| Paridad demográfica | tasa de positivos | reparto de un bien escaso | precisión si tasas base difieren |
| Igualdad de oportunidad | TPR (recall) | no perder verdaderos positivos | paridad demográfica |
| Equalized odds | TPR y FPR | costo simétrico de errores | calibración (Kleinberg) |
| Calibración por grupo | significado del score | scores usados como probabilidad | equalized odds (Kleinberg) |
flowchart TD
A[Definir grupos protegidos y tasas base] --> B{Tasas base iguales entre grupos?}
B -- si --> C[Criterios compatibles: caso raro]
B -- no --> D[Imposibilidad de Kleinberg: elegir UN criterio]
D --> E[Medir DI, TPR y FPR por grupo]
E --> F{DI < 0.80 o disparidad de TPR?}
F -- si --> G[Intervenir: pre / in / post-procesado]
F -- no --> H[Documentar y monitorear en el tiempo]
G --> I[Registrar el criterio elegido y su justificacion]
- "Quitar el atributo protegido hace justo al modelo" (fairness through unawareness). Los proxies (código postal, nombre, historial) reconstruyen el atributo; ignorarlo no lo elimina.
- "Existe una métrica de equidad correcta". Kleinberg et al. prueban que las principales son incompatibles cuando difieren las tasas base; hay que elegir y justificar, no descubrir "la" justa.
- "DI ≥ 0.80 significa que el modelo es justo". La regla del 80 % es un umbral legal orientativo; puede cumplirse y aun así haber disparidad de oportunidad o calibración.
- "El sesgo está en el algoritmo". La mayor parte del sesgo entra por los datos (histórico, medición, representación); cambiar de modelo sin tocar los datos rara vez lo corrige.
- "Igualar tasas siempre es lo correcto". Igualar paridad demográfica cuando las tasas base difieren legítimamente puede introducir otros daños; el criterio se elige por contexto y valores.
En operación: definir grupos protegidos y el criterio de equidad priorizado con las partes afectadas y legal, medir DI/TPR/FPR/calibración por subgrupo de forma continua (no una vez), auditar interseccionalidad (combinaciones de atributos), documentar la elección y sus trade-offs en la model card (clase 170), y monitorear drift porque la equidad medida hoy puede degradarse mañana. Esta clase solo establece las definiciones, el teorema de imposibilidad y el cálculo manual del disparate impact.
python lab.pyEl laboratorio llama a ai_evolution.labs.run_lab("evaluation"). Esta
decisión evita 183 implementaciones divergentes: cada clase tiene un entrypoint
propio, pero los motores didácticos se prueban como una biblioteca común.
- tipo de laboratorio y semilla;
- entradas o decisiones observables;
- resultado estructurado;
- lista
evidencecon hechos que pueden inspeccionarse; - lista
limitationsque impide presentar la demo como producción.
- 📓
notebook.ipynb: recorrido guiado con la materia resumida. - ✍️
notebook_student.ipynb: ejercicios para resolver. - ✅
notebook_solution.ipynb: solución de referencia explicada.
| Criterio | Peso |
|---|---|
| Comprensión conceptual | 25 % |
| Ejecución reproducible | 25 % |
| Interpretación basada en evidencia | 25 % |
| Riesgos, límites y mejora propuesta | 25 % |
Consulta assessment.md para preguntas y criterio de aceptación.
| Síntoma | Causa probable | Corrección |
|---|---|---|
| El código corre, pero no hay conclusión | Se confundió ejecución con aprendizaje | Explica qué demuestra y qué no demuestra |
| El resultado cambia sin explicación | No se registró semilla o configuración | Conserva semilla, versión y parámetros |
| Se promete uso real | Se extrapoló desde una demo educativa | Declara entorno, datos, límites y revisión humana |
| Se copia una métrica aislada | No existe baseline ni costo de error | Añade comparación y criterio de decisión |
¿Debo usar una API comercial?
No. El núcleo funciona localmente. Las extensiones LIVE se documentan por separado.
¿El laboratorio representa una implementación industrial?
No por sí solo. Enseña el contrato y el patrón; producción exige integración,
seguridad, observabilidad, pruebas y operación.
¿Dónde profundizo?
Revisa las especializaciones enlazadas en el README raíz y la ruta siguiente.
- Kleinberg, Mullainathan & Raghavan (2016), Inherent Trade-Offs in the Fair Determination of Risk Scores, arXiv:1609.05807 — uso: fuente primaria del mecanismo estudiado
- Hardt, Price & Srebro (2016), Equality of Opportunity in Supervised Learning, arXiv:1610.02413 — uso: fuente primaria del mecanismo estudiado
- Barocas, Hardt & Narayanan, Fairness and Machine Learning (libro abierto) — uso: referencia consultada en su fuente original
- Mehrabi et al. (2021), A Survey on Bias and Fairness in Machine Learning, arXiv:1908.09635 — uso: fuente primaria del mecanismo estudiado
- U.S. EEOC — Uniform Guidelines on Employee Selection Procedures (regla del 80 %) — uso: referencia consultada en su fuente original
Bloque generado por
python scripts/link_papers_to_classes.py. La fuente espapers/catalog/papers.json.
| Paper | Año | Qué desbloqueó | Miniatura |
|---|---|---|---|
| P05 · Estimación eficiente de representaciones de palabras en un espacio vectorial | 2013 | El significado distribucional se vuelve barato: vectores densos entrenables sobre miles de millones de palabras. | notebook |
Cada ficha explica el problema anterior, la matemática mínima, los límites y los errores de atribución más frecuentes. Para leerlas con método: cómo leer un paper de IA · anexos matemáticos.
Bloque generado por
python scripts/link_sources_to_classes.py. Cada obra lleva su localizador verificado ensources/bibliography.json.
Los papers dicen de dónde salió el mecanismo. Estas obras lo desarrollan con el espacio que una clase no tiene: teoría completa, demostraciones y ejercicios.
| Obra | Edición | Localizador | Papel en esta clase |
|---|---|---|---|
| Huyen, Chip — Designing Machine Learning Systems | 2022 | ISBN 9781098107956 · web de la obra · pendiente de confirmar en su catálogo | obra de referencia de la parte 13 · capítulos de evaluación y monitorización |
| Russell, Stuart J. y Norvig, Peter — Artificial Intelligence: A Modern Approach | 4.ª · 2020 | ISBN 9780134610993 · web de la obra | obra de referencia de la parte 13 · capítulo de filosofía, ética y seguridad de la IA |