分层贝叶斯模型(?)


12

请为统计术语but之以鼻:)我在这里发现了几个与广告和点击率有关的问题。但是他们对我的等级状况的了解都没有对我有太大帮助。

还有一个相关的问题,即相同的贝叶斯模型的这些等效表示吗?,但我不确定它们是否确实存在类似问题。另一个问题是贝叶斯分层二项式模型的先验论证了有关超优先级的细节,但是我无法将其解决方案映射到我的问题上

我在网上有几个新产品的广告。我让广告投放了几天。到那时,足够多的人点击了广告,以查看哪个获得了最多的点击。在排除所有点击次数最多的广告之后,我让该广告再运行几天,以查看点击广告后实际有多少人购买。那时我知道首先投放广告是否是个好主意。

我的统计数据非常嘈杂,因为我每天只卖几件商品,所以我没有很多数据。因此,很难估计看到广告后有多少人买东西。每150次点击中只有约1次导致购买。

一般而言,我需要通过某种方式使用所有广告的全局统计信息来平滑每个广告组的统计信息,以了解是否会尽快在每个广告上赔钱。

  • 如果我等到每个广告都看到足够的购买,我就会破产,因为它花费的时间太长:测试10个广告,我需要多花10倍的钱,以便每个广告的统计数据足够可靠。到那时我可能已经亏钱了。
  • 如果我平均购买所有广告,那么我将无法淘汰效果不佳的广告。

我可以使用全球购买率( N $子分配的优先级吗?这意味着我为每个广告获得的数据越多,该广告获得的统计信息就越独立。如果没有人点击广告,我认为全球平均水平是合适的。perclick)anduseitasapriorfor

我会为此选择哪个发行版?

如果我在A上有20次点击,在B上有4次点击,该如何建模?到目前为止,我已经发现二项分布或泊松分布在这里可能有意义:

  • purchase_rate ~ poisson (?)
  • (purchase_rate | group A) ~ poisson (仅估算A组的购买率?)

但是,接下来我该怎么做才能真正计算出purchase_rate | group A。如何将两个发行版连接在一起以使组A(或任何其他组)有意义。

我必须先拟合模型吗?我有可用于“训练”模型的数据:

  • 广告A:352次点击,5次购买
  • 广告B:15次点击,0次购买
  • 广告C:3519次点击,130次购买

我正在寻找一种方法来估计任何一组的概率。如果一个组只有几个数据点,那么我本质上想回落到全局平均值。我对贝叶斯统计信息有些了解,并且阅读了很多PDF,这些人描述了如何使用贝叶斯推理和共轭先验进行建模等。我认为有一种方法可以正确执行此操作,但是我无法弄清楚如何正确建模。

我会很高兴能以贝叶斯方式解决问题的提示。这将对在线查找示例产生很大帮助,我可以使用这些示例来实际实现此目标。

更新:

非常感谢您的回复。我开始对我的问题越来越了解。谢谢!让我问几个问题,看看我现在对这个问题的理解是否更好:

因此,我假设转换是作为Beta分布分布的,并且Beta分布具有两个参数和。bab

所述的参数是超参数,所以它们的参数现有?因此,最终我将转化次数和点击次数设置为Beta分发的参数吗? 112 12

在某些时候,当我想比较不同的广告时,我会计算。如何计算该公式的每个部分?P(conversion|ad=X)=P(ad=X|conversion)P(conversion)P(ad=X)

  • 我认为被称为Beta分布的可能性或“模式”。这就是,其中和是我的分布参数。但是这里特定的和是仅用于广告的分布参数,对吧?在这种情况下,仅是该广告获得的点击和转化次数?还是所有广告看到了多少点击/转化?P(ad=X|conversion)α1α+β2αβαβX

  • 然后,我与先验相乘,即P(conversion),在我的情况下,这只是杰弗里斯先验,它是非信息性的。获取更多数据后,先前的记录会保持不变吗?

  • 我除以,这是边际可能性,因此我计算该广告被点击的频率是多少?P(ad)

在使用Jeffreys的先前知识时,我假设我从零开始,对数据一无所知。该先验称为“非信息性”。当我继续了解自己的数据时,是否要更新以前的数据?

随着点击次数和转化次数的增加,我读到必须“更新”我的发行版。这是否意味着我的分布参数已更改,或者先前的更改?点击广告X时,是否可以更新多个分发?超过一个?

Answers:


9

如您所知,解决问题的一种非常通用的方法是构造一个层次(多层次)贝叶斯模型。该模型包括三个部分,如下所示。

模型

