20 votos

¿Cómo se podría desarrollar una regla de parada en un análisis de potencia de dos proporciones independientes?

Soy desarrollador de software y trabajo en sistemas de pruebas A/B. No tengo una formación sólida en estadística, pero he ido adquiriendo conocimientos en los últimos meses.

Un escenario de prueba típico consiste en comparar dos URL de un sitio web. Un visitante visita LANDING_URL y luego se reenvía aleatoriamente a URL_CONTROL o URL_EXPERIMENTAL . Un visitante constituye una muestra, y se alcanza una condición de victoria cuando el visitante realiza alguna acción deseable en ese sitio. Esto constituye una conversión y la tasa de conversión es la tasa de conversión (normalmente expresada en porcentaje). Una tasa de conversión típica para una URL determinada se sitúa entre el 0,01% y el 0,08%. Hacemos pruebas para determinar cómo se comparan las nuevas URL con las antiguas. Si URL_EXPERIMENTAL supera a URL_CONTROL sustituimos URL_CONTROL con URL_EXPERIMENTAL .

Hemos desarrollado un sistema que utiliza técnicas sencillas de comprobación de hipótesis. He utilizado las respuestas a otra pregunta de CrossValidated ici para desarrollar este sistema.

Se establece una prueba de la siguiente manera:

  • Estimación del índice de conversión CRE_CONTROL de URL_CONTROL se calcula a partir de datos históricos.
  • La tasa de conversión deseada CRE_EXPERIMENTAL de URL_EXPERIMENTAL está ajustado.
  • Se suele utilizar un nivel de significación del 0,95.
  • Se suele utilizar una potencia de 0,8.

En conjunto, todos estos valores se utilizan para calcular el tamaño de muestra deseado. Utilizo la función de R power.prop.test para obtener este tamaño de muestra.

Se realizará una prueba hasta que se recojan todas las muestras. En este punto, los intervalos de confianza para CR_CONTROL y CR_EXPERIMENTAL se calculan. Si no se solapan, se puede declarar un ganador con un nivel de significación de 0,95 y una potencia de 0,8.

Sin embargo, los usuarios de nuestras pruebas tienen dos grandes preocupaciones:

1. Si, en algún momento de la prueba, se recogen suficientes muestras para mostrar un claro ganador, ¿no se puede detener la prueba?

2. Si al final de la prueba no se ha declarado ningún ganador, ¿podemos prolongar la prueba para ver si podemos recoger suficientes muestras para encontrar un ganador?

Hay que señalar que existen muchas herramientas comerciales que permiten a sus usuarios hacer exactamente lo que nosotros deseamos. He leído que hay muchas falacias con lo anterior, pero también me he topado con la idea de una regla de parada y me gustaría explorar la posibilidad de utilizar una regla de este tipo en nuestros propios sistemas.

He aquí dos enfoques que nos gustaría considerar:

1. En power.prop.test Compara los índices de conversión medidos con el número actual de muestras y comprueba si se han recogido suficientes muestras para declarar un ganador.

Ejemplo: Se ha configurado una prueba para ver si existe el siguiente comportamiento en nuestro sistema:

  • CRE_CONTROL : 0.1
  • CRE_EXPERIMENTAL : 0.1 * 1.3
  • Con estos parámetros, el tamaño de la muestra N es 1774.

Sin embargo, a medida que la prueba avanza y alcanza las 325 muestras, CRM_CONTROL (índice de conversión medido para el control) es 0,08 y CRM_EXPERIMENTAL es 0,15. power.prop.test se ejecuta en estas tasas de conversión y N es de 325. Exactamente el número de muestras necesarias para declarar CRM_EXPERIMENTAL ¡para ser el ganador! Llegados a este punto, esperamos poder dar por concluida la prueba. Del mismo modo, si la prueba alcanza 1774 muestras pero no se encuentra ningún ganador, pero luego llega a 2122 muestras, lo que es suficiente para demostrar que CRM_CONTROL de 0,1 y CRM_EXPERIMENTAL 0,128 es un resultado en el que se puede declarar un ganador.

En un pregunta relacionada los usuarios advirtieron de que una prueba de este tipo es menos creíble debido a que fomenta las paradas tempranas al tener menos muestras y también es vulnerable a sesgo de estimación y un mayor número de errores de tipo I y II. ¿Hay alguna forma de hacer que funcione esta regla de parada? Este es nuestro enfoque preferido, ya que significa menos tiempo de programación para nosotros. ¿Quizás esta regla de parada podría funcionar ofreciendo algún tipo de puntuación o puntuaciones numéricas que midieran la credibilidad de la prueba en caso de que se detuviera antes de tiempo?

2. Utilización de análisis secuencial o SPRT .

Estos métodos de prueba están diseñados exactamente para la situación en la que nos encontramos: ¿cómo pueden nuestros usuarios empezar una prueba y terminarla de tal manera que no pierdan un tiempo excesivo en la prueba? Ya sea realizando una prueba demasiado larga o teniendo que volver a empezar una prueba con parámetros diferentes.

De los dos métodos anteriores, me inclino por el SPRT porque las matemáticas son un poco más fáciles de entender para mí y porque parece que puede ser más fácil de programar. Sin embargo, no entiendo cómo utilizar el función de verosimilitud en este contexto. Si alguien pudiera construir un ejemplo de cómo calcular la razón de verosimilitud, la suma acumulativa de la razón de verosimilitud, y continuar con un ejemplo que ilustrara una situación en la que uno continuaría controlando, en la que uno aceptaría la hipótesis nula y la hipótesis alternativa, eso nos ayudaría a determinar si SPRT es el camino correcto a seguir.

