对似然函数的理解

一直对贝叶斯里面的似然函数(likelihood function),先验概率(prior),后验概率(posterior)理解得不是很好,今天仿佛有了新的理解,记录一下。

看论文的时候读到这样一句话:

原来只关注公式,所以一带而过。再重新看这个公式前的描述,细思极恐。

the likelihood function of the parameters θ = {w,α,β} given the observations D can be factored as..


两个疑问:likelihood function为什么会写成条件概率的形式?given的明明是D,为什么到后面的公式里,却变成了given θ 呢?

百度了一下,先贴上wikipedia的解释:

https://zh.wikipedia.org/wiki/%E4%BC%BC%E7%84%B6%E5%87%BD%E6%95%B0

下面整理一下自己的理解,借用wikipedia里面硬币的例子。

常说的概率是指给定参数后,预测即将发生的事件的可能性。拿硬币这个例子来说,我们已知一枚均匀硬币的正反面概率分别是0.5,要预测抛两次硬币,硬币都朝上的概率:

H代表Head,表示头朝上

p(HH | pH = 0.5) = 0.5*0.5 = 0.25.

这种写法其实有点误导,后面的这个p其实是作为参数存在的,而不是一个随机变量,因此不能算作是条件概率,更靠谱的写法应该是 p(HH;p=0.5)。

而似然概率正好与这个过程相反,我们关注的量不再是事件的发生概率,而是已知发生了某些事件,我们希望知道参数应该是多少。

现在我们已经抛了两次硬币,并且知道了结果是两次头朝上,这时候,我希望知道这枚硬币抛出去正面朝上的概率为0.5的概率是多少?正面朝上的概率为0.8的概率是多少?

如果我们希望知道正面朝上概率为0.5的概率,这个东西就叫做似然函数,可以说成是对某一个参数的猜想(p=0.5)的概率,这样表示成(条件)概率就是

L(pH=0.5|HH) = P(HH|pH=0.5) = (另一种写法)P(HH;pH=0.5).

为什么可以写成这样?我觉得可以这样来想:

似然函数本身也是一种概率,我们可以把L(pH=0.5|HH)写成P(pH=0.5|HH); 而根据贝叶斯公式,P(pH=0.5|HH) = P(pH=0.5,HH)/P(HH);既然HH是已经发生的事件,理所当然P(HH) = 1,所以:

P(pH=0.5|HH)  = P(pH=0.5,HH) = P(HH;pH=0.5).

右边的这个计算我们很熟悉了,就是已知头朝上概率为0.5,求抛两次都是H的概率,即0.5*0.5=0.25。

所以,我们可以safely得到:

L(pH=0.5|HH) = P(HH|pH=0.5) = 0.25.

这个0.25的意思是,在已知抛出两个正面的情况下,pH = 0.5的概率等于0.25。

再算一下

L(pH=0.6|HH) = P(HH|pH=0.6) = 0.36.

把pH从0~1的取值所得到的似然函数的曲线画出来得到这样一张图:

(来自wikipedia)

可以发现,pH = 1的概率是最大的。

即L(pH = 1|HH) = 1。

那么最大似然概率的问题也就好理解了。

最大似然概率,就是在已知观测的数据的前提下,找到使得似然概率最大的参数值。

这就不难理解,在data mining领域,许多求参数的方法最终都归结为最大化似然概率的问题。

回到这个硬币的例子上来,在观测到HH的情况下,pH = 1是最合理的(却未必符合真实情况,因为数据量太少的缘故)。

先理解这么多。

 

posted @ 2015-09-19 19:02  zhsuiy  阅读(44906)  评论(6编辑  收藏  举报