有效地确定用户的点击超链接的概率(Efficiently determining the proba

2019-06-26 00:55发布

所以我有一个网页上的超链接一堆的。 从以往的观察,我知道,用户会点击这些链接的概率。 因此,我可以计算出的平均值和这些概率的标准偏差。

我现在添加一个新的超链接到这个网页。 测试的简短量后我发现20个用户是看到这个超链接,5点击就可以了。

考虑到已知的均值和其他超链接(这形成了一个“事先预期”)的点击概率的标准偏差,我怎么能有效地估计在新的超链接,用户点击的概率是多少?

一个天真的解决办法是忽略了其他可能性,在这种情况下,我估计只是5/20或0.25 - 然而这意味着我们扔掉的相关信息,即我们的点击通过概率就是之前的预期。

所以我在寻找一个看起来像这样的功能:

double estimate(double priorMean, 
                double priorStandardDeviation, 
                int clicks, int views);

我问的是,因为我更熟悉的代码比数学符号,任何答案使用代码或伪优先于数学。

Answer 1:

我提出这个新的答案,因为它是根本不同的。

这是基于克里斯主教,机器学习和模式识别,第2章“概率分布” P71 ++和http://en.wikipedia.org/wiki/Beta_distribution 。

首先,我们配合,以建立在指标的影响的分布的beta分布给定的均值和方差。 然后我们回到这是一个伯努利变量的预期参数的分布模式。

def estimate(prior_mean, prior_variance, clicks, views):
  c = ((prior_mean * (1 - prior_mean)) / prior_variance - 1)
  a = prior_mean * c
  b = (1 - prior_mean) * c
  return ((a + clicks) - 1) / (a + b + views - 2)

不过,我很积极的,先验均值/方差不会为你工作,因为你丢掉你有多少样本具有有多好你之前因而信息。

相反:给定一组(网页,link_clicked)对,你可以计算的是点击一个特定链接的页面数。 让这为m。 我们的时代是链接被点击不为L的量。

现在,让我们一会是和是b访问网站的点击次数,以新的链接数量。 那么你的新链接的概率

def estimate(m, l, a, b):
  (m + a) / (m + l + a + b)

这看起来很琐碎,但实际上有一个有效的概率基础。 从实现的角度来看,你可以继续在全球范围M和L。



Answer 2:

P / N是从频率论透视实际上是正确的。

你也可以使用贝叶斯方法纳入先验知识,但因为你似乎并不具备这些知识,我想P / N是要走的路。

如果你愿意,你也可以使用它之前,这个都可以归结为一个统一的拉普拉斯的规则。 只要给页面上的每一个环节的1而不是0开始(所以,如果算上被点击的链接数量,给每个+1加值,并像在你的N.)

[更新]下面是一个贝叶斯方法:

令P(W)是概率,一个人在一个特定的群体W.令P(L)是概率,即特定的链接被点击。 那么你正在寻找的概率为p(L | W)。 通过贝叶斯定理,可以通过计算这个

p(L | W)= P(W | L)* P(L)/ P(W)

可以估算P(L)由所述量L被点击,P(W)由该组的大小相对于所述用户和p的剩余部分(W | L)= P(W和L)/ P(L )通过特定基团W被点击L请使L被点击的概率除以人数。



Answer 3:

贝叶斯定理证明:

P(A,B) = P( A | B ) * P( B )    (1) 

以来,

P(A,B) = P(B,A)                 (2)

并用(1)代入(2),

P(A | B) * P( B ) = P (B | A) * P(A)

因而(贝叶斯定理),

           P( B | A ) * P(A)
P(A | B) = -----------------
                 P(B)

P(A)   -- prior/marginal probability of A, may or may not take into account B
P(A|B) -- conditional/posterior probability of A, given B.
P(B|A) -- conditional probability of B given A.
P(B)   -- prior/marginal probability of B

后果,

P( A | B ) = P( A ), then a and b are independent
P( B | A ) = P( B ), and then

和独立的定义是,

P(A,B) = P(A | B) * P( B ) = P( A )* P( B )

应当指出的是,这是很容易改变的先验,问题是思维的方式来操作,以自己的喜好的可能性,看看在这个讨论人择原理和贝叶斯定理 。



Answer 4:

你需要知道X是如何强烈W.相关

最有可能你也想拥有一个更复杂的数学模型,如果你想开发一个大的网站。 如果你运行像Digg的网站你有很多的先验知识,你不得不考虑你的calcualtion。 这导致多元统计分析。



文章来源: Efficiently determining the probability of a user clicking a hyperlink