目录
1 似然与概率
在统计学中,似然函数(likelihood function,通常简写为likelihood,似然)是一个非常重要的内容,在非正式场合似然和概率(Probability)几乎是一对同义词,但是在统计学中似然和概率却是两个不同的概念。
- 概率:概率是在特定环境下某件事情发生的可能性,也就是结果没有产生之前依据环境所对应的参数来预测某件事情发生的可能性,比如抛硬币,抛之前我们不知道最后是哪一面朝上,但是根据硬币的性质我们可以推测任何一面朝上的可能性均为50%,这个概率只有在抛硬币之前才是有意义的,抛完硬币后的结果便是确定的;
- 似然:而似然刚好相反,是在确定的结果下去推测产生这个结果的可能环境(参数),还是抛硬币的例子,假设我们随机抛掷一枚硬币1,000次,结果500次人头朝上,500次数字朝上(实际情况一般不会这么理想,这里只是举个例子),我们很容易判断这是一枚标准的硬币,两面朝上的概率均为50%,这个过程就是我们运用出现的结果来判断这个事情本身的性质(参数),也就是似然。
结果和参数相互对应的时候,似然和概率在数值上是相等的,如果用 θ 表示环境对应的参数,x 表示结果,那么概率可以表示为:P(x|θ)。
p(x|θ) 是条件概率的表示方法,θ 是前置条件,理解为在 θ 的前提下,事件 x 发生的概率,相对应的似然可以表示为:
L(θ|x)。
可以理解为已知结果为 x ,参数为 θ (似然函数里 θ 是变量,这里说的参数和变量是相对与概率而言的)对应的概率,即:
L(θ|x)=P(x|θ)。
需要说明的是两者在数值上相等,但是意义并不相同,L 是关于 θ 的函数,而 P 则是关于 x 的函数,两者从不同的角度描述一件事情。
2 例子(伯努利分布)
以伯努利分布(Bernoulli distribution,又叫做两点分布或0-1分布)为例:
也可以写成以下形式:
这里注意区分 f(x;p) 与前面的条件概率的区别,分号后的 p 仅表示 f 依赖于 p 的值,p 并不是 f 的前置条件,而只是这个概率分布的一个参数而已,也可以省略分号后的内容:
对于任意的参数 p 我们都可以画出伯努利分布的概率图,当 p=0.5 时:
f(x)=0.5
我们可以得到下面的概率密度图:
从似然的角度出发,假设我们观测到的结果是 x=0.5(即某一面朝上的概率是50%,这个结果可能是通过几千次几万次的试验得到的,总之我们现在知道这个结论)(个人理解是在伯努利试验中,有总次数的0.5是正,0.5是反),可以得到以下的似然函数:
对应的图是这样的:
与概率分布图不同的是,似然函数是一个(0, 1)内连续的函数,所以得到的图也是连续的,我们很容易看出似然函数的极值(也是最大值)在 p=0.5 处得到,通常不需要做图来观察极值,令似然函数的偏导数为零即可求得极值条件。
ps. 似然函数里的 p 描述的是硬币的性质而非事件发生的概率(比如 p=0.5 描述的是一枚两面均匀的硬币)。为了避免混淆,可以用其他字母来表示这个性质,如果我们用 π 来表示,那么似然函数就可以写成:
3 似然函数的最大值
似然函数的最大值意味着什么?让我们回到概率和似然的定义,概率描述的是在一定条件下某个事件发生的可能性,概率越大说明这件事情越可能会发生;而似然描述的是结果已知的情况下,该事件在不同条件下发生的可能性,似然函数的值越大说明该事件在对应的条件下发生的可能性越大。
现在再来看看之前提到的抛硬币的例子:
上面的 p (硬币的性质)就是我们说的事件发生的条件,L 描述的是性质不同的硬币,任意一面向上概率为50% 的可能性有多大,是不是有点绕?让我们来定义 A:
A = 事件的结果 = 任意一面向上概率为50%
那么 L 描述的是性质不同的硬币,A 事件的可能性有多大?
在很多实际问题中,比如机器学习领域,我们更关注的是似然函数的最大值,我们需要根据已知事件来找出产生这种结果最有可能的条件,目的当然是根据这个最有可能的条件去推测未知事件的概率。在这个抛硬币的事件中,p可以取 [0, 1] 内的所有值,这是由硬币的性质所决定的,显而易见的是 p=0.5 这种硬币最有可能产生我们观测到的结果。
4 极大似然估计
4.1 极大似然估计(MLE,Maximum Likelihood Estimation)
最大似然估计的目的就是:利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值。
原理:极大似然估计是建立在极大似然原理的基础上的一个统计方法,是概率论在统计学中的应用。极大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。通过若干次试验,观察其结果,利用试验结果得到某个参数值能够使样本出现的概率为最大,则称为极大似然估计。
由于样本集中的样本都是独立同分布,可以只考虑一类样本集D,来估计参数向量θ。记已知的样本集为:
似然函数(linkehood function):联合概率密度函数称为相对于
的θ的似然函数。
如果是参数空间中能使似然函数
最大的θ值,则
应该是“最可能”的参数值,那么
就是θ的极大似然估计量。它是样本集的函数,记作:
4.2 求解极大似然函数
ML估计:求使得出现该组样本的概率最大的θ值。
实际中为了便于分析,定义了对数似然函数:
1. 未知参数只有一个(θ为标量)
在似然函数满足连续、可微的正则条件下,极大似然估计量是下面微分方程的解:
2.未知参数有多个(θ为向量)
则θ可表示为具有S个分量的未知向量:
记梯度算子:
若似然函数满足连续可导的条件,则最大似然估计量就是如下方程的解。
方程的解只是一个估计值,只有在样本数趋于无限多的时候,它才会接近于真实值。
4.3 极大似然估计的例子
4.3.1 正态分布
例1:设样本服从正态分布,则似然函数为:
它的对数:
求导,得方程组:
联合解得:
似然方程有唯一解:,而且它一定是最大值点,这是因为当
或
时,非负函数
。于是U和
的极大似然估计为
。
4.3.2 均匀分布[a, b]
设样本服从均匀分布[a, b]。则X的概率密度函数:
对样本:
很显然,L(a,b) 作为 a 和 b 的二元函数是不连续的,这时不能用导数来求解。而必须从极大似然估计的定义出发,求L(a,b)的最大值,为使L(a,b)达到最大,b-a应该尽可能地小,但b又不能小于,否则,L(a,b)=0。类似地a不能大过
,因此,a和b的极大似然估计:
5 对数化的似然函数
实际问题往往要比抛一次硬币复杂得多,会涉及到多个独立事件,在似然函数的表达式中通常都会出现连乘:
对多项乘积的求导往往非常复杂,但是对于多项求和的求导却要简单的多,对数函数不改变原函数的单调性和极值位置,而且根据对数函数的性质可以将乘积转换为加减式,这可以大大简化求导的过程:
在机器学习的公式推导中,经常能看到类似的转化。
6 总结
求最大似然估计量的一般步骤:
(1)写出似然函数;
(2)对似然函数取对数,并整理;
(3)求导数;
(4)解似然方程。
最大似然估计的特点:
1.比其他估计方法更加简单;
2.收敛性:无偏或者渐近无偏,当样本数目增加时,收敛性质会更好;
3.如果假设的类条件概率模型正确,则通常能获得较好的结果。但如果假设模型出现偏差,将导致非常差的估计结果。
7 对数函数公式
http://fangs.in/post/thinkstats/likelihood/