最大似然估计(MLE) & 最大后验概率估计(MAP)

概率用于在已知一些参数的情况下,预测接下来的观测所得到的结果;

似然性则是用于在已知某些观测所得到的结果时,对有关事物的性质的参数进行估计。

概率:参数 + 观测 --> 结果;
似然:观测 + 结果 --> 参数;

参数可以理解为描述事件性质的未知数,知道这些参数,就能完全描述一个事件;
可以用 CTR 预估来解释这个过程,最开始我们只有观测(pv)和结果(clk,是否点击),我们假设模型未 LR,那么通过最大似然估计可以得到 LR 的相关参数,最后在线上使用的时候,可以直接根据模型(LR)+ 观测数据(pv)来预估结果(点击的可能性);

其实就是一个似然估计参数,然后概率预估结果;

最大似然估计(Maximum Likelihood Estimation, MLE) or 极大似然估计

最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。最大似然估计理想地认为,对于极少的样本观测,我们观测到的样本很可能就是发生概率最大的。

假设$x_1,x_2,…,x_n$为独立同分布采样, $\theta$为模型参数,$f$为已知的模型。遵循上述的独立同分布假设,产生上述采样的概率可以表示为:
$$
f(x_1,x_2,…x_n)=f(x_1|\theta)\times f(x_2|\theta)\times … \times f(x_n|\theta)
$$
此时,$x_1,x_2,…,x_n$已知,而模型参数$\theta$未知,因此似然可以定义为
$$
L(\theta|x_1,x_2,…,x_n):=f(x_1,x_2,…,x_n|\theta)=\prod_{i=1}^{n}f(x_i\theta)
$$

注:上面如果写等式其实是有误解的,最大似然估计是不考虑先验概率的,只是根据观测直接预估模型的参数。可以结合贝叶斯公式,如果去除贝叶斯公式中的先验概率,那么上面两个等式是可以认为是相等的;

由于小数连乘操作可能造成下溢的问题,所以一般会对似然两边同时取对数进行计算,得到如下的形式:
$$
logL(\theta|x_1,x_2,…,x_n)=\sum_{i=1}^{n}logf(x_i|\theta)
$$
对参数$\theta$的最大似然估计为
$$
\hat{\theta}{mle} = argmax{\theta\in\Theta}\hat{l}(\theta|x_1,x_2,…,x_n)
$$
其中,$\hat{l}=\frac{1}{n}logL$为平均对数似然(其实不求平均也没问题,因为之后是对参数 $\theta$ 求导,和$n$无关)

之后求参数导,导数等于 0,求参数即可;

最大后验概率估计(Maximum a Posteriori estimation,MAP)

最大似然估计是求$\theta$ 使得似然函数$P(x_0|\theta)$最大,最大后验估计是求$\theta$使得函数$P(x_n|\theta)P(\theta)$最大,$\theta$自己出现的先验概率也最大(其实就是考虑了参数的先验概率)

MAP 其实是在最大化:
$$
P(\theta|x_n)=\frac{P(x_n|\theta)P(\theta)}{P(x_0)}
$$
观测数据 $x_0$ 是确定的(比如抛硬币,出现:反正正正正反正正正反,把实验做 1000 次,“反正正正正反正正正反”出现了$n$次,那么 $P(x_0)=n/1000$ ,总之,这是一个可以由数据集得到的值),因此可以把分母去掉;

最大化后验概率$P(\theta|x_0)$的意义也很明确,$x_0$已经出现了,要求$\theta$取得什么值是的 $P(x_n|\theta)$最大;

最大似然估计 vs 最大后验概率估计

最大后验概率估计其实就是多了一个参数的先验概率,也可以认为最大似然估计就是把先验概率认为是一个定值;

为什么先验概率加进去有用?

比如抛硬币,先验概率认为,正面朝上概率的最大可能是 0.5;但是在实际抛硬币的过程中,可能会出现抛 10 次 7 次正面的情况,这种情况下,最大似然估计会认为正面朝上的概率最大可能是 0.7,最大后验概率估计会综合考虑实验和先验概率,因此认为正面朝上的概率最大可能是 0.5-0.7 之间的一个值,相当于先验概率对其做了一个校正;

最大似然估计可以认为是频率学派的观点,最大后验概率估计可以认为是贝叶斯学派的观点;

后验概率 := 似然 * 先验概率

参考文献

  1. 最大似然估计(MLE) & 最大后验概率估计(MAP)