在机器学习与深度学习中,特别是"模型已定,参数未知"的情况下,普遍使用最大似然估计法学习参数。为了后面学习中能够找得到地方复习这些概率论知识,所以这里整理了极大似然估计的笔记,所有参考内容放在最后。
对了宝贝儿们,卑微小李的公众号【野指针小李】已开通,期待与你一起探讨学术哟~摸摸大!
似然(likelihood)与概率(probability)虽然经常在概率论中出现,但是我们看到两者名字是不同的,所以其含义是不同的。
在我个人的知识范围内,我认为两者最大的不同在于是否客观。概率指的就是某个事件客观发生的可能性。就比如我们抛一枚质地均匀的硬币,那么正面朝上的可能性是二分之一,无论我们做多少次实验,这个结果都是恒定的。而似然则是在有限的观测次数中,我们推测这个事件发生的可能性。就比如我们在不知道抛硬币正面朝上的概率是多少时,我们做了十次实验,有7次向上,所以我们推测硬币正面朝上的概率为十分之七。
所以总结上面的内容,我们发现似然的核心在于用频率推测最有可能的概率。
似然函数是一种关于统计模型中的参数的函数,其刻画了参数 θ \theta θ与数据 x x x的匹配程度。即在给定输出 x x x的情况下,关于参数 θ \theta θ的函数。共分为以下两类:
我不知道各位是不是和我一样,上课的时候关于这一节老师就说了三个要点:
而至于似然函数的构造,取对数的作用以及求解过程就只是按部就班的讲,并没有讲原因。所以我们这一节就主要讲极大似然估计(maximum likelihood estimate, MLE)。
我们先复习下上面说到的极大似然估计的核心:某件事不知道发生的概率,在有频率(结果)的情况下推测概率。
接着以一个例子进行说明:
X X X | 0 | 1 |
---|---|---|
P P P | θ \theta θ | 1 − θ 1-\theta 1−θ |
第一种情况,我们假设做了10次试验,其中0出现了3次,即 θ = 3 \theta=3 θ=3,那么我们可以很简单的推测出0出现的概率为 0.3 0.3 0.3。
我们将这种情况推广到 n n n次试验,其中0出现了 n 1 n_1 n1次,1出现了 n 2 n_2 n2次,即 n 1 + n 2 = n n_1+n_2=n n1+n2=n。根据上面的解决方案,我们可以瞬间推测出0出现的概率为 n 1 n \frac{n_1}{n} nn1。但是我们用数学的方式来验证这个推测是否为真。
由于这是离散型随机变量,我们求其分布律即可得到似然函数(因为离散型统计模型就是关于 X X X分布律的函数):
L ( θ ) = θ n 1 ( 1 − θ ) n 2 = ∏ i = 1 2 P θ ( X i = x i ) L(\theta)=\theta^{n_1}(1-\theta)^{n_2}=\prod_{i=1}^2P_\theta(X_i=x_i) L(θ)=θn1(1−θ)n2=i=1∏2Pθ(Xi=xi)
这就是似然函数构造中求积的由来。
这时许多聪明的同学就肌肉记忆的想到,要求得使式子最大的 θ \theta θ,即:
L ( x i ; θ ^ ) = max θ ∈ Θ L ( x i ; θ ) L(x_i ; \hat{\theta})=\max \limits_{\theta \in \Theta}L(x_i;\theta) L(xi;θ^)=θ∈ΘmaxL(xi;θ)
其中 Θ \Theta Θ是 θ \theta θ的参数空间, θ ^ \hat{\theta} θ^是使得似然函数最大的 θ \theta θ的取值。
但是我们为何要调整 θ \theta θ的取值使 L ( θ ) L(\theta) L(θ)达到最大值呢?因为我们是基于观测结果来推测 θ \theta θ的取值,而观测结果是已发生的,所以无论如何观测结果出现的概率都为1。但是在上面的例子中, θ ≤ 1 \theta \leq 1 θ≤1,那么我们很难使 L ( θ ) = 1 L(\theta)=1 L(θ)=1,所以我们只能退而求其次,使 L ( θ ) L(\theta) L(θ)尽可能得大。
那么求解最大值,聪明的小朋友就想到了要求一阶导数,得其驻点(这里我没有在网上找到相关的资料证明该函数是个凹函数,但是根据多年的经验观察,求导等于零就对了)。但是直接上面的公式求导是有困难的,同时我们发现对数函数是不会改变函数的单调性的,所以我们对其求对数:
ln L ( θ ) = n 1 ln θ + n 2 ln ( 1 − θ ) \ln L(\theta)=n_1 \ln \theta + n_2 \ln (1-\theta) lnL(θ)=n1lnθ+n2ln(1−θ)
接着对 θ \theta θ求导,令其导数为零:
d ln L ( θ ) d θ = n 1 θ + n 2 1 − θ = 0 \frac{\mathrm{d} \ln L(\theta)}{\mathrm{d} \theta}=\frac{n_1}{\theta} + \frac{n_2}{1-\theta}=0 dθdlnL(θ)=θn1+1−θn2=0
求得:
θ ^ = n 1 n 1 + n 2 = n 1 n \hat{\theta}=\frac{n_1}{n_1 + n_2}=\frac{n_1}{n} θ^=n1+n2n1=nn1
[1]盛骤, 谢式千, 潘承毅.概率论与数理统计(第四版)[M].高等教育出版社:北京,2009:31-32.
[2]盛骤, 谢式千, 潘承毅.概率论与数理统计(第四版)[M].高等教育出版社:北京,2009:147-151.
[3]MATHTSING.极大似然函数的意义[EB/OL].https://www.bilibili.com/video/BV134411u7AS?from=search&seid=1288588469972832560,2019.
[4]百度百科.似然函数[EB/OL].https://baike.baidu.com/item/%E4%BC%BC%E7%84%B6%E5%87%BD%E6%95%B0/6011241?fr=aladdin,2021.
[5]百度百科.概率[EB/OL].https://baike.baidu.com/item/%E6%A6%82%E7%8E%87/828845?fr=aladdin,2021.
[6]emanlee.似然 似然函数 最大似然估计[EB/OL].https://www.cnblogs.com/emanlee/archive/2011/05/29/2062302.html,2011.
[7]Yeung Evan.如何理解似然函数?[EB/OL].https://www.zhihu.com/question/54082000,2020.
[8]HiTao.如何理解似然函数[EB/OL].https://www.zhihu.com/question/54082000,2018.
[9]统计人刘得意.概率(probability)、似然(likelihood)、极大似然法[EB/OL].http://blog.sina.com.cn/s/blog_e8ef033d0101oa4k.html,2014.
[10]霍华德.似然函数与极大似然估计[EB/OL].https://zhuanlan.zhihu.com/p/32568242,2018.