Aprendizaje Automático Doble en Test A/B
El aprendizaje automático doble ajusta muchas covariables sin sesgar. Puntaje ortogonal, ajuste cruzado y la simulación donde la cobertura cae a 4,7%.

📚 Este artículo es parte de la guía Significancia Estadística en Tests A/B: La Guía.
Un modelo mejor no arregla una cuenta equivocada. Cuando usted mete predicciones de aprendizaje automático dentro de una estimación de efecto causal, el sesgo que queda no viene de que el modelo sea débil, viene de la FORMA de la cuenta, y no desaparece con más datos. En la simulación trabajada de esta guía, un ajuste con aprendiz flexible deja en pie 85 por ciento del sesgo original y derrumba la cobertura del intervalo de 95 por ciento a 4,7 por ciento, es decir, el intervalo acierta 1 vez de cada 21 en vez de 19 de cada 20. Cambiando la forma de la cuenta por un puntaje ortogonal con ajuste cruzado, el sesgo pasa a menos 0,0062 y la cobertura vuelve a 94,7 por ciento, con el MISMO aprendiz. Esta guía muestra los dos ingredientes del método, el ejemplo en escala de conversión en que una ganancia bruta de más 110,77 por ciento se convierte en más 0,52 punto porcentual con intervalo honesto, la evidencia de que el sesgo sin ajuste cruzado no se reduce con la muestra, y cuántos pliegues usar. Forma parte de nuestra guía completa de test A/B y es el marco general detrás del estimador doblemente robusto.
El problema: 40 covariables y ningún sorteo
La situación es común y no se trata de un test A/B bien hecho. Se trata de la pregunta que llega después: ¿cuál fue el efecto de una función que no fue sorteada? Quien adoptó la app, quien activó las notificaciones, quien entró al plan anual. En todos esos casos existe un montón de covariables del preperíodo y ninguna aleatorización, así que hay que ajustar.
El instinto moderno es usar un buen modelo. Entrene un árbol potenciado para predecir el resultado a partir de las 40 covariables, reste la predicción, compare lo que sobra. Chernozhukov, Chetverikov, Demirer, Duflo, Hansen, Newey y Robins muestran por qué eso falla, y su frase es directa: “tanto el sesgo de regularización como el sobreajuste en la estimación de eta cero causan un sesgo pesado en los estimadores de theta cero obtenidos al meter ingenuamente estimadores de aprendizaje automático en las ecuaciones de estimación de theta cero. Ese sesgo hace que el estimador ingenuo no logre ser consistente a la tasa de N elevado a menos un medio.”
Son dos problemas distintos, y el método tiene un remedio para cada uno:
Cómo cambia la cuenta con aprendizaje automático doble
La versión intuitiva y equivocada es: prediga el resultado con el modelo, reste, compare. La versión ortogonal usa DOS modelos auxiliares y combina los residuos de los dos.
- Ajuste un modelo del resultado dadas las covariables, separado por brazo.
- Ajuste un modelo del tratamiento dadas las covariables, que es la propensión (vea puntaje de propensión).
- Combine los dos en un puntaje en el que el error de uno de los modelos es corregido por el otro, que es la definición operativa de ortogonalidad.
- Haga todo eso con predicciones que vienen de fuera de la muestra, por ajuste cruzado.
El paso 3 es el que da el nombre “doble”. La propiedad central, en palabras de los autores, es que el impacto del sesgo de regularización y del sobreajuste “puede eliminarse usando dos ingredientes simples, aunque críticos: (1) usar momentos o puntajes ortogonales de Neyman, que tienen sensibilidad reducida respecto de los parámetros auxiliares, y (2) hacer uso del ajuste cruzado, que proporciona una forma eficiente de división de datos”.
Y la exigencia sobre los modelos auxiliares es sorprendentemente laxa: en problemas suaves, el artículo registra la “exigencia, a grandes rasgos, de que los parámetros auxiliares se estimen a la tasa de o(N elevado a menos un cuarto)”. Esa tasa es mucho más lenta que la del parámetro de interés, y es justamente lo que autoriza a usar bosque aleatorio, lasso, redes profundas y árboles potenciados en las funciones auxiliares.
La simulación: cuatro estimadores, el mismo aprendiz
Para separar el efecto de la FORMA de la cuenta del efecto del modelo, corrimos una simulación con 300 repeticiones, 800 observaciones por repetición, 6 covariables, efecto verdadero de 3,00 y adhesión al tratamiento que depende de las mismas covariables que determinan el resultado. El aprendiz auxiliar es el mismo en los tres estimadores ajustados; solo cambia la cuenta. La cobertura es la fracción de repeticiones en que el intervalo de 95 por ciento contiene el efecto verdadero (lo ideal es 95 por ciento):
| estimador | media | sesgo | desviación | error cuadrático | cobertura 95% |
|---|---|---|---|---|---|
| diferencia de medias (ignora covariables) | 3,4925 | +0,4925 | 0,2795 | 0,5660 | 56,7% |
| ajuste flexible, puntaje no ortogonal | 3,4200 | +0,4200 | 0,2343 | 0,4807 | 4,7% |
| puntaje ortogonal, sin ajuste cruzado | 3,0556 | +0,0556 | 0,1948 | 0,2023 | 92,3% |
| puntaje ortogonal con ajuste cruzado | 2,9938 | −0,0062 | 0,2439 | 0,2436 | 94,7% |
La segunda fila es la más importante de esta guía. El ajuste flexible con puntaje no ortogonal redujo el sesgo de 0,4925 a 0,4200, es decir, le quitó 15 por ciento, y al mismo tiempo estrechó el intervalo. El resultado de esa combinación es que la cobertura se desploma de 56,7 por ciento a 4,7 por ciento.
Vale la pena deletrear lo que eso significa en uso real: el intervalo de confianza de 95 por ciento de ese análisis contiene el valor verdadero en menos de 1 de cada 20 veces. El modelo más sofisticado produjo una conclusión peor que la comparación bruta, porque la comparación bruta al menos admitía ser imprecisa.
El sesgo sin ajuste cruzado no se reduce con la muestra
Esta es la evidencia que justifica la obligatoriedad del ajuste cruzado. Corrimos el estimador ortogonal con número variable de pliegues en dos tamaños de muestra. “Sin ajuste cruzado” significa modelos auxiliares ajustados en la muestra entera:
| diseño | N = 800 (200 repeticiones) | N = 1.600 (80 repeticiones) |
|---|---|---|
| sin ajuste cruzado | sesgo 0,0674 · cobertura 91,0% | sesgo 0,0605 · cobertura 91,3% |
| 2 pliegues | sesgo 0,0409 · cobertura 91,5% | sesgo 0,0120 · cobertura 96,3% |
| 5 pliegues | sesgo 0,0428 · cobertura 94,5% | sesgo 0,0206 · cobertura 93,8% |
| 10 pliegues | sesgo 0,0346 · cobertura 94,5% | sesgo 0,0129 · cobertura 93,8% |
Lea la primera fila de la tabla contra las demás. Duplicar la muestra prácticamente no movió el sesgo sin ajuste cruzado (0,0674 a 0,0605, una caída de 10 por ciento) y la cobertura quedó atascada en 91 por ciento en los dos tamaños. Con 5 pliegues, duplicar la muestra redujo el sesgo de 0,0428 a 0,0206, una caída de 52 por ciento, que es el comportamiento esperado de un estimador consistente.
Es exactamente el punto teórico del artículo: el sesgo de sobreajuste hace que el estimador ingenuo “no logre ser consistente a la tasa de N elevado a menos un medio”. No es un problema de muestra pequeña que se resuelve esperando. Con 10 veces más datos, sigue ahí.
Sobre el número de pliegues, la lectura práctica es simple: 2 pliegues sacrifican precisión (desviación 0,2772 contra 0,2346 con 5 pliegues y N igual a 800), porque cada modelo auxiliar entrena con la mitad de los datos; 10 pliegues rinden poco sobre 5 y cuestan el doble de cómputo. Cinco es el estándar razonable, y es el mismo estándar del CUPAC y del MLRATE.
Ejemplo trabajado: la función que “duplica la conversión”
Vale la pena verlo en el caso que motiva el método. Simulamos una base observacional de 60.000 usuarios en la que la adhesión a una función depende del engagement previo, y el engagement previo también determina la tasa de conversión. El efecto verdadero de la función es más 0,60 punto porcentual, y lo conocemos porque nosotros lo pusimos ahí.
La lectura bruta de esa base, tal como saldría de un panel, pegada en la calculadora:
Test z bilateral de dos proporciones. "Sin significancia" casi siempre significa que falta muestra, no que las versiones sean iguales.
Con 43.442 no adoptantes y 2.446 conversiones contra 16.558 adoptantes y 1.965 conversiones, devuelve 5,6305 por ciento contra 11,8674 por ciento, una ganancia relativa de 110,77 por ciento, diferencia de más 6,2369 puntos porcentuales, valor p por debajo de 0,0001 e intervalo de más 5,6987 a más 6,7751 punto porcentual.
Ese es el slide que circula: “los usuarios de la función convierten más del doble”. El efecto verdadero es más 0,60 punto porcentual, es decir, la lectura bruta exagera el efecto más de 10 veces, y su intervalo de confianza ni se acerca a contener la verdad.
Corriendo tres estimadores ajustados en la MISMA base, con el mismo aprendiz (regresión logística con base rica de 14 términos):
| estimador | efecto estimado | error estándar | intervalo de 95% | ¿contiene la verdad? |
|---|---|---|---|---|
| lectura bruta | +6,2369 pp | 0,2746 pp | +5,6987 a +6,7751 pp | no |
| g-computation, puntaje no ortogonal | +0,6741 pp | 0,0041 pp | +0,6660 a +0,6822 pp | no |
| aprendizaje automático doble | +0,5155 pp | 0,2796 pp | −0,0325 a +1,0634 pp | sí |
La fila del medio merece atención, y es honesta sobre el método: la estimación puntual del puntaje no ortogonal (+0,6741) quedó MÁS CERCA de la verdad que la del aprendizaje automático doble (+0,5155). El problema no es la estimación, es el error estándar de 0,0041, que declara una precisión 68 veces mayor que la real y produce un intervalo de 0,016 punto de ancho que no contiene el valor verdadero. Ese intervalo dice “el efecto está entre 0,666 y 0,682, con 95 por ciento de certeza”, y está equivocado.
El aprendizaje automático doble devuelve un intervalo de menos 0,03 a más 1,06 punto porcentual. Es un intervalo ancho, y es la respuesta correcta: esta base observacional no logra distinguir efecto cero de efecto de un punto porcentual. Lo que sí puede afirmar con seguridad es que la ganancia de 110,77 por ciento del slide no existe.
Y si usted simplemente puede sortear
Vale la pena poner la alternativa sobre la mesa, porque casi siempre es mejor. Si la función se puede sortear, la pregunta deja de exigir cualquiera de estos modelos. La calculadora de muestra dice el precio:
Cálculo por aproximación normal de dos proporciones, 2 variaciones (50/50). Cambia los campos y mira el impacto en vivo.
Con base de 5,6305 por ciento (la tasa exacta de los no adoptantes del ejemplo) y efecto objetivo de más 0,60 punto porcentual, el requisito es 24.326 visitantes por variante, o 12 días a 30.000 visitantes por semana. Doce días de sorteo devuelven una lectura con intervalo estrecho Y centrado en la verdad. Ninguna cantidad de aprendizaje automático compra eso a partir de datos observacionales, porque lo que falta ahí no es modelo, es aleatorización.
El marco sirve para cuando el sorteo es imposible: función ya lanzada para todos, adhesión voluntaria, cambio de política. En esos casos, compare también con el diseño de estímulo, que sortea la invitación en vez del uso, y con la serie temporal interrumpida.
Cómo aplicar aprendizaje automático doble en la práctica
- Liste las covariables del preperíodo antes de mirar el resultado. Una covariable elegida después de ver el resultado es la puerta de entrada del sesgo que ningún puntaje ortogonal elimina.
- Nunca incluya una variable medida durante el período de exposición. Es el mismo error fatal del CUPAC, y sesga incluso con la cuenta correcta.
- Ajuste los dos modelos auxiliares, resultado y tratamiento. Uno solo no cierra la ortogonalidad.
- Use 5 pliegues y fije la semilla de la división, para que el número sea reproducible.
- Verifique la superposición de la propensión. Si hay usuarios con propensión estimada cerca de 0 o de 1, el inverso de la propensión explota y el error estándar queda inestable. Recortar en 0,02 y 0,98 es práctica común, y la decisión tiene que constar en el informe.
- Reporte el intervalo, siempre. La estimación puntual del puntaje no ortogonal de esta guía parecía excelente; fue el error estándar el que delató el problema.
- Corra una verificación de confusor no medido. El método corrige la forma de la cuenta, no la ausencia de datos; el camino está en confusor no medido.
Errores comunes
- Creer que el método sustituye la aleatorización. No crea información que no se recolectó. El ejemplo trabajado de arriba devolvió un intervalo de 1,1 punto de ancho justamente porque la base era observacional.
- Cambiar de aprendiz para arreglar una mala cobertura. En la simulación, el aprendiz era el mismo en los tres estimadores ajustados y la cobertura varió de 4,7 a 94,7 por ciento. El problema nunca fue el aprendiz.
- Usar la muestra entera para entrenar las funciones auxiliares. Es el sesgo que no se reduce con N, medido arriba en 0,0674 y 0,0605.
- Recortar la propensión sin decirlo. El corte cambia la población estimada y tiene que aparecer en el método.
- Confundirlo con el modelado de uplift. Allí el objetivo es el efecto por usuario y una política de tratamiento; aquí es un número único bien estimado.
- Aplicarlo en una muestra pequeña y esperar un milagro. Con N igual a 800 el sesgo con ajuste cruzado todavía era 0,0428. El método corrige la tasa, no elimina la necesidad de datos.
- Reportar solo la estimación puntual “porque el modelo es bueno”. Fue exactamente lo que hizo la segunda fila de la tabla, y acertó en 4,7 por ciento de las veces.
Hágalo automático con Donnu
Todo este aparato existe por una razón: alguien no sorteó. Y cuando el sorteo no ocurrió, la parte más difícil no es el estimador, es reconstruir cuál era el estado de cada usuario ANTES de la exposición, meses después, sin ningún registro de cuándo empezó la exposición.
Donnu registra la configuración del experimento en el momento en que se crea, con la métrica primaria declarada, y mantiene el historial por experimento. Eso mantiene explícita la frontera temporal entre preexposición y exposición, que es la condición mínima para que cualquier covariable de ajuste sea legítima, y sirve para reducir varianza incluso en un test sorteado, como hace MLRATE.
Y queda la recomendación más práctica de esta guía: antes de encargar un análisis observacional con aprendizaje automático, calcule cuántos días costaría sortear la misma pregunta. En el ejemplo de arriba fueron 12 días para una respuesta centrada en la verdad, contra un intervalo de 1,1 punto de ancho en el mejor análisis observacional posible. La calculadora de tamaño de muestra hace esa comparación en un minuto.
Referencias
- Chernozhukov, V., Chetverikov, D., Demirer, M., Duflo, E., Hansen, C., Newey, W. y Robins, J. Double/Debiased Machine Learning for Treatment and Causal Parameters. 2016, versión de arXiv leída para esta guía. Fuente del diagnóstico de que “tanto el sesgo de regularización como el sobreajuste en la estimación de eta cero causan un sesgo pesado en los estimadores de theta cero obtenidos al meter ingenuamente estimadores de aprendizaje automático en las ecuaciones de estimación”, con la consecuencia de que “el estimador ingenuo no logre ser consistente a la tasa de N elevado a menos un medio”; de la formulación de los dos ingredientes del método, “(1) usar momentos o puntajes ortogonales de Neyman, que tienen sensibilidad reducida respecto de los parámetros auxiliares, y (2) hacer uso del ajuste cruzado, que proporciona una forma eficiente de división de datos”; de la condición de tasa según la cual, en problemas suaves, vale la “exigencia, a grandes rasgos, de que los parámetros auxiliares se estimen a la tasa de o(N elevado a menos un cuarto)”; y de la lista de aprendices admisibles en las funciones auxiliares, que incluye bosque aleatorio, lasso, ridge, redes profundas y árboles potenciados. arxiv.org.
- Chernozhukov, V., Chetverikov, D., Demirer, M., Duflo, E., Hansen, C. y Newey, W. Double/Debiased/Neyman Machine Learning of Treatment Effects. 2017. Nota breve de los mismos autores, usada aquí como la aplicación del marco al caso específico de esta guía: la estimación del efecto medio del tratamiento y del efecto medio sobre los tratados a partir de datos observacionales, usando puntajes ortogonales de Neyman y ajuste cruzado, con las funciones auxiliares estimadas por métodos de aprendizaje automático. arxiv.org.
- Guo, Y., Coey, D., Konutgan, M., Li, W., Schoener, C. y Goldman, M. Machine Learning for Variance Reduction in Online Experiments. NeurIPS 2021. Fuente del uso del mismo mecanismo dentro de un experimento aleatorizado, donde el objetivo es la precisión y no la corrección de sesgo: el estimador MLRATE usa predicciones de aprendizaje automático del resultado para reducir la varianza y “emplea ajuste cruzado para evitar sesgos de sobreajuste”, con la garantía de que, si las predicciones no tienen correlación con los resultados, se comporta asintóticamente no peor que la diferencia simple de medias. arxiv.org.
Lee también: Estimador doblemente robusto · Puntaje de propensión · CUPAC · Ajuste por regresión · Confusor no medido · Calculadora de significancia · Leia em português · Read in English
Preguntas frecuentes
- ¿Qué es el aprendizaje automático doble?
- Es un marco para estimar un efecto causal cuando existen muchas covariables y el ajuste se hace con modelos flexibles. Chernozhukov y coautores muestran que meter predicciones de aprendizaje automático en una ecuación de estimación genera un sesgo pesado, y que ese sesgo se elimina con dos ingredientes: un puntaje ortogonal de Neyman, poco sensible al error en las funciones auxiliares, y el ajuste cruzado (cross-fitting), que es división de la muestra en pliegues. El nombre doble viene de entrenar dos modelos auxiliares, uno para el resultado y uno para el tratamiento.
- ¿Cuál es la diferencia entre el aprendizaje automático doble y el ajuste por regresión común?
- La diferencia es la forma de la cuenta, no el modelo. En la simulación de esta guía, un ajuste con aprendiz flexible pero puntaje no ortogonal mantiene casi todo el sesgo de la comparación bruta (0,4200 contra 0,4925) y la cobertura del intervalo de 95 por ciento cae a 4,7 por ciento. Con puntaje ortogonal y ajuste cruzado, el sesgo pasa a menos 0,0062 y la cobertura sube a 94,7 por ciento. Un modelo mejor sin la cuenta correcta empeora la conclusión.
- ¿Por qué el ajuste cruzado es obligatorio?
- Porque un modelo auxiliar ajustado en la muestra entera ya vio cada observación y por eso subestima su residuo, lo que deja un sesgo que no desaparece con más datos. En la simulación de esta guía, duplicar la muestra de 800 a 1.600 reduce el sesgo del estimador con ajuste cruzado de 0,0428 a 0,0206, casi a la mitad, mientras que el sesgo sin ajuste cruzado pasa de 0,0674 a 0,0605, prácticamente quieto, y la cobertura queda atascada en 91 por ciento en los dos tamaños.
- ¿Cuántos pliegues usar en el ajuste cruzado?
- Cinco es la elección estándar y fue la mejor en la prueba hecha para esta guía. Con 2 pliegues el sesgo es bajo pero la desviación sube a 0,2772 contra 0,2346 con 5 pliegues, porque cada modelo auxiliar entrena con la mitad de los datos. Con 10 pliegues la ganancia sobre 5 es marginal (desviación 0,2329) y el costo de cómputo se duplica. La cobertura con 5 y con 10 pliegues dio igual, 94,5 por ciento.
- ¿El aprendizaje automático doble sirve para un test A/B aleatorizado?
- Sirve, pero para ganar precisión, no para arreglar sesgo: en un sorteo válido no hay sesgo que arreglar. El uso natural es reducir varianza ajustando por covariables del preperíodo, y es exactamente lo que hace el estimador MLRATE, con ajuste cruzado para evitar el sesgo de sobreajuste. Cuando el sorteo NO existe, el marco pasa a tratar de sesgo, y ahí vale la advertencia de siempre: ningún ajuste corrige un confusor que usted no midió.
- ¿Cuál es la exigencia teórica sobre los modelos auxiliares?
- Tienen que converger lo bastante rápido, pero no necesitan ser perfectos. Chernozhukov y coautores registran que, en problemas suaves, la condición se traduce en la exigencia, a grandes rasgos, de que los parámetros auxiliares se estimen a una tasa de o(N elevado a menos un cuarto). Es una tasa mucho más lenta que la del parámetro de interés, y es eso lo que permite usar bosque aleatorio, lasso, redes y árboles potenciados en las funciones auxiliares.