广告转化率的分层贝叶斯模型

  1. 在总体水平上,我们对从您的特定测试广告集中采样的广告总体中的转化概率进行建模。正如尼尔之前指出的那样,可以固定总体参数并将其用作第二级的先验条件。或者,我们可以在总体参数本身上放置先验,这提供了额外的优势,即我们现在可以根据数据表达对总体参数的不确定性。让我们按照这条路线,在总体均值和的总体精度上放置一个先验即逆方差)。可以使用获得扩散先验N(μμ0,η0)μGa(λa0,b0)μ0=0,η0=0.1,a0=1,b0=1,以确保我们的后验推理将由数据主导。

  2. 在单个广告的级别上,我们可以将给定广告的转换概率为对数正态分布。因此,对于每个广告,logit转换概率被建模为。πjjjρj:=logit(πj)N(ρjμ,λ)

  3. 最后,在观测数据的水平,我们转换的数量模型的广告为,其中采用S型变换数率转换回概率,其中是对广告的点击次数。kjjBin(kjσ(ρj),nj)σ(ρj)njj

数据

例如,让我们以您在原始问题中发布的数据为例,

广告A:352次点击,5次购买

广告B:15次点击,0次购买

广告C:3519次点击,130次购买

我们将其转换为:n1=352,k1=5,n2=15,k2=0,

推理

反转此模型意味着获得我们模型参数的后验分布。在这里,我使用了变分贝叶斯方法进行模型反演,该方法在计算上比诸如MCMC的随机采样方案更有效。我在下面绘制了结果。

数据和后代

该图显示了三个面板。(a)您提供的示例数据的简单可视化。灰色的条形表示点击次数,黑色的条形表示转换次数。(b)人口平均转化率的后验分布。随着我们观察到更多数据,这将变得越来越精确。(c)特定于广告的后转换率的中心95%后验概率区间(或可信区间)。

最后一个面板说明了贝叶斯分层建模方法的两个关键特征。首先,后验的精度反映了基础数据点的数量。例如,我们有相对较多的广告C数据点;因此,它的后验比其他广告的后验精确得多。

第二,特定于广告的推论是通过有关总体的知识来告知的。换句话说,特定于广告的后代基于整个组的数据,这种效应被称为“ 缩小到总体”。例如,广告A的后验模式(黑色圆圈)远高于其经验转化率(蓝色)。这是因为所有其他广告都具有较高的后验模式,因此,通过以组均值告知我们特定于广告的估算值,我们可以获得对地面真实性的更好估算。我们所拥有的有关特定广告的数据越少,其后验将受到来自其他广告的数据的影响越大。

您在原始问题中描述的所有想法都是在上述模型中自然完成的,说明了完全贝叶斯设置的实用性。


凯,谢谢您的详细回答。我知道答案有些过时了,但是如果您保留了随附的代码,您愿意分享吗?我想学习贝叶斯模型分层,但在努力寻找直观的例子R.
Zhubarb

@Kay,感谢您的有趣回答,您能否为分层贝叶斯模型添加一些参考?谢谢!
user511005 2015年

1
嗨@Zhubarb,user511005,这里是纸张的链接描述上述型号:sciencedirect.com/science/article/pii/S1053811913002371我已经把简要介绍了变推断这里:people.inf.ethz.ch/ bkay / talks / Brodersen_2013_03_22.pdf
凯·

2

给定每个广告的点击次数,您需要估算“转化”(购买)的概率。(听起来,您假设每次点击的转换概率是相同的,这是合理的。)p

这样做的贝叶斯方法是估算的分布,它是Beta,形状参数等于转化次数加,等于没有导致转化的点击次数加。paabb

a和代表您的先验。将用于Jeffreys的。为了“回落”到全球平均水平,根据所有数据,可以通过多种方式设置。b(12,12)a,b

要使用参数从估计量中得出的估计值,可以选择最大似然值,即Beta分布的模式。一个bpa,b


在回答您的修改时:

转换不是Beta分布的,而是伯努利分布的,概率为。请把我在第2段中设置和与您的内容进行比较。请注意,你有一个每个广告,因而信念在每个广告,而且每个信仰都有自己的和。a b p p a bpabppab

贝叶斯更新为

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

其中是观察值(转化或未转化),并且是为相应广告选择的。此公式已被用于和的更新中,该公式起作用,以便在进行转换的情况下将1加到,否则将1加到这正在更新的置信度。p a b a b pxpababp

Jeffreys的先验与无信息的先验不是同一回事,但我相信除非您有充分的理由使用它,否则它会更好。如果您想对此进行讨论,请随时问另一个问题。


感谢您的回应!我更新了原始问题,因为在此注释框中用尽了所有字符。如果您能对我在更新中写的一些细节提供一些反馈,那就太好了。
米卡·蒂霍宁
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.