domingo, 11 de julio de 2010

El pulpo Paul y los tests de hipótesis

Los tests de hipótesis son un tema que generalmente se mecanizan y no se entienden, ya que pareciera que son magia negra, cuando en realidad su lógica no es complicada. Para esto, usemos al ídolo del momento, el pulpo Paul. Mucho se ha hablado acerca de si Paul predice los partidos del mundial porque es Nostradamus resucitado, o si es pura suerte. No alcanza con, si asumimos que la probabilidad de acertar un partido es 50%, ver si le pega a más de la mitad de los resultados para afirmar que tiene poderes sobrenaturales. Este es el framework ideal para desarrollar un test de hipótesis.
Dejamos para otro post un breve repaso de los tests de hipótesis, ahora, veamos si Paul es un oráculo o no con los datos que tenemos. Bajo la hipótesis nula, Paul tiene un 50% de probabilidades de acertar. En cada repetición puede acertar o errar, luego, la cantidad de aciertos sigue una distribución binomial, con n repeticiones y p=50%.
Supongamos que Paul pega a aciertos de n. Cual es la probabilidad de que, dado que p=50%, tenga esa cantidad de aciertos? P(X=a) donde X sigue una binomial(n,50%). Tomemos solo los partidos del mundial (en un rato empieza España-Holanda, hasta ahora pegó 7 de 7). Luego, tenemos que ver la probabilidad asociada a X=7 donde X sigue una binomial(7,50%). Esta probabilidad es igual a 0,78125% o 0,0078125. A niveles se significancia tradicionales, como 5% o 1%, estamos en condiciones de rechazar la hipótesis nula de que Paul tiene una probabilidad de acertar distinta a 50%. Que pasa si agregamos los partidos de la Eurocopa 2008 que predijo 4 correctos de 6 intentos. Esto daría 11 correctos de 13. La probabilidad de acertar 11 o más partidos es 1,123%. Seguimos rechazando al 5%, pero no al 1%.
Que conclusión sacamos? Es sorprendente el nivel de aciertos del pulpo, y pareciera dar evidencia de su poder como oráculo si tomamos solo los partidos del mundial. Pero si agregamos los de la Eurocopa, las cosas cambian. Nos gustaría tener más datos para poder evaluar mejor al pulpo (el caso de n es un caso donde el tamaño importa). Hay que tener en cuenta que, como menciona el artículo de la wiki, Paul puede ser simplemente un caso de survivorship bias. No hay que olvidarse de los que quedaron en el camino

UPDATE: Inesperado éxito del post, que generó dos posts mejores todavía, uno en Mairena donde actualizan las cuentas y comentan un poco más sobre los tests como evidencia científica, y uno genial en QLP donde Sam nos muestra como estudiar el survivorship bias desde la estadística

8 comentarios:

Unknown dijo...
Este comentario ha sido eliminado por el autor.
JuanPablo dijo...

gran post! no revisé las cuentas, pero te creo. Lo guardo, para la próxima vez que de Proba.

El detalle de la Eurocopa se puede obviar, es obvio que el pulpito estaba en la fase learning :P

Sam Rothstein dijo...

Muy buen post. Totalmente, hay survivorship bias. Si tenes ganas, un postII seria repetir el mismo ejercicio con el estadistico de orden n (el maximo) de una binomial y ahi te deberia dar que no rechazas la hipotesis nula

Unknown dijo...

Sam, que quisiste decir con estadístico de orden n? Pensaba poner el poder del test, y actualizarlo con el resultado de la final

Sam Rothstein dijo...

Estaba pensando en esto:
http://en.wikipedia.org/wiki/Order_statistic

Por ejemplo, en subastas el ganador es max(Xi) donde Xi es un vector que contiene i=1,2,...,N valoraciones (bids) de los bidders. Las valoraciones de los bidders se distribuyen normalmente, entonces el bidder con mayor valoracion se distribuira según el Nth order statistic de la variable X que se distribuye normalmente.
Ahora que lo pienso, no tiene mucho que ver con lo que puse en el comentario, pero se podría hacer algo así para el presente caso.

Vos tenes un survivor, que tiene una distribución diferente porque fue el maximo de una serie de variables aleatorias.

Tenes J animales que predicen partidos en forma aleatoria. Aleatoriamente uno de ellos (el pulpo paul -PP-) es el survivor, el que mejor predice. PP=max(Xj), donde X es el numero de aciertos en N repeticiones del bernoulli trial con p=0.5

Conoces p, conoces N, conoces el numero de aciertos de PP del maximo order statistic, y conoces la distribución del statistic order (debe estar en algun libro calculada). Con eso podrías inferir el J que maximiza la likelihood y decirnos cuantos animales no llegaron a la portada de los diarios.

Luego sabiendo J podés repetir el mismo ejercicio a la inversa. Tenes J animales que juegan N bernoulli trials con probabilidad p. Si el acierto del mejor acertador (Jth statistic order) fue Y1, cual es la estimación puntual del parametro P? (por construcción te debería dar 0.5, no?).

Acá algo que encontré por internet. En la pagina 14 hay una tabla que mas o menos resume lo que estaba pensando.
http://www.ism.ac.jp/editsec/aism/pdf/0S8_0_0095.pdf

Fijate que si N (si no leo mal, filas) es igual a 13, con 10 animales ya tenés que el mejor acertador va a tener en promedio 9,2294 aciertos (y desvio de 1,07). Si le subís un poquito el numero de animales, ya tenés una media y un desvío con los cuales podés construir un intervalo de confianza que alcance el 11, numero de aciertos del pulpo paul.

En la pagina 16 se muestra la tabla de cdf. Por ejemplo, la probabilidad de que el mejor animal de entre 10 animales saque mas de 8 aciertos en 10 partidos es de 10,238%.

Sam Rothstein dijo...
Este comentario ha sido eliminado por el autor.
Sam Rothstein dijo...
Este comentario ha sido eliminado por el autor.
Sam Rothstein dijo...

ahi lo hice post, fijate en QLP