🧮 Double/Debiased ML

DML (Chernozhukov et al 2018): Neyman orthogonality, cross-fitting y ATE con Machine Learning

Cross-fitting Orthogonality ATE · LATE
Módulo 4 de 12
💡 Piénsalo así: DML es como un chef que cocina en dos hornos separados (cross-fitting): usa la mitad de los ingredientes para preparar el puré (estimar ĝ) y la otra mitad para la salsa (estimar el efecto). Al alternar los roles, evita el sesgo de "probar la comida mientras cocina". La ortogonalidad de Neyman hace que el estimador sea robusto a errores en el ML, como una receta que sale bien aunque no midas los ingredientes al milímetro.
Teoría: DML

Neyman Orthogonality

Intuición: La ortogonalidad de Neyman significa que el momento de estimación es "plano" con respecto a errores en las funciones ML. Si estimas mal g(X) o m(X), el efecto sobre θ̂ es de segundo orden (muy pequeño). Es como un avión con piloto automático: pequeños errores en los sensores no desvían el rumbo significativamente.

Fórmula explicada: Formalmente, E[ψ(W; θ₀, η₀)] = 0 define el momento ortogonal. La propiedad clave es que ∂/∂η E[ψ(W; θ₀, η)] evaluado en η₀ es cero. Esto significa que la dirección de η (las funciones ML) no afecta el momento en primer orden. Sin esta propiedad, el sesgo del ML contaminaría θ̂ directamente.

Caso real: En un experimento educativo con 500 estudiantes y 50 variables de control, si estimas g(X) (relación entre notas y controles) con un Random Forest que no converge a √n, la ortogonalidad de Neyman asegura que tu estimación del efecto del programa sigue siendo válida.

Error común: Pensar que cualquier ML sirve. DML requiere que el ML converja a una tasa o(n^{-1/4}), que es más lenta que √n pero no arbitrariamente lenta. ML muy malos (tasa constante) no funcionan.

E[ψ(W; θ0, η0)] = 0

Cross-fitting

Intuición: Cross-fitting divide la muestra en K partes. Usas K-1 partes para entrenar el ML y la parte restante para predecir y construir el estimador. Luego alternas roles. Esto evita el overfitting porque las predicciones se hacen en datos no usados para entrenar. Es como un examen donde estudias con unos ejercicios y te examinas con otros distintos.

Fórmula explicada: Con K=2 folds: Fold 1 entrena ĝ₁ y m̂₁ con la mitad de los datos. Fold 2 usa esos modelos para predecir y construir residuos. Luego se invierten los roles. El estimador final es θ̂ = (1/n) Σ ψ(Wᵢ; η̂_{k(i)}), donde k(i) indica el fold que no contiene la observación i.

Caso real: Para estimar el efecto de un programa de salud (D) en la tasa de recuperación (Y) con 1,000 pacientes y 200 variables clínicas, cross-fitting con K=5 folds asegura que las predicciones del modelo (como un Lasso o Random Forest) no estén contaminadas por overfitting.

Error común: Usar K demasiado pequeño (K=2) puede aumentar la varianza. K=5 es un buen balance. Usar K demasiado grande (K=n, LOOCV) puede ser costoso computacionalmente.

θ̂ = (1/n) Σ ψ(Wi; η̂k(i))

Partially Linear Model (PLR)

Intuición: El PLR asume que la variable de tratamiento D entra linealmente, mientras que los controles X pueden tener cualquier forma funcional no lineal g(X). Es un compromiso entre flexibilidad (g puede ser compleja) e interpretabilidad (θ es el efecto causal de interés).

Fórmula explicada: El modelo es Y = θD + g(X) + ε, D = m(X) + ν. La clave: Y - g(X) = θ(D - m(X)) + ε. Los residuos de Y (limpios de X) se relacionan con los residuos de D (limpios de X) a través de θ. g y m se estiman con cualquier ML (bosques, boosting, redes).

Caso real: Estudiar el efecto de un crédito (D) en la ganancia de un pequeño negocio (Y). Las características del negocio (X) pueden afectar Y de forma compleja (no lineal, con interacciones), pero el efecto del crédito es el parámetro lineal θ que nos interesa.

Error común: Asumir que g(X) y m(X) son lineales. Si usas OLS para estimar g y m cuando la verdadera relación es no lineal, el sesgo de especificación errónea puede ser grande. Por eso DML usa ML flexible.

Y - g(X) = θ(D - m(X)) + ε

ATE y LATE con DML

Intuición: DML estima el ATE cuando el tratamiento es no confundido (ignorabilidad). Con variables instrumentales, estima el LATE. El ATE es la diferencia esperada entre el resultado con tratamiento y sin tratamiento para toda la población.

Fórmula explicada: ATE = E[Y(1) - Y(0)]. En el PLR, θ = ATE cuando D afecta a Y linealmente y no hay interacciones. Con IV, θ = LATE si el instrumento Z satisface las condiciones de validez (relevancia, exclusión, etc.).

Caso real: Estimar el efecto de la universidad (D=1 si título universitario) en el salario (Y). Con DML, puedes controlar por 100+ variables de antecedentes familiares usando ML, obteniendo una estimación válida del ATE sin especificar manualmente la forma funcional de los controles.

Error común: Interpretar θ como causal cuando hay confounders no observados. DML solo controla por confounders observados X. Si hay variables omitidas que afectan D e Y, θ sigue siendo sesgado, como en cualquier método no experimental.

ATE = E[Y(1) - Y(0)]

Sesgo de Regularización

Intuición: Cuando usas ML para estimar g(X) y m(X), el ML introduce un sesgo de regularización (por ejemplo, Lasso encoge coeficientes). Si luego usas estos ĝ y m̂ directamente para estimar θ, el sesgo se transmite. DML elimina este sesgo mediante la ortogonalidad.

Fórmula explicada: En el enfoque naive: estimas ĝ con ML, luego haces OLS de Y - ĝ(X) sobre D. Esto produce θ̂_naive sesgado porque ĝ tiene sesgo de regularización. DML corrige: usa (Y - ĝ(X)) - θ(D - m̂(X)), donde los residuos se "ortogonalizan" mutuamente.

Caso real: Un investigador usa Lasso para estimar g(X) con λ=10. Lasso encoge los coeficientes, produciendo ĝ sesgada. El θ̂ naive hereda este sesgo. DML produce θ̂ insesgado porque la ortogonalidad hace que el sesgo de ĝ no afecte a θ̂ en primer orden.

Error común: Creer que DML solo funciona con ML lineales. DML funciona con cualquier ML (Random Forest, XGBoost, redes neuronales) siempre que converja a tasa o(n^{-1/4}).

Sesgo Naive ∝ Sesgo(ĝ) ≠ 0 → DML: Sesgo ≈ 0

DML en la Práctica

Intuición: Implementar DML requiere: (1) dividir la muestra, (2) estimar g y m con ML en cada fold, (3) construir residuos, (4) estimar θ por OLS de residuos. La varianza se estima con fórmulas de sándwich para inferencia válida.

Fórmula explicada: Paso 1: Divide en K folds. Paso 2: Para cada fold k, estima ĝ_k y m̂_k en los otros K-1 folds. Paso 3: Predice en fold k, calcula residuos. Paso 4: θ̂ = Σ VᵢUᵢ / Σ Vᵢ², donde V = D - m̂, U = Y - ĝ. Paso 5: Error estándar robusto.

Caso real: En R, el paquete "DoubleML" automatiza DML. En Python, "econml" y "hdm" ofrecen implementaciones listas para usar. Se recomienda K=5, usar cross-fitting, y reportar intervalos de confianza al 95%.

Error común: No hacer cross-fitting y usar toda la muestra tanto para entrenar ML como para estimar θ. Esto introduce sesgo por overfitting y viola las condiciones teóricas de DML.

θ̂ = (Σ ViUi) / (Σ Vi2)
Ejemplo paso a paso

Estimamos el efecto de un programa de capacitación (D) en el empleo (Y) con 200 personas y 10 variables de control.

Paso 1: Generamos datos donde el verdadero efecto causal es θ = 2.0. Las variables de control afectan tanto a D como a Y.

El DGP es: Y = 2·D + g(X) + ε, D = m(X) + ν. g(X) = suma de X (lineal), m(X) = 0.5·suma de X. Esto crea confounders que sesgan la estimación naive.

Paso 2: Dividimos en 2 folds (cross-fitting). Fold 1: entrenamos ML. Fold 2: predecimos y calculamos residuos.

La estimación simple de g y m se hace con OLS para mantenerlo simple, pero en la práctica se usaría ML flexible (Random Forest, XGBoost).

Paso 3: Invertimos los roles. Fold 2 entrena, Fold 1 predice. Combinamos los residuos de ambos folds.

Construimos U = Y - ĝ y V = D - m̂ para cada observación, usando siempre el modelo entrenado en el fold opuesto. Esto elimina el sesgo de overfitting.

Paso 4: Estimamos θ como la pendiente de la regresión de U sobre V (sin intercepto).

θ̂_DML = (Σ VᵢUᵢ) / (Σ Vᵢ²). Comparamos con θ̂_naive que no usa cross-fitting. DML debería tener menos sesgo y mejor cobertura.

Paso 5: La simulación muestra que DML reduce el sesgo y produce coberturas cercanas al 95%.

El enfoque naive (sin cross-fitting ni ortogonalidad) suele tener sesgo y cobertura pobre. DML con cross-fitting produce estimaciones más confiables.

Simulación: DML vs Naive ML

DGP con confounders de alta dimensión. Compara sesgo y cobertura de DML con cross-fitting vs ajuste ML naive.

Presiona "Simular" para comparar DML vs naive ML.
Mini Quiz: DML
💡 Responde las preguntas sobre DML.