Estadística

Ley de Twyman: el resultado demasiado bueno para ser verdad

Ley de Twyman: por qué una victoria espectacular en test A/B suele ser bug y cómo diseñar la ronda de confirmación que resuelve la duda.

Ilustración plana de un globo enorme flotando por encima de una hilera de globos pequeños iguales, con un alfiler acercándose, en tonos de verde profundo

Un resultado espectacular de test A/B es evidencia sobre tu instrumentación antes de ser evidencia sobre tu producto. La ley de Twyman, tal como Kohavi y colegas la enuncian en las reglas de bolsillo del KDD 2014, dice que cualquier número que parezca interesante o distinto suele estar equivocado, y la consecuencia operativa es que una victoria excepcionalmente fuerte debe disparar una caza del bug y una ronda de confirmación, no un lanzamiento. Esta guía cubre de dónde viene la ley, la aritmética bayesiana que la hace rigurosa en vez de folclórica, cuatro casos documentados en que una victoria grande era artefacto de medición, un ejemplo trabajado de un resultado estadísticamente impecable que aun así no debería subir, y cómo dimensionar la ronda de confirmación que resuelve la cuestión. Forma parte de nuestra guía completa de test A/B y conversa con test A/A.

La ley de Twyman, y por qué es procedimiento operativo

Kohavi, Deng, Longbotham y Xu, al consolidar siete reglas de bolsillo generalizadas a partir de miles de experimentos controlados en Amazon, Booking.com, LinkedIn y en varias propiedades de Microsoft para el KDD 2014, dedican una regla a la asimetría con que los equipos leen resultados. La descripción que hacen del fallo humano vale citarla porque es el mecanismo, no la moraleja: estamos inclinados a resistirnos y cuestionar los resultados negativos sobre nuestra estupenda funcionalidad nueva, así que cavamos más hondo para encontrar la causa. Pero, cuando el efecto es positivo, la inclinación es celebrar en vez de cavar más hondo y buscar anomalías.

Su respuesta es instalar una regla que quita la discrecionalidad de la mesa. Cuando los resultados son excepcionalmente fuertes, invocan la ley de Twyman: cualquier número que parezca interesante o distinto suele estar equivocado. El artículo acredita la formulación a Twyman a través de una nota de A. S. C. Ehrenberg en el Journal of the Royal Statistical Society, y los autores observan que el mismo reflejo es estándar en otros rincones de la ciencia: ningún editor moderno celebra una prueba enviada de que P es igual a NP, la manda a un revisor a encontrar el error.

La regla no es escepticismo por deporte. Es una afirmación sobre tasas base, y es comprobable.

La aritmética bayesiana que hace rigurosa la ley

El mismo artículo lo formaliza. Sea alfa el nivel de significancia, beta la tasa de error tipo II y pi la probabilidad a priori de que la hipótesis alternativa sea verdadera. Entonces la probabilidad posterior de un verdadero positivo dado un resultado estadísticamente significativo es

P(verdadero positivo | significativo) = pi × (1 − beta) ÷ [ pi × (1 − beta) + (1 − pi) × alfa ]

Ese es el mecanismo entero. El umbral de valor-p está fijo en 0,05 y la potencia está fija en 80 por ciento en todas las filas de abajo. Lo único que cambia es la frecuencia con que las ideas de ese tipo funcionan de hecho, y eso cambia la respuesta por completo.

Probabilidad a priori de que la idea funcione Probabilidad posterior de que la victoria sea real, dado p por debajo de 0,05
1 de cada 3 88,9 por ciento
1 de cada 5 80,0 por ciento
1 de cada 10 64,0 por ciento
1 de cada 50 24,6 por ciento
1 de cada 100 13,9 por ciento
1 de cada 500 3,1 por ciento

Recalculamos esta tabla a partir de la fórmula de arriba, con alfa 0,05 y potencia 0,8. Dos de las filas son números publicados por el propio artículo y coinciden exactamente: Kohavi y colegas reportan 89 por ciento para una previa de 1 de cada 3, que describen como la tasa media de éxito reportada en varios experimentos en Microsoft, y 3,1 por ciento para una previa de 1 de cada 500, que es la tasa que dan para un resultado de ruptura en Bing. El resto de la tabla es la misma aritmética extendida por el rango.

