在机器学习中,我们经常要利用极大似然法近似数据整体的分布,本篇文章通过介绍极大似然法及其一些性质,旨在深入浅出地解释清楚极大似然法。
0. 贝叶斯概率
首先看一下经典的贝叶斯公式:
$$
p(Y|X)=\frac{p(X|Y)p(Y)}{p(X)}
$$
其中,$p(Y)$称为先验概率($prior$),即根据先验知识得出的关于变量$Y$的分布,$p(X|Y)$称为似然函数($likelihood$),$p(X)$为变量$X$的概率,$p(Y|X)$称之为条件概率(给定变量$X$的情况下$Y$的概率,$posterior$,后验概率)。
1. 似然函数
似然,即可能性;顾名思义,则似然函数就是关于可能性的函数了。在统计学中,它表示了模型参数的似然性,即作为统计模型中参数的函数。一般形式如下:
$$
L(\omega)=p(D | \omega) = p(x_1, x_2, \cdots ,x_n| \omega)
$$
其中,$D$表示样本集${x_1,x_2,\cdots, x_n}$, $\omega$表示参数向量。
似然函数表示了在不同的参数向量$\omega$下,观测数据出现的可能性的大小,它是参数向量$\omega$的函数。在某种意义上,我们可以认为其是条件概率的逆反$^{[1]}$。
在这里利用Wikipedia$^{[1]}$中的例子简要说明一下似然函数,同时也引出极大似然估计。
考虑优质一枚硬币的实验,通常来说,我们的硬币都是“公平”(质地均匀)的,即正面向上(Head)的概率$p_H=0.5$,由此概率我们可以知道投掷若干次后各种结果出现的可能性(概率,或然性)。
例如,投掷硬币两次,两次都为上的概率为0.25,利用条件概率表示,即:
$$
P(HH|p_h=0.5)=0.5^2=0.25
$$
如果一个硬币并非质地均匀,那么它可能是一枚“非公平”的。在统计学中,我们关注的是已知一系列投掷的结果时,关于硬币投掷时正面朝上的可能性的信息。我们可以建立一个统计模型:假设硬币投出时会有$p_H$的概率正面朝上,则有$1-p_H$的概率反面朝上。这时通过观察已发生的两次投掷,条件概率可以改写成似然函数:
$$
L(p_H)=P(HH|p_H=0.5)=0.25
$$也就是说,对于取定的似然函数,在观测到两次投掷都是正面朝上时,$p_H$的似然性是0.25。注意,反之并不成立,即当似然函数为0.25时,不能推论出$p_H=0.25$。
如果考虑$p_H=0.6$,那似然函数也会改变:
$$
L(p_H)=P(HH|p_H=0.6)=0.36
$$
如图所示,注意到似然函数的值变大了。这说明,如果参数$p_H$取值变成0.6的话,结果观测到连续两次正面朝上的概率比假设$p_H=0.5$时更大,也就是说,参数$p_H$取0.6要比取成0.5更有说服力,更为"合理"。总之,似然函数的重要性不是它的具体取值,而是当参数变化时,函数到底变小还是变大。
对同一个似然函数,其所代表的模型中,某项参数值具有多种可能,但如果存在一个参数值,使得它的函数值最爱的话,那么这个值就是这项参数最为“合理”的参数值。
在这个例子中,$p_H$取1时,似然函数达到最大值。也即是,当连续观测到两次正面朝上时,假设硬币投掷时正面朝上的概率为1是最合理的。
在上述引用中,我们看到了一个极端的结论,即未来所有的投掷都会是正面向上,这是频率派观点下使用广泛的一种方法,即极大似然法。在上面的观点中(频率派),$\omega$被认为是一个固定的参数,它的值通过估计来确定。但是在贝叶斯派观点中,只有一个数据集$D$(即实际观测到的数据集),参数的不确定性通过$\omega$的概率分布来表达。贝叶斯的观点是对先验概率的包含是很自然的事情,包含先验概率的贝叶斯方法将不会得到上述的极端结论。
另外还有两点需要注意,第一,似然函数不是$\omega$的概率分布,关于$\omega$的积分并不一定等于1;第二,似然$\ne$概率,概率(或然性)用于在已知一些参数的情况下预测接下来的结果,似然性则是在已知某些结果时,对有关参数进行估值。关于第二点,举个例子,如果我有一枚硬币,如果是质地均匀的(已知参数),那么它出现正面朝上的概率为0.5(结果);同样地,如果一枚硬币,我抛了100次,正面朝上52次(结果),那么我认为硬币十有八九是质地均匀的(估计参数)。
2. 极大似然估计(maximum likelihood estimation, MLE)
了解了似然函数,那么极大似然估计是什么就很好理解了,它是一种用来估计一个概率模型参数的方法。根据公式(2),我们一旦获得一个数据集$D$,那我们就能求得一个关于$\omega$的估计,极大似然估计会寻找一个最可能的值(此处的可能是最可能的$\omega$,这个$\omega$可以使出现采样$D$的可能性最大化)。
从数学上来讲,我们可以在$\omega$的所有取值中,寻找一个值使得似然函数达到最大值,这种估计方法称之为极大似然估计。极大似然估计是样本不变时,关于$\omega$的函数。极大似然估计不一定存在,也不一定唯一。
在第1节中预测硬币的质地$\omega$,是关于极大似然估计的一个经典例子。其他例子可以查看参考文献$^{[2]}$。
现在我们看一下极大似然估计在正态分布中的应用:
现在假定我们有一个观测的数据集$\mathbf{x}=(x_1,\cdots,x_N)^T$,表示标量变量$x$的N次观测。我们假定各次观测是独立地从高斯分布中抽取,分布的均值$\mu$和方差$\sigma^2$未知,我们想根据数据集来确定这些参数。两个独立事件的联合概率可以由各个事件的边缘概率的乘积得到。我们的数据集$\mathbf{x}$是独立同分布的,因此给定$\mu$和$\sigma^2$,我们可以给出高斯分布的似然函数:
$$
p(\mathbf{x}|\mu,\sigma^2)=\prod_{n=1}^{N}\mathcal{N}(x_n|\mu,\sigma^2)
$$
为了简化分析和有助于数值运算,我们取似然函数的对数(最大化对数似然等价于最大化似然函数,很容易证明):
$$
ln(\mathbf x|\mu,\sigma^2)=-\frac {1} {2\sigma^2} \sum_{n=1}^{N}(x_n-\mu)^2-\frac {N}{2}ln\sigma^2-\frac{N}{2}ln(2\pi)
$$
关于$\mu$,最大化对数似然函数,得到$\mu$的最大似然解:
$$
\mu_{ML}=\frac {1}{N} \sum_{n=1}^{N}x_n
$$
可看到解为样本均值。同理,方差$\sigma^2$的最大似然解为:
$$
\sigma_{ML}^2=\frac {1}{N} \sum_{n=1}^{N}(x_n-\mu_{ML})^2
$$
由此完成了正态分布的极大似然估计。
3. 极大似然的有偏性
极大似然估计方法求解参数有一定局限性$^{[3]}$,极大似然法除了会得出第1节中关于硬币的极端情况外,还会出现一种情况,有偏估计,就是期望$\ne$理想值。最大似然方法会系统化地低估分布的方差。下面进行证明:
均值的估计$\mu_{ML}$的期望$E[\mu_{ML}]$为:
$$
E(\mu_{ML})=E(\frac{1}{N} \sum_{n=1}^{N}x_n)=\frac {1}{N}E({\sum_{n=1}^{N}x_n})=\frac{1}{N}\sum_{n=1}^{N}E(x_n)=\mu
$$
方差的估计$\sigma^2$的期望$E[\sigma_{ML}^2]$为:
$$
E[\sigma_{ML}^2]=E(\frac {1}{N} \sum_{n=1}^{N}(x_n-\mu_{ML})^2)=E(\frac{1}{N}\sum_{n=1}^{N}x_n^2-\mu_{ML}^2)=\frac {1}{N}\sum_{n=1}^{N}E(x_n^2)-E(\mu_{ML}^2)
$$
然后求其后两项,正态分布的二阶矩为
$$
E(x_n^2)=\mu^2+\sigma^2
$$
而
$$
E(\mu_{ML}^2)=E((\frac{x_1+x_2+x_3+\cdots+x_n}{n})^2)=\frac{1}{n^2}(n^2\mu^2+n\sigma^2)
$$
故:
$$
E[\sigma_{ML}^2]=\frac{n-1}{n}\sigma^2
$$
由此证明了极大似然的有偏性。其中公式(12)和公式(13)的证明可自行参考正态分布的基础知识。
在这里,PRML$^{[3]}$给出了更直观地解释,如下图:
其中,绿色曲线表示真实高斯分布,数据点是根据此概率分布生成,三条红色分别拟合了三个高斯概率分布,每个数据集包含了两个蓝色数据点,对三个数据集求平均,很明显方差被低估了。因为它是相对样本均值进行测量的,而不是相对真实的均值进行测量
4. 后记
极大似然作为机器学习中的一种最常用方法,深刻理解其含义是非常必要且有用的,应该像这对于理解概率论和一些常见的模型有着很大的帮助。当然,极大似然法还有一些性质,如泛函不变性,渐行线行为,限于时间精力和个人水平,没有给出证明,读者可自行参考维基百科$^{[2]}$。文章中大部分内容为总结和摘抄,共勉。
参考文献: