Modelo bayesiano jerárquico (?)

12

Disculpe mi carnicería de jerga estadística :) Aquí he encontrado un par de preguntas relacionadas con la publicidad y las tasas de clics. Pero ninguno de ellos me ayudó mucho con mi comprensión de mi situación jerárquica.

Hay una pregunta relacionada ¿Son estas representaciones equivalentes del mismo modelo jerárquico bayesiano? , pero no estoy seguro de si realmente tienen un problema similar. Otra pregunta Los antecedentes del modelo binomial bayesiano jerárquico entra en detalles sobre hiperpriors, pero no puedo asignar su solución a mi problema

Tengo un par de anuncios en línea para un nuevo producto. Dejo que los anuncios se publiquen durante un par de días. En ese momento, suficientes personas han hecho clic en los anuncios para ver cuál recibe la mayor cantidad de clics. Después de eliminar todos los clics, excepto el que tiene la mayor cantidad de clics, dejé que se ejecutara durante un par de días para ver cuánto compran realmente las personas después de hacer clic en el anuncio. En ese momento, sé si fue una buena idea publicar los anuncios en primer lugar.

Mis estadísticas son muy ruidosas porque no tengo muchos datos, ya que solo vendo un par de artículos todos los días. Por lo tanto, es realmente difícil estimar cuántas personas compran algo después de ver un anuncio. Solo alrededor de uno de cada 150 clics resulta en una compra.

En términos generales, necesito saber si estoy perdiendo dinero en cada anuncio lo antes posible al suavizar de alguna manera las estadísticas por grupo de anuncios con estadísticas globales sobre todos los anuncios.

  • Si espero hasta que cada anuncio haya visto suficientes compras, iré a la quiebra porque lleva demasiado tiempo: probando 10 anuncios necesito gastar 10 veces más dinero para que las estadísticas de cada anuncio sean lo suficientemente confiables. Para entonces podría haber perdido dinero.
  • Si hago un promedio de compras en todos los anuncios, no podré eliminar los anuncios que simplemente no funcionan.

¿Podría usar la tasa de compra mundial ( N $ sub-distribuciones? Eso significaría que cuantos más datos tenga para cada anuncio, más independientes serán las estadísticas de ese anuncio. Si nadie ha hecho clic en un anuncio todavía, supongo que el promedio global es apropiado.perclick)anduseitasapriorfor

¿Qué distribución elegiría para eso?

Si he tenido 20 clics en A y 4 clics en B, ¿cómo puedo modelar eso? Hasta ahora he descubierto que una distribución binomial o de Poisson podría tener sentido aquí:

  • purchase_rate ~ poisson (?)
  • (purchase_rate | group A) ~ poisson (¿estimar la tasa de compra solo para el grupo A?)

Pero, ¿qué hago a continuación para calcular realmente el purchase_rate | group A. ¿Cómo conecto dos distribuciones juntas para tener sentido para el grupo A (o cualquier otro grupo)?

¿Tengo que ajustar un modelo primero? Tengo datos que podría usar para "entrenar" un modelo:

  • Anuncio A: 352 clics, 5 compras
  • Anuncio B: 15 clics, 0 compras
  • Anuncio C: 3519 clics, 130 compras

Estoy buscando una manera de estimar la probabilidad de cualquiera de los grupos. Si un grupo tiene solo un par de puntos de datos, esencialmente quiero volver al promedio global. Sé un poco acerca de las estadísticas bayesianas y he leído muchos archivos PDF de personas que describen cómo modelan usando la inferencia bayesiana y los conjugados anteriores, etc. Creo que hay una manera de hacer esto correctamente, pero no puedo entender cómo modelarlo correctamente.

Estaría súper contento con las sugerencias que me ayudan a formular mi problema de manera bayesiana. Eso ayudaría mucho a encontrar ejemplos en línea que podría usar para implementar esto.

Actualizar:

Muchas gracias por responder. Estoy empezando a entender cada vez más pequeños detalles sobre mi problema. ¡Gracias! Permítanme hacer algunas preguntas para ver si entiendo el problema un poco mejor ahora:

Así que supongo que las conversiones se distribuyen como distribuciones Beta, y una distribución Beta tiene dos parámetros, y b .ab

El 112 parámetros son hiperparámetros, entonces son parámetros del anterior? Entonces, ¿al final configuro el número de conversiones y el número de clics como el parámetro de mi distribución Beta?12

En algún momento cuando quiero comparar diferentes anuncios, entonces calcularía . ¿Cómo calculo cada parte de esa fórmula?P(conversion|ad=X)=P(ad=X|conversion)P(conversion)P(ad=X)

  • Creo que se llama probabilidad, o "modo" de la distribución Beta. Entonces eso es α - 1P(ad=X|conversion)α1α+β2αβαβX

  • Luego, multiplico con el anterior, que es P (conversión), que en mi caso es solo el anterior de Jeffrey, que no es informativo. ¿El anterior se mantendrá igual a medida que obtenga más datos?

  • P(ad)

Al usar el anterior de Jeffreys, supongo que estoy comenzando en cero y no sé nada sobre mis datos. Eso anterior se llama "no informativo". A medida que continúo aprendiendo sobre mis datos, ¿actualizo el anterior?

A medida que entran los clics y las conversiones, he leído que tengo que "actualizar" mi distribución. ¿Significa esto que los parámetros de mi distribución cambian o que los cambios anteriores? Cuando obtengo un clic para el anuncio X, ¿actualizo más de una distribución? ¿Más de uno anterior?

Mika Tiihonen
fuente

Respuestas:

9

Como intuyó, una forma muy general de abordar su pregunta es construir un modelo bayesiano jerárquico (multinivel). El modelo tiene tres partes, como se ilustra a continuación.

Modelo

Modelo bayesiano jerárquico para tasas de conversión de anuncios

  1. N(μμ0,η0)μGa(λa0,b0)μ0=0,η0=0.1,a0=1,b0=1

  2. πjjjρj:=logit(πj)N(ρjμ,λ)

  3. kjjBin(kjσ(ρj),nj)σ(ρj)njj

Datos

Como ejemplo, tomemos los datos que publicó en su pregunta original,

Anuncio A: 352 clics, 5 compras

Anuncio B: 15 clics, 0 compras

Anuncio C: 3519 clics, 130 compras

n1=352,k1=5,n2=15,k2=0,

Inferencia

Invertir este modelo significa obtener distribuciones posteriores para los parámetros de nuestro modelo. Aquí, utilicé un enfoque de Bayes variacional para la inversión de modelos, que es computacionalmente más eficiente que los esquemas de muestreo estocástico como MCMC. He trazado los resultados a continuación.

Datos y posteriores resultantes

La figura muestra tres paneles. (a) Una visualización simple de los datos de ejemplo que proporcionó. Las barras grises representan el número de clics, las barras negras muestran el número de conversiones. (b) La distribución posterior resultante sobre la tasa de conversión media de la población. A medida que observemos más datos, esto será cada vez más preciso. (c) Intervalos de probabilidad posteriores centrales del 95% (o intervalos creíbles) de las tasas de conversión posterior específicas del anuncio.

El último panel ilustra dos características clave de un enfoque bayesiano para el modelado jerárquico. Primero, la precisión de los posteriores refleja el número de puntos de datos subyacentes. Por ejemplo, tenemos relativamente muchos puntos de datos para el anuncio C; así, su posterior es mucho más preciso que los posteriores de los otros anuncios.

En segundo lugar, las inferencias específicas de anuncios se basan en el conocimiento de la población. En otras palabras, los posteriores específicos de anuncios se basan en datos de todo el grupo, un efecto conocido como reducción de la población . Por ejemplo, el modo posterior (círculo negro) del anuncio A es mucho más alto que su tasa de conversión empírica (azul). Esto se debe a que todos los otros anuncios tienen modos posteriores más altos y, por lo tanto, podemos obtener una mejor estimación de la verdad básica al informar nuestras estimaciones específicas de anuncios por la media grupal. Cuantos menos datos tengamos sobre un anuncio en particular, mayor será su posterior influenciado por los datos de los otros anuncios.

Todas las ideas que describió en su pregunta original se llevan a cabo naturalmente en el modelo anterior, lo que ilustra la utilidad práctica de un entorno completamente bayesiano.

Kay Brodersen
fuente
Kay, gracias por tu respuesta detallada. Entiendo que la respuesta está un poco anticuada, pero ¿le importaría compartir el código que lo acompaña si lo ha guardado? Estoy tratando de aprender el modelo jerárquico bayesiano, pero me
cuesta
@Kay, gracias por la interesante respuesta, ¿podría agregar alguna referencia a los modelos jerárquicos bayesianos? ¡Gracias!
user511005
1
Hola @Zhubarb, usuario511005, aquí hay un enlace al documento que describe el modelo anterior: sciencedirect.com/science/article/pii/S1053811913002371 He reunido una breve introducción a la inferencia variacional aquí: people.inf.ethz.ch/ bkay / talk / Brodersen_2013_03_22.pdf
Kay Brodersen
2

p

paabb

ab(12,12)a,b

pa,b


En respuesta a tus ediciones:

pabppab

La actualización bayesiana es

P(px)P(p)P(xp)

xpababp

El prior de los Jeffrey no es lo mismo que el anterior poco informativo, pero creo que es mejor a menos que tenga una buena razón para usarlo. Siéntase libre de hacer otra pregunta si desea comenzar una discusión al respecto.

Neil G
fuente
¡Gracias por responder! Actualicé mi pregunta original porque me quedé sin caracteres en este cuadro de comentarios. Sería genial si pudiera dar algunos comentarios sobre algunos de los detalles que escribí en la actualización.
Mika Tiihonen