Probabilidad posterior de que una victoria significativa sea real, por previaCon alfa 0,05 y 80 por ciento de potencia, una previa de 1 de cada 3 da 88,9 por ciento de probabilidad posterior de que la victoria significativa sea real. Una previa de 1 de cada 5 da 80,0 por ciento, 1 de cada 10 da 64,0 por ciento, 1 de cada 50 da 24,6 por ciento, 1 de cada 100 da 13,9 por ciento y 1 de cada 500 da 3,1 por ciento. El valor-p es idéntico en todos los casos.Mismo valor-p, misma potencia, seis conclusiones distintasalfa 0,05, potencia 80 por ciento, solo cambia la previa050%100%88,9%1 de cada 3artículo80,0%1 de cada 564,0%1 de cada 1024,6%1 de cada 5013,9%1 de cada 1003,1%1 de cada 500artículo
Dos barras, 1 de cada 3 y 1 de cada 500, son los números publicados por Kohavi y colegas; el resto es la misma fórmula extendida. Una alegación de ruptura se juzga contra la tasa base de rupturas, y esa tasa base es brutal.

La traducción práctica: cuanto más raro el resultado que estás alegando, más evidencia hace falta para alegarlo, y un valor-p por debajo de 0,05 no se convierte en más evidencia cuando la alegación se vuelve más rara. Es exactamente la misma evidencia.

Cuatro victorias que eran artefacto de medición

La razón para tomarse en serio la tasa base es que las explicaciones alternativas están documentadas y son banales. Los cuatro casos de abajo son de los artículos de Microsoft.

Una caída del 64 por ciento en los clics que era buena noticia. Kohavi y colegas (KDD 2014) describen a un equipo de Office Online testeando el rediseño de una página con una llamada a la acción fuerte. Las compras de verdad eran difíciles de rastrear, así que el equipo usó clics en enlaces generadores de ingresos como métrica sustituta, asumiendo que clics por tasa de conversión es igual a ingresos. El rediseño produjo una reducción del 64 por ciento en clics por usuario. El tamaño chocante es lo que hizo que la gente mirara, y la explicación fue que la suposición de una tasa estable de clic a compra estaba equivocada: la página de tratamiento mostraba el precio, así que atraía menos clics de usuarios más cualificados, que convertían a una tasa mucho más alta.

Más clics en una página más lenta. Se añadió un JavaScript a la página de resultados de Bing, lo que normalmente hace todo más lento y debería costar engagement. Los clics por usuario subieron. Siguiendo la ley de Twyman, investigaron. El seguimiento de clics se basa en beacons y algunos navegadores descartan la llamada cuando el usuario está saliendo de la página; el JavaScript extra mejoró la fidelidad del seguimiento de clics, no el acto de hacer clic.

Una migración de CDN que mejoró todo. A lo largo de varios meses de 2013, Bing cambió su red de entrega de contenido de Akamai al propio Bing Edge. El clic en la página de inicio mejoró, el uso de funcionalidades subió, el abandono cayó. Misma causa raíz: mejor fidelidad en el seguimiento de clics. Para cuantificarlo, sustituyeron el seguimiento por beacon por redirecciones, un método con pérdida de clic despreciable, y encontraron que la tasa de pérdida de clic en algunos navegadores cayó más del 60 por ciento. Buena parte de la ganancia a lo largo del tiempo era artefacto.

Una mejora dramática que contaba doble. Un experimento en MSN probó un algoritmo mejor de sugerencia automática, y las búsquedas en Bing procedentes de MSN mejoraron dramáticamente. El código nuevo estaba, en la práctica, disparando dos búsquedas cuando el usuario elegía una sugerencia; el navegador desconectaba una de ellas, así que solo se mostraba una página de resultados, pero las dos se contaban.

El artículo de 2012 sobre resultados intrigantes añade el patrón que cierra el ciclo, en un caso en que métricas sin relación con el cambio se movieron en direcciones inesperadas con alta significancia estadística: corrimos el experimento de nuevo en una muestra mayor para aumentar la potencia estadística, y muchos de los efectos desaparecieron. La causa fue el arrastre de un experimento anterior en los mismos buckets de usuario, un efecto que midieron como todavía visible alrededor de tres semanas después en un caso y no totalmente recuperado tras tres meses en otro. Para eso sirve una ronda de confirmación.

Ejemplo trabajado: un resultado impecable que no deberías subir

Aquí viene la parte incómoda. Corre estos números en la calculadora:

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.

Brazo Visitantes Conversiones Tasa
A, control 40.000 1.200 3,000 por ciento
B, variante 40.000 1.680 4,200 por ciento

