Mesa de la izquierda Introduction Hypothesis testing 2.1 Introduction 2.2 Bayesian statistics 2.3 Test martingales 2.4 p-values 2.5 Optional Stopping and Peeking 2.6 Combining p-values and Optional Continuation 2.7 A/B testing Safe Tests 3.1 Introduction 3.2 Classical t-test 3.3 Safe t-test 3.4 χ2 -test 3.5 Safe Proportion Test Safe Testing Simulations 4.1 Introduction and 4.2 Python Implementation 4.3 Comparing the t-test with the Safe t-test 4.4 Comparing the χ2 -test with the safe proportion test Mixture sequential probability ratio test 5.1 Sequential Testing 5.2 Mixture SPRT 5.3 mSPRT and the safe t-test Online Controlled Experiments 6.1 Safe t-test on OCE datasets Vinted A/B tests and 7.1 Safe t-test for Vinted A/B tests 7.2 Safe proportion test for sample ratio mismatch Conclusion and References 4 Simulaciones de pruebas seguras 4.1 Introducción En esta sección, comparamos la prueba t clásica con la prueba t segura, y la prueba χ2 con la prueba de proporción segura. Se ha desarrollado una biblioteca completa para la prueba segura en R [LTT20]. Con el objetivo de aumentar la adopción en el campo de la ciencia de datos, portamos el código para la prueba t segura y la prueba de proporción segura en Python. 4.2 Implementación de Python Si bien la lógica de la prueba segura t sigue siendo la misma, hubo una serie de ineficiencias en el código original que necesitaban ser abordadas para trabajar con grandes tamaños de muestras. La función original realiza una búsqueda lineal de 1 a un número arbitrariamente alto. Para cada tamaño de muestra posible en el rango, la función calcula el valor E basado en el tamaño de la muestra, grados de libertad y el tamaño del efecto. El ciclo se rompe cuando el valor E es mayor que 1/α. Dado que esta es una función monotónicamente creciente, una búsqueda binaria acelera considerablemente el cálculo, reduciendo la complejidad computacional de O(n) a O(log n). Esta optimización se ha demostrado necesaria cuando se trabaja con millones de muestras. La siguiente mejora de velocidad necesaria es calcular el tiempo de paro para una potencia de 1 − β. Esto se determina mediante simulación de datos que difieren por el tamaño mínimo del efecto. Durante el curso de las simulaciones N, los datos de longitud m se transmiten individualmente para determinar el punto en el que el valor E cruza 1/α. Otra vez, este proceso se hace a través de una búsqueda lineal. Para optimizar esta función, el cálculo del martingale se paraliza por todo el vector de longitud m. La computación computacional permanece O(Nm), pero el cálculo vectorial se lleva a cabo en código Numpy, a diferencia de un loop Python. El código Numpy se escribe en C, por lo que el cálculo es mucho más rápido. La modificación final no está en reducir la complejidad computacional, sino en mejorar las capacidades de la prueba de proporción segura. Esta prueba fue escrita en R como una prueba de dos muestras con tamaños de lote fijos. Para nuestro caso de uso, se requería una prueba de una muestra con tamaños de lote variables para detectar la proporción de desacuerdo de muestras, y por lo tanto se desarrolló para el paquete Python. 4.3 Comparación de la prueba t con la prueba T segura La forma más sencilla de comprender el test de t seguro es compararlo con su alternativa clásica. Realizamos simulaciones de un tamaño de efecto δ y una hipótesis nula H0 : δ = 0. Ajustando el nivel de significancia α = 0,05 podemos simular un tamaño de efecto δ entre dos grupos para determinar cuándo se detiene el test. Si el valor de E simulado cruza 1/α = 20, el test se detiene con H0 rechazado. Si no se detecta ningún efecto, el test se detiene a una potencia de 1 − β = 0,8, ya que esta potencia es común en la industria. Como se puede ver de los tiempos de parada promedio en la Figura 3, la prueba de t segura utiliza menos de 500.000 muestras para entregar resultados estadísticamente válidos, mientras que la prueba de t clásica requiere más de 600.000. Sin embargo, el tamaño de muestra requerido para alcanzar la potencia de 1 − β para la prueba de t segura es de aproximadamente 850.000, mucho más grande que la prueba de t clásica. Se puede preguntar si es aceptable realizar simplemente la prueba de t segura hasta que el tamaño de la muestra de la prueba de t clásica. La Figura 4 (izquierda) muestra el impacto de esta acción en los errores estadísticos. Al finalizar la prueba, tanto la prueba de t clásica como la prueba de t segura cumplen el requisito de que los errores de tipo I sean inferiores a α = 0.05 y los errores de tipo II sean inferiores a β = Además de las conclusiones generales de las dos pruebas, es interesante considerar los experimentos para los que la prueba t clásica y la prueba t segura discrepan. Como se ve en la Figura 4 (derecha), mientras que ambas pruebas tienen casi el 80% de potencia, lo hacen de maneras muy diferentes. Muchas simulaciones para las que la prueba t clásica acepta H0 son rechazadas por la prueba t segura, y viceversa. Esta diferencia en los resultados probablemente será difícil de internalizar para los practicantes que consideran la t-test para ser la fuente de la verdad para su plataforma. Mientras que la Figura 3 evalúa los tiempos de detención seguros para un tamaño de efecto fijo, es importante considerar los resultados para una amplia gama de tamaños de efecto. Para agregar los resultados de los tamaños de efecto de 0,01 a 0,3, normalizamos los tiempos de detención por el tiempo de detención de la prueba t. Los resultados de este análisis se pueden ver en la Figura 5. La trama de la Figura 5 muestra tanto la parada promedio de la prueba segura t y el tamaño de muestra requerido para el 80% de potencia. En promedio, la prueba segura utiliza 18% menos datos que la prueba t. Para lograr la misma potencia del 80%, sin embargo, la prueba segura utiliza 36% más datos. Dado que la mayoría de las pruebas A/B no resultan en la rechazo de H0 [Aze+20], esto podría resultar en experimentos más largos en general para los practicantes. 4.4 Comparando la prueba χ2 con la prueba de proporción segura Los resultados de la Figura 6 son notablemente similares a los que se ven comparando la prueba t y la prueba t segura en la Figura 3. La prueba segura de nuevo utiliza menos muestras, en promedio, que su alternativa clásica, mientras que el tiempo máximo de parada para alcanzar la potencia requerida es mayor. Como se ve en la Figura 7, el tamaño promedio de muestra requerido para la prueba de proporción segura es menor que el de la prueba χ2 para todos los valores de ε. Esto sugiere que la prueba de proporción segura será competitiva con la prueba χ2, incluso para detectar pequeños efectos. Mirando estos resultados, uno puede cuestionar si es apropiado establecer un prefixo basado en un tamaño de efecto desconocido. Sin embargo, el prefixo puede basar el tamaño de efecto calculado a partir de los datos después de cada muestra. Por lo tanto, establecer los prefixos basados en el tamaño de efecto actual no tiene impacto en la validez de la prueba. En esta sección, hemos comparado la prueba segura t y la prueba de proporción segura con sus alternativas clásicas. Se encontró que los tamaños promedio de muestra para la prueba segura t son menores que los de la prueba clásica t para una amplia gama de tamaños de efecto. Sin embargo, el tamaño máximo de la muestra puede ser mucho mayor para alcanzar el mismo poder estadístico. Además, los tamaños promedio de muestra de la prueba de proporción segura son menores que los de la prueba χ2. Estos hallazgos motivan la adopción adicional de las pruebas seguras en los esfuerzos científicos. En la siguiente sección, comparamos la prueba segura t con otra prueba válida en cualquier momento utilizada en la industria, la prueba de probabilidad secuencial de la mezcla. El autor: 1 Daniel Beasley Author: 1 Daniel Beasley Este artículo está disponible en archivo bajo la licencia ATTRIBUTION-NONCOMMERCIAL-SHAREALIKE 4.0 INTERNATIONAL. Este documento es bajo la licencia ATTRIBUTION-NONCOMMERCIAL-SHAREALIKE 4.0 INTERNATIONAL. available on arxiv Disponible en Archivo