Estadística

Atrición Diferencial en Test A/B: los límites de Lee

La atrición diferencial hace mentir a la media condicional. Los límites de Lee acotan el efecto cuando el tratamiento cambia quién queda en el análisis.

Ilustración plana de dos embudos verdes lado a lado, uno lleno de esferas con algunas escapando por el costado y otro vertiendo pocas esferas en un vaso pequeño

La atrición diferencial es cuando el tratamiento cambia quién queda en el análisis, y no solo el valor de la métrica. A partir de ahí la media entre los sobrevivientes compara poblaciones distintas: en el ejemplo trabajado de esta guía, el efecto verdadero era de 0,10 y la media condicional devolvió 0,0422 con intervalo del 95 por ciento de 0,0258 a 0,0585, es decir, altamente significativo y sin contener el valor correcto. Esta guía muestra cómo detectar el problema antes de leer el resultado, cómo acotar el efecto real con los límites de Lee cuando la métrica solo existe para quien quedó, y cuál es la métrica alternativa que no sufre el problema. Forma parte de nuestra guía completa de test A/B y continúa la conversación de intención de tratar y paradoja de Simpson.

La aleatorización protege el denominador que aleatorizaste, y solo ese

Un test A/B distribuye usuarios entre dos brazos de forma aleatoria y, con eso, vuelve comparables a los grupos. Esa comparabilidad es una propiedad del conjunto aleatorizado. No acompaña a ningún subconjunto definido después.

Toda métrica calculada sobre “quien llegó hasta aquí” carga un denominador que el tratamiento pudo haber cambiado. Algunos ejemplos que aparecen todas las semanas:

En todos, la pregunta interesante es sobre el efecto del cambio, y la cuenta hecha responde a otra cosa: cuál es la diferencia entre dos grupos que se formaron de maneras distintas.

El nombre de esto en la literatura de experimentación online es desbalanceo de muestra de la métrica. Dmitriev, Gupta, Kim y Vaz describen el fenómeno en el artículo de trampas de interpretación de KDD 2017 y son directos sobre la consecuencia: en una situación así el valor de la métrica no puede ser confiable, la diferencia entre tratamiento y control puede moverse en cualquier dirección y la frase “la nueva funcionalidad causó tal variación en la métrica” deja de ser válida.

Un caso real: 8,32 por ciento más lento sin que nada se haya vuelto más lento

El ejemplo más didáctico que conocemos está en ese mismo artículo. Un experimento en la página de inicio de MSN cambió el comportamiento de los enlaces: en el tratamiento, hacer clic en un enlace abría la página de destino en una pestaña nueva; en el control, en la misma pestaña. El resultado llegó con 8,32 por ciento de aumento en el tiempo de carga de la página de inicio, una degradación enorme para un cambio de una línea de JavaScript.

No había bug. Lo que había era un denominador distinto. En el control, el usuario que hacía clic en un enlace y quería volver usaba el botón atrás del navegador, lo que recargaba la página de inicio. Esas recargas eran rápidas, porque venían del caché. En el tratamiento, el enlace abría en una pestaña nueva y la página de inicio permanecía abierta en la pestaña anterior, así que esas recargas rápidas simplemente no ocurrían. El tratamiento tuvo 7,8 por ciento menos cargas de la página de inicio, y las que desaparecieron eran justamente las más rápidas.

La media empeoró porque la población de cargas cambió. Ninguna carga se volvió más lenta.

Cómo hacer desaparecer observaciones rápidas empeora la media sin empeorar nadaDos franjas horizontales de puntos que representan tiempos de carga, del rápido a la izquierda al lento a la derecha. En la franja superior, el control, hay muchos puntos claros agrupados en la región rápida, correspondientes a las recargas por el botón atrás, además de los puntos oscuros repartidos por el resto. En la franja inferior, el tratamiento, los puntos claros de la región rápida desaparecieron y solo quedaron los puntos oscuros, idénticos a los del control. Un marcador de media en cada franja muestra que la media del tratamiento está más a la derecha, es decir, más lenta, aunque ningún punto individual se haya movido.Ningún punto se movió, la media se moviócontrolmediatratamientomedialas recargas rápidas por el botón atrás dejaron de existirrápidolentotiempo de carga
El experimento de MSN reportado por Dmitriev y colegas: 8,32 por ciento de empeoramiento en el tiempo medio de carga causado por 7,8 por ciento menos cargas, todas ellas rápidas.