La calculadora devuelve más 1,200 punto porcentual, más 40,00 por ciento relativo, z = 9,11, valor-p por debajo de 0,0001, con intervalo de confianza del 95 por ciento de más 0,942 a más 1,458 punto porcentual. No hubo peeking, no hubo reparto desigual de tráfico, no hubo problema de comparaciones múltiples. Por toda comprobación estadística este experimento pasa, y el intervalo está cómodamente lejos de cero.

Ahora aplica la tasa base. El efecto mínimo detectable de este diseño, con 40.000 por brazo y tasa base del 3 por ciento, es más 11,3 por ciento relativo, así que el efecto observado es más de tres veces el menor efecto que el test fue montado para ver. Un cambio de texto que produce un 40 por ciento de ganancia relativa en la conversión del checkout no está en la misma categoría del movimiento que Kohavi y colegas reportan como típico: en un sitio como Bing, donde miles de experimentos corren por año, la mayoría falla y los que salen bien mejoran métricas clave en un 0,1 a 1,0 por ciento después de diluirlos al impacto total. Ponlo en su cuadro de Sesiones por usuario: con una distribución de efectos de experimento centrada en cero y desviación estándar del 0,25 por ciento, señalan que una mejora del 2,0 por ciento queda a ocho desviaciones estándar de la media, con probabilidad del orden de uno entre mil billones antes de considerar cualquier otro factor. Su conclusión no es celebrar, es ponerse a trabajar para encontrar el bug, que en su experiencia suele ser error de instrumentación.

Así que la acción correcta sobre este resultado no es subirlo ni descartarlo. Es correr la checklist de bug y después correr una confirmación dimensionada para el efecto que de hecho aceptarías.

Dónde queda un resultado espectacular en la distribución de los efectos realesLa distribución de los efectos observados de experimento en una métrica clave está centrada en cero con desviación estándar pequeña, así que casi todo resultado real se agrupa cerca de ningún cambio. Una victoria espectacular alegada queda muy lejos en la cola, a muchas desviaciones estándar del centro, en una región donde casi ningún resultado genuino cayó jamás.Casi todo efecto real es pequeño; el espectacular no cabe en el gráficosin cambiopérdida pequeñaganancia pequeñala población entera de resultados honestosla alegacióna muchas desviaciones estándarnada honesto cayó aquíEl valor-p se calcula dentro de la curva. No puede decirte que el punto no pertenece a la curva.
Esquemático, no es dato ajustado. El punto es estructural: el test de significancia pregunta si un resultado está lejos de cero, y la ley de Twyman pregunta si plausiblemente viene de la misma población que todos los otros resultados que ya mediste.

La checklist de bug, antes de gastar tráfico

Correrlo de nuevo cuesta calendario. La comprobación de defectos cuesta una tarde, así que va primero.

Comprobación Cómo es un fallo Dónde está cubierto
Reparto de tráfico contra la proporción pretendida El reparto observado se aleja del configurado más allá del azar SRM: reparto desigual de tráfico
Efecto concentrado en un navegador o dispositivo La victoria existe en un segmento y es plana en todos los demás, firma clásica de fidelidad de seguimiento Paradoja de Simpson
Efecto concentrado en un día Un release, una caída del servicio o una campaña cayó dentro de la ventana Cómo hacer un test A/B
Mismo código de seguimiento disparándose en los dos brazos La variante dispara un evento de más, o el control pierde uno Son los casos de MSN y del beacon de arriba
Definición de métrica idéntica entre brazos Un denominador cambió, o un filtro se aplica a un solo brazo Eligiendo la métrica primaria
Métrica sustituta en lugar de la métrica real Los clics se movieron, las compras no, y la razón entre las dos nunca fue estable El caso de Office Online de arriba
Usuarios heredados de un experimento anterior Los buckets no fueron re-aleatorizados antes de esta ronda Test A/A
El resultado apareció mientras mirabas La decisión se tomó en el momento en que la línea cruzó El problema del peeking

Si alguna fila falla, tienes tu explicación y ninguna ronda nueva es necesaria. Si todas pasan, el resultado se gradúa de implausible a inexplicado, y la ronda de confirmación se vuelve la forma más barata que queda de aprender algo.

Diseñando la ronda de confirmación

Tres reglas, y la segunda es la que los equipos se equivocan.

Re-aleatoriza. La ronda de confirmación necesita asignar usuarios con una semilla de hash nueva, no reusar los buckets de la primera ronda. Esa es la lección directa del hallazgo de arrastre de 2012: reusar los mismos buckets de usuario significa que la segunda ronda hereda lo que la primera hizo con aquellos usuarios.