1voto

BBlake Puntos 310

Puedes parar antes, pero si lo haces, tus p-valores no son fáciles de interpretar. Si no le importa la interpretación de su valor p, entonces la forma en que la respuesta a sus dos primeras preguntas sea "no" no importa (demasiado). Su cliente parece pragmático, por lo que la verdadera interpretación de un valor p probablemente no sea un punto delicado que le preocupe.

No puedo hablar del segundo enfoque que propones.

Sin embargo, el primer planteamiento no tiene una base sólida. Las aproximaciones normales de las distribuciones binomiales no son válidas para proporciones tan bajas (que es el método que utiliza power.prop.test, también el método utilizado por Cohen en su libro clásico sobre la potencia). Además, que yo sepa, no existe una solución de análisis de potencia de forma cerrada para las pruebas de proporción de dos muestras (cf. ¿Cómo se puede realizar un análisis de potencia binomial de dos grupos sin utilizar aproximaciones normales? ). Sin embargo, existen mejores métodos para aproximar los intervalos de confianza de las proporciones (véase el paquete binom ). Se pueden utilizar intervalos de confianza no solapados como solución parcial... pero esto no es lo mismo que estimar un valor p y, por tanto, no proporciona una ruta a la potencia directamente. Espero que alguien tenga una buena solución de forma cerrada que pueda compartir con el resto de nosotros. Si encuentro una, actualizaré la pregunta anterior. Suerte a todos.

Edición: Mientras pienso en ello, permítanme ser totalmente pragmático por un momento. Tu cliente quiere que este experimento termine cuando esté seguro de que el sitio experimental funciona mejor que el sitio de control. Después de obtener una muestra decente, si no está listo para tomar una decisión, sólo tiene que empezar a ajustar la proporción de su asignación aleatoria a cualquier lado que está "ganando". Si se trata de un parpadeo, se producirá una regresión hacia la media, perderás seguridad y reducirás la proporción. Cuando esté razonablemente seguro, délo por terminado y declare un ganador. El enfoque óptimo probablemente implicaría la actualización bayesiana, pero no sé lo suficiente sobre ese tema como para orientarte. Sin embargo, puedo asegurarle que, aunque a veces pueda parecer contraintuitivo, las matemáticas en sí no son tan difíciles.

0voto

Matthew G. Puntos 172

Las preguntas que tiene son las típicas que surgen en las pruebas estadísticas. Hay dos "sabores" de estadística: la frecuentista y la bayesiana. La respuesta frecuentista a tus dos preguntas es fácil:

  • NO
  • No, no puedes parar antes
  • No, no se puede medir sólo más tiempo

Una vez definida su configuración, no se le permite ni siquiera mirar los datos (análisis ciego). Desde el punto de vista frecuentista, no hay vuelta de hoja, ¡no hay trampas ni trucos! (EDIT: Por supuesto, hay intentos de hacerlo, y también funcionarán si se utilizan correctamente, pero se sabe que la mayoría de ellos introducen sesgos. )

Pero existe el punto de vista bayesiano, que es bastante diferente. A diferencia de los frecuentistas, el enfoque bayesiano necesita una entrada adicional, la distribución de probabilidad a-priori. Podemos llamarlo también conocimiento previo o prejuicio. Teniendo esto, podemos utilizar los datos/mediciones para actualizar nuestro conocimiento a la probabilidad a-posteriori. La cuestión es que podemos utilizar los datos y aún más, podemos utilizar los datos en cada punto intermedio de la medición. En cada actualización, la última posterior es nuestra nueva a priori y podemos actualizarla con una nueva medición a nuestro conocimiento actualizado. ¡No hay ningún problema de parada anticipada!

Encontré una charla en la que se discutían problemas bastante parecidos a los que tú tienes y yo describí anteriormente: http://biostat.mc.vanderbilt.edu/wiki/pub/Main/JoAnnAlvarez/BayesianAdaptivePres.pdf

Pero aparte de esto, ¿estás realmente seguro de que lo necesitas? Parece que tiene algún sistema en marcha para decidir dónde vincular una solicitud. Para esto no necesitas probar que tus decisiones son correctas en un sentido estadístico con un test de hipótesis. ¿Has comprado alguna vez una coca-cola, porque podías excluir que la pepsi es "correcta" ahora con una probabilidad del 95%? Basta con tomar la que simplemente es mejor, sin excluir una hipótesis. Sería un algoritmo trivial: Calcular la incertidumbre de la tasa A, calcular la incertidumbre de la B. Tomar la diferencia de ambas tasas y dividirla por la incertidumbre de la diferencia. El resultado es algo así como la significación de la diferencia en sigma. A continuación, tome todos los enlaces en los que haya más de dos o tres sigmas de diferencia. Inconveniente, nunca sabrá si una sola decisión fue estadísticamente correcta con algunas pruebas, pero en promedio tendrá tasas de conversión más altas.

0voto

Lalo Puntos 1

Tal vez algunos métodos podrían ser utilizados allí como

  • Pocock
  • O'Brien y Flemming
  • Peto

esto ajustará el límite P en función de los resultados y ayudará a dejar de recopilar datos y a economizar recursos y tiempo.

tal vez puedan añadirse aquí otras obras.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X