Ejemplo trabajado: un onboarding que activa más y parece entregar menos

Para medir el tamaño del daño, simulamos un caso en el que la verdad es conocida. El escenario: un SaaS prueba un onboarding nuevo. Cada usuario tiene una calidad latente que determina tanto la probabilidad de activar como el valor que genera. El onboarding nuevo facilita la activación, y el valor generado por quien activaría de todos modos sube 0,10.

Los parámetros del mundo simulado:

Corrimos con 30.000 usuarios por brazo, semilla fija. Primero, la verificación que precede a cualquier lectura:

Calculadora de significancia estadística
Control (A)
Variación (B)
Control (A) · Tasa-
Variación (B) · Tasa-
Mejora relativa-
valor-p-
IC 95% de la diferencia-

Test z bilateral de dos proporciones. "Sin significancia" casi siempre significa que falta muestra, no que las versiones sean iguales.

Pegando en la calculadora de arriba el control con 30.000 visitantes y 11.972 activaciones (39,9067 por ciento) contra el tratamiento con 30.000 visitantes y 13.817 activaciones (46,0567 por ciento), el resultado es z de 15,2150, valor p por debajo de 0,000001 y diferencia de 6,1500 puntos porcentuales, con intervalo de 5,3593 a 6,9407. Ese número es excelente noticia de producto y pésima noticia de lectura: avisa que cualquier media calculada entre los activados compara grupos formados de maneras distintas.

Y es lo que ocurre. Entre quienes activaron, el valor medio fue 2,4774 en el control y 2,5196 en el tratamiento:

cuenta resultado error estándar intervalo del 95% ¿contiene la verdad (0,10)?
media entre activados (ingenua) más 0,0422 0,00833 de 0,0258 a 0,0585 no
límites de Lee de menos 0,1267 a más 0,2052 recorte de 13,3531% ancho de 0,3319 sí
métrica incondicional más 4,8567 pp ver sección más adelante de 4,1336 a 5,5797 pp no aplica

La media ingenua devuelve una t de 5,0623 y un intervalo apretado que excluye el valor verdadero. No es falta de muestra: con 30 mil por brazo el intervalo es estrecho, y está estrecho alrededor del número equivocado. Más tráfico solo aprieta más el intervalo en torno al mismo sesgo.

A quién trajo el tratamiento dentro de la muestraDiagrama de dos columnas que representa la población ordenada por calidad latente, de arriba hacia abajo. En la columna del control, una línea de corte deja el 40 por ciento de los usuarios por encima, dentro de la muestra medida, y el 60 por ciento por debajo, fuera. En la columna del tratamiento, la línea de corte baja y deja el 46 por ciento dentro. La franja de 6 puntos porcentuales entre las dos líneas está destacada y rotulada como marginales, usuarios que solo entran en la muestra del tratamiento y no tienen equivalente en el control. Una anotación registra que esos usuarios entran en la media del tratamiento trayendo valores bajos, lo que empuja la media hacia abajo sin que nadie haya empeorado.Los marginales entran solo de un ladocontrol40% medidos60% fueratratamiento40% medidos6% marginales54% fueraestos no tienen par en el controlCalidad latente decreciente de arriba hacia abajo. La media del tratamiento incluye una franja que la del control no tiene.
El tratamiento bajó el corte de activación. La franja de 6 puntos porcentuales que entró está compuesta por los usuarios más débiles, y es ella la que empuja la media condicional hacia abajo.

Límites de Lee: recortar en vez de adivinar

David Lee publicó en 2009 un procedimiento que resuelve ese problema de una forma honesta: en vez de estimar un número, acota el efecto. El razonamiento, en el resumen del propio artículo, es identificar el número excedente de individuos que fueron inducidos a entrar en la muestra por causa del tratamiento y entonces recortar las colas superior e inferior de la distribución del desenlace por ese número, produciendo los límites del peor caso.

La cuenta tiene tres pasos:

  1. Calcula la fracción de recorte. Es la diferencia entre las tasas de presencia, dividida por la tasa del brazo tratado. En nuestro ejemplo: (46,0567 menos 39,9067) dividido por 46,0567 igual a 13,3531 por ciento.
  2. Recorta el tope de la distribución del tratado por esa fracción y compara la media resultante con el control. Eso da el límite inferior, el escenario en el que los marginales eran los mejores de la muestra.
  3. Recorta la base por la misma fracción y compara. Eso da el límite superior, el escenario en el que los marginales eran los peores.