Dimensiona para el efecto que aceptarías, no para el efecto que observaste. La primera estimación está inflada justamente porque fue seleccionada por ser grande, así que calcular la potencia contra ella garantiza una ronda sin potencia. Supón que la menor ganancia que vale subir sea más 10 por ciento relativo sobre una base del 3 por ciento. Al 95 por ciento de confianza y 80 por ciento de potencia, eso exige 53.211 usuarios por variante, número que puedes comprobar en la calculadora de tamaño de muestra. Calcular la potencia por el más 40 por ciento observado pediría una fracción de eso y fallaría en resolver la respuesta honesta. La mecánica de elegir ese umbral está en efecto mínimo detectable.

Decide antes qué significa cada desenlace. Escribe los tres casos antes de que la ronda empiece: el efecto replica cerca de la misma magnitud y subes; el efecto replica mucho menor pero todavía por encima de tu umbral y subes el número menor; el efecto desaparece y cierras el experimento y mantienes la caza del bug abierta. Decidir después es como una confirmación fracasada se convierte en un análisis de segmento.

Qué hacer con un resultado demasiado bueno para ser verdadUn resultado espectacular pasa primero por la checklist de defectos. Si una comprobación falla, la explicación es un bug y ninguna ronda nueva es necesaria. Si todas pasan, se lanza una ronda de confirmación con aleatorización nueva y dimensionada para el menor efecto que vale subir. Si el efecto replica, se sube en la magnitud replicada. Si desaparece, el experimento se cierra y la investigación de instrumentación continúa.El camino de un número espectacular hasta una decisiónresultado espectacularen el panelchecklist de defectosreparto, segmentos, seguimientofalló una: encontraste el bug, pararonda de confirmaciónsemilla nueva, dimensionadaa tu umbral realreplicó: sube el menordesapareció: cierrae investigaEl paso más barato primeroLa checklist cuesta una tarde. La ronda de confirmación cuesta semanas de tráfico. La mayoría de los resultados espectaculares muereen la checklist, y por eso corre primero y por eso correrlo de nuevo no es la respuesta por defecto a un número sorprendente.Decide qué significa cada uno de los tres desenlaces antes de que la confirmación empiece, no después de que lea.
El orden importa más que los pasos. Un equipo que corre de nuevo primero gasta semanas de tráfico para redescubrir un bug de seguimiento que habría encontrado comprobando si la variante dispara un evento de más.

Errores comunes

Error Qué produce
Tratar un valor-p pequeño como prueba de que la medición es correcta Una victoria difundida que era artefacto de seguimiento por beacon
Dimensionar la confirmación por la estimación de la primera ronda Una ronda nueva demasiado pequeña para resolver el efecto honesto, leída como “no concluyente, sube”
Reusar los mismos buckets de usuario en la ronda nueva Arrastre de la primera ronda incrustado en la segunda, según los hallazgos de 2012
Aplicar el escepticismo solo a las pérdidas La asimetría que Kohavi y colegas nombran como la razón de que la ley sea necesaria
Confiar en una métrica sustituta cuando se mueve mucho El caso de Office Online: la sustituta se movió porque la relación se rompió
Anunciar el número antes de correr la checklist Un compromiso organizativo con un resultado que no verificaste
Concluir “no es bug” porque miraste y no encontraste La ausencia de bug encontrado es evidencia débil; la ronda de confirmación es el test fuerte
Llamar fracaso a la segunda ronda cuando devuelve un efecto menor Menor es el desenlace esperado, y muchas veces todavía vale subir

Hazlo automático con Donnu

La ley de Twyman solo funciona como regla si las comprobaciones ya están en el informe, porque nadie corre una checklist manual contra un número que lo entusiasmó. Donnu A/B corre la comprobación de proporción de muestra en todo experimento y bloquea la lectura cuando el reparto falla, abre el resultado por dispositivo y por día para que una victoria concentrada en un navegador quede visible sin consulta aparte, y permite clonar un experimento con semilla de aleatorización nueva para que una ronda de confirmación nunca herede los buckets de la ronda que está confirmando. La página de resultado reporta el intervalo de confianza junto a la estimación puntual, que es lo que te dice si un efecto replicado menor sigue estando dentro de lo que estabas dispuesto a aceptar.

Empieza una prueba gratis de 14 días y pasa tu próxima victoria sorprendente por las comprobaciones antes de que llegue a un roadmap.

Referencias

Lee también: Test A/A · SRM: reparto desigual de tráfico · El problema del peeking · Efecto mínimo detectable · Calculadora de significancia gratis · Leia em português

Preguntas frecuentes

¿Qué es la ley de Twyman?
La ley de Twyman es la regla de que cualquier número que parezca interesante o distinto suele estar equivocado. Kohavi y colegas la plantean exactamente en esos términos en las siete reglas de bolsillo para experimentadores web publicadas en el KDD 2014, acreditando la formulación a Twyman a través de una nota de A. S. C. Ehrenberg en el Journal of the Royal Statistical Society, y la aplican como procedimiento operativo: cuando un resultado es excepcionalmente fuerte, dejan de celebrar y empiezan a buscar el bug. El punto no es que las victorias grandes nunca ocurran. Es que una victoria grande y un error de instrumentación producen el mismo número en el panel, y el error de instrumentación es mucho más común.
¿Un valor-p bajo me protege de la ley de Twyman?
No, y esa es la parte que los equipos más se equivocan. El valor-p mide cuán improbables son los datos bajo la hipótesis nula dado que la medición es correcta. No carga ninguna información sobre si la medición es correcta. Un defecto de seguimiento de clic que infla el tratamiento produce un valor-p pequeño con total confianza. Kohavi y colegas (KDD 2014) describen exactamente eso: un resultado positivo que pasó todas las comprobaciones estadísticas y acabó siendo una mejora en la fidelidad del seguimiento de clics, no más clics.
¿Por qué una previa fuerte le gana a un resultado significativo?
Porque la significancia es condicional y la previa no. Kohavi y colegas (KDD 2014) lo formalizan con la regla de Bayes: la probabilidad posterior de un verdadero positivo dado un resultado estadísticamente significativo es la previa por la potencia, dividido por eso más uno menos la previa por alfa. Con alfa 0,05 y 80 por ciento de potencia, una previa de 1 de cada 3 da 89 por ciento de confianza, pero una previa de 1 de cada 500, que es la tasa declarada por ellos para un resultado de ruptura en Bing, da solo 3,1 por ciento. Mismo valor-p, misma potencia, conclusión completamente distinta.
¿Qué es una ronda de confirmación?
Es una segunda ejecución independiente del mismo experimento con aleatorización nueva, tratada como la ronda que decide, mientras la primera queda rebajada a hipótesis. Kohavi y colegas (KDD 2014) enuncian la regla sin rodeos: los resultados estadísticamente significativos en el límite deben verse como provisionales y correrse de nuevo para replicar. El artículo de 2012 sobre resultados intrigantes muestra el retorno de esto, describiendo un caso sorprendente en que lo corrieron de nuevo con una muestra mayor y buena parte de los efectos desapareció.
¿De qué tamaño debe ser la ronda de confirmación?
Dimensiónala para el efecto que de hecho aceptarías, no para el efecto inflado que reportó la primera ronda. Si la primera ronda mostró más 23 por ciento relativo pero el menor efecto que vale subir es más 10 por ciento, calcula la potencia para más 10 por ciento. Dimensionar por la primera estimación garantiza una ronda demasiado pequeña, porque la primera estimación está sesgada hacia arriba justamente por la selección que te hizo reparar en ella.
¿Qué debo comprobar antes de correrlo de nuevo?
Comprueba la fontanería primero, porque correrlo de nuevo es caro y un bug es barato de encontrar. Confirma que el reparto de tráfico coincide con la proporción pretendida, que el efecto no está concentrado en un navegador, un dispositivo o un día, que la definición de la métrica no cambió entre los brazos, que el mismo código de seguimiento se dispara en los dos brazos, y que ningún otro release subió en medio del experimento. Kohavi y colegas (KDD 2012) rastrean varios resultados espectaculares exactamente a esas categorías, con especial peso en el seguimiento de clics.
¿La ley de Twyman vale también para pérdidas espectaculares?
Debería valer, pero la reacción humana es asimétrica y esa asimetría es la razón de que la ley sea útil. Kohavi y colegas (KDD 2014) lo nombran directamente: los equipos se resisten y cuestionan los resultados negativos sobre su propia funcionalidad nueva, así que investigan a fondo y encuentran la causa, mientras que un resultado positivo invita a celebrar en vez de a escrutar. Un resultado de menos 40 por ciento normalmente se investiga solo. Uno de más 40 por ciento necesita una regla que fuerce la misma investigación.