En nuestros datos, 13,3531 por ciento de 13.817 observaciones son 1.845 observaciones recortadas de cada lado. El cuantil de corte inferior queda en 1,7798 y el superior en 3,2657. Las medias recortadas son 2,3506 y 2,6826, contra el control de 2,4774.

límite media recortada del tratamiento contra el control lectura
inferior 2,3506 (sin los 1.845 mayores) menos 0,1267 peor caso: los marginales eran los mejores
superior 2,6826 (sin los 1.845 menores) más 0,2052 mejor caso: los marginales eran los peores

El intervalo de identificación va de menos 0,1267 a más 0,2052. Contiene el valor verdadero de 0,10, y contiene el cero. La traducción honesta de ese resultado es: con 6,15 puntos porcentuales de atrición diferencial, esos datos no logran ni decir el signo del efecto sobre el valor generado. Es incómodo, y es verdad. El intervalo apretado de 0,0258 a 0,0585 era consuelo falso.

La estimación ingenua contra los límites de LeeGráfico de intervalos horizontales. Una línea vertical discontinua marca el cero y otra marca el valor verdadero de 0,10. La barra superior, corta y oscura, es el intervalo del 95 por ciento de la media condicional, yendo de 0,0258 a 0,0585, enteramente a la izquierda del valor verdadero. La barra inferior, mucho más larga y en tono claro, es el intervalo de identificación de los límites de Lee, yendo de menos 0,1267 a más 0,2052, que atraviesa el cero y contiene el valor verdadero.Estrecho y equivocado contra ancho y correctoceroverdad: 0,10media condicional0,02580,0585límites de Leemenos 0,1267más 0,2052contiene el ceroEscala en unidades del valor generado por usuario activado. El intervalo estrecho no contiene el valor verdadero.
Los límites de Lee no estrechan la respuesta: muestran cuánto se desconoce realmente la respuesta cuando el tratamiento toca el denominador.

Repetimos el diseño en 1.200 réplicas con 12.000 usuarios por brazo para confirmar que no es suerte de semilla:

verificación resultado
media condicional, promedio de las réplicas más 0,0484 (verdadero 0,10)
sesgo de la media condicional menos 0,0516
límite inferior medio menos 0,1165
límite superior medio más 0,2080
réplicas en que los límites contienen el valor verdadero 100,00%

La cuenta original de Lee, en salarios de verdad

Vale ver el procedimiento en la aplicación que lo originó, porque muestra el caso feliz: recorte pequeño, límites útiles. Lee evaluó el Job Corps, un gran programa federal de formación profesional en Estados Unidos. El desafío es que el salario solo existe para quien está empleado, y el programa también cambia la probabilidad de estar empleado. Es el mismo problema, con otro vocabulario.

En la semana 208 después de la aleatorización:

cantidad tratamiento control
observaciones 5.546 3.599
proporción con salario observado 0,607 0,566
media del logaritmo del salario entre empleados 2,031 1,997

La diferencia ingenua es 0,034. La fracción de recorte es (0,607 menos 0,566) dividido por 0,607, es decir, 0,068. El cuantil de corte queda en 1,636 y la media recortada por arriba en 2,090, lo que da un límite superior de 0,093. Por el otro lado, el cuantil en 2,768 y la media recortada en 1,978 dan un límite inferior de menos 0,019. Lee reporta errores estándar de 0,0123 y 0,0165 para los dos límites y un intervalo de confianza de menos 0,052 a 0,117.

El ancho de los límites aquí es 0,112, y Lee registra que eso es un catorceavo del ancho que el enfoque alternativo de Horowitz y Manski produciría en los mismos datos. Los límites de la semana 208 contienen el cero, pero los de la semana 90 no lo contienen, y la conclusión del artículo es que la evidencia apunta a un efecto positivo sobre salarios, aunque no muy por encima del 10 por ciento.

La lección práctica: con 4,1 puntos porcentuales de atrición diferencial, los límites todavía deciden cosas. Con 6,15 puntos, en nuestro ejemplo, ya no decidían el signo. La diferencia entre un caso y otro no es el método, es cuánta atrición generó el diseño.

Cuánto cuesta la atrición diferencial en ancho

Repetimos la simulación variando solo la tasa de activación del tratamiento, con el mismo efecto verdadero de 0,10:

activación del tratamiento atrición diferencial fracción de recorte límite inferior límite superior ancho media condicional
41% 1 pp 0,0216 más 0,0495 más 0,1195 0,0700 más 0,0853
43% 3 pp 0,0688 menos 0,0296 más 0,1604 0,1899 más 0,0673
46% 6 pp 0,1304 menos 0,1264 más 0,2011 0,3275 más 0,0405
50% 10 pp 0,2019 menos 0,2311 más 0,2439 0,4751 más 0,0106
55% 15 pp 0,2744 menos 0,3411 más 0,2807 0,6218 menos 0,0257

Dos lecturas salen de ahí.

Primera: el ancho crece mucho más rápido que la atrición. Triplicar la atrición de 1 a 3 puntos casi triplica el ancho; de 1 a 15 puntos, el ancho crece casi nueve veces. Con 1 punto porcentual de atrición, los límites van de 0,0495 a 0,1195 y ya excluyen el cero: el resultado decide.

Segunda, y más incómoda: la media condicional se degrada monotónicamente y llega a cambiar de signo. Con 15 puntos de atrición diferencial, devuelve menos 0,0257 en un mundo en el que el efecto verdadero es más 0,10. Un equipo que leyera solo esa columna concluiría que el onboarding nuevo, que activa 15 puntos porcentuales más, empeoró el valor generado. No empeoró nada.

La salida barata: una métrica que existe para todos los aleatorizados

Antes de recortar la distribución, prueba la solución más simple: cambiar la métrica por una que esté definida para todo usuario aleatorizado. En vez de “valor medio entre quienes activaron”, mide “proporción de todos los aleatorizados que activaron y superaron un umbral de valor”.

En nuestro ejemplo, con umbral en 2,2 unidades de valor: 7.888 de los 30.000 usuarios del control (26,2933 por ciento) contra 9.345 de los 30.000 del tratamiento (31,1500 por ciento). Pegando esos cuatro números en la calculadora de este artículo: z de 13,1462, valor p por debajo de 0,000001, diferencia de 4,8567 puntos porcentuales, ganancia relativa de 18,4711 por ciento e intervalo de 4,1336 a 5,5797 puntos porcentuales.

Esa cuenta es limpia porque el denominador es el de la aleatorización. Lo que responde es distinto, y vale declararlo: mide el efecto conjunto de activar a más gente y de entregar valor, sin separar las dos cosas. Para una decisión de lanzamiento, es exactamente la pregunta correcta, y es la misma lógica de intención de tratar aplicada al desenlace. Para un diagnóstico de “el producto mejoró para quien ya lo usaba”, no sirve, y ahí vuelves a los límites.

Dmitriev y colegas hacen la misma recomendación para embudos: medir tasas de éxito condicionales e incondicionales, siendo la incondicional calculada sobre todos los usuarios que entraron en el tope del embudo, y no solo sobre quienes intentaron la etapa.

Un cuidado que la pieza sobre múltiples métricas en un test ya cubre: el umbral de valor tiene que elegirse antes de mirar los datos. Probar 1,8, 2,0 y 2,2 y publicar el que dio significativo es prueba múltiple disfrazada de elección de métrica.

Checklist de atrición diferencial antes de leer cualquier media condicional

  1. Mide la tasa de presencia en los dos brazos y prueba la diferencia como si fuera una métrica, igual que en una verificación de reparto desigual de tráfico.
  2. Si la diferencia es significativa, para. Ninguna media calculada después de ese punto es comparable, por más tráfico que juntes.
  3. Prueba primero la métrica incondicional, en el denominador de la aleatorización. Es la solución más barata y casi siempre es la pregunta de negocio correcta.
  4. Si la métrica solo existe para quien quedó, calcula los límites de Lee. Son tres líneas de código: fracción de recorte, dos cuantiles, dos medias recortadas.
  5. Reporta el ancho junto con los límites. Un ancho grande es información, no fracaso: dice que el diseño no permite la conclusión pretendida.
  6. Verifica la monotonicidad de la selección. Si el tratamiento saca gente de la muestra en algún subgrupo mientras trae gente en otro, los límites no valen tal como están.
  7. Segmenta con criterio anterior a la aleatorización. Un segmento definido por comportamiento post tratamiento reproduce el problema, y es el caso de Bing reportado por Dmitriev y colegas, en el que dos segmentos subieron mientras la población combinada no se movió, la paradoja de Simpson en forma de trampa operativa.

Errores comunes

Hazlo automático en Donnu

La raíz del problema casi nunca es estadística: es el momento en el que el dato se graba. Herramientas que registran al usuario en el experimento cuando alcanza la etapa medida pierden para siempre el denominador de la aleatorización, y en ese modelo de datos ni la verificación de presencia ni los límites de Lee son calculables, porque la información de quién desapareció no existe en ninguna parte.

Donnu graba la asignación en el instante de la aleatorización, separada de los eventos de etapa, lo que mantiene disponibles los dos números de los que depende este artículo: cuántos fueron aleatorizados y cuántos llegaron. Si tu herramienta actual solo registra a quien completó, el paso inmediato es agregar un evento de exposición en la asignación, y mientras tanto correr la comparación de presencia con la calculadora de valor p antes de cualquier lectura de media condicional. Una diferencia significativa ahí es motivo suficiente para no publicar el resultado.

Referencias

Lee también: Intención de tratar · SRM: reparto desigual de tráfico · Paradoja de Simpson · Análisis por disparo y dilución · Métricas de guardrail · Calculadora de valor p · Leia em português

Preguntas frecuentes

¿Qué es la atrición diferencial en un test A/B?
Es cuando el tratamiento cambia cuántos usuarios llegan al punto en el que se mide la métrica, y no solo el valor de la métrica. Una variación que activa a más gente, retiene a más gente o hace que más gente responda la encuesta cambia la composición de quien entra en la cuenta. A partir de ahí, comparar la media entre los dos brazos compara poblaciones distintas, y la diferencia deja de ser causal incluso con aleatorización perfecta y millones de usuarios.
¿Por qué la media entre quienes completaron el flujo es engañosa?
Porque los usuarios que el tratamiento trajo dentro del flujo son, típicamente, los marginales: los que estaban más cerca de desistir. Entran en la media del tratamiento y no tienen par en el control. En el ejemplo trabajado de esta guía, el efecto verdadero era de 0,10 y la media condicional devolvió 0,0422 con intervalo de 0,0258 a 0,0585, un resultado altamente significativo cuyo intervalo del 95 por ciento no contiene el valor verdadero.
¿Qué son los límites de Lee?
Es un procedimiento de recorte publicado por David Lee en 2009 que acota el efecto real en vez de estimarlo con un solo número. La idea: identificar el exceso de usuarios que solo aparecieron por causa del tratamiento y recortar esa fracción del tope y de la base de la distribución del brazo tratado, produciendo el mejor y el peor escenario compatibles con los datos. Lee muestra que los límites son exactos, en el sentido de ser los más estrechos consistentes con lo observado.
¿Los límites de Lee dependen de alguna suposición?
De una: monotonicidad de la selección, es decir, nadie que hubiera llegado al final bajo control deja de llegar bajo tratamiento. Es la misma familia de suposición usada en estudios de adhesión parcial, pero aplicada a la presencia en la muestra en vez de a la recepción del tratamiento. Fuera de eso, el procedimiento no exige restricción de exclusión ni soporte acotado para el desenlace, y es esa economía de suposiciones lo que lo vuelve útil en la práctica.
¿Existe una salida más simple que recortar la distribución?
Sí, y debe ser el primer intento: cambiar la métrica por una que exista para todos los aleatorizados. En vez de la media entre quienes activaron, mide la proporción de todos los aleatorizados que activaron y superaron un umbral de valor. En el ejemplo de esta guía, esa métrica incondicional pasó de 26,2933 por ciento en el control a 31,1500 por ciento en la variación, con valor p por debajo de 0,000001 e intervalo de 4,1336 a 5,5797 puntos porcentuales, sin ningún problema de selección.
¿Cómo detectar la atrición diferencial antes de leer el resultado?
Probando la tasa de presencia como si fuera una métrica. Compara cuántos usuarios de cada brazo llegaron al punto de medición y corre la misma cuenta de dos proporciones que correrías en una verificación de reparto desigual de tráfico. Si esa diferencia es significativa, cualquier media condicional de ese punto en adelante está contaminada. Dmitriev y colegas llaman al fenómeno desbalanceo de muestra de la métrica y registran que suele invalidar la métrica entera.