在我们生活的世界里,数据和不确定性无处不在。比如,你抛了10次硬币,7次正面朝上。那么,这枚硬币是不是公平的?如果不是,它正面朝上的概率是多少?最大似然估计,就是用来回答这类问题的一把数学“手术刀”。
假设你有一枚硬币,它正面朝上的概率是 $p$,反面的概率是 $1-p$。$p$ 是多少你不知道,但你可以做实验:抛它10次,结果出现 7 次正面,3 次反面。
现在的问题是:什么样的 $p$ 最有可能“产生”我们观察到的这个结果?
直觉上,你会猜 $p = 0.7$,因为 7/10 的比例是 70% 的正面。这个直觉的背后,其实就是最大似然估计的思想。
在概率论中,“概率”描述的是:在已知模型参数的情况下,出现某种结果的可能性。比如,已知 $p=0.5$,抛10次硬币出现7次正面的概率是可以算出来的。
而“似然”刚好反过来:在已知观测结果的情况下,某个参数值导致该结果出现的可能性。它不是参数的真实概率,而是一个关于参数的函数。
用数学语言说,对于我们的抛硬币实验,似然函数可以写成:
$$ L(p) = \binom{10}{7} p^7 (1-p)^3 $$
这里 $p$ 是自变量,$L(p)$ 表示当真实正面概率为 $p$ 时,观测到“10次中7次正面”这一结果的相对可能性。
最大似然估计(Maximum Likelihood Estimation,简称 MLE),就是找到那个让似然函数达到最大的参数值。
换句话说,我们问:在所有可能的 $p$ 中,哪个 $p$ 会使我们实际看到的数据(7正3反)出现的概率最大?这个 $p$ 就是我们对真实参数的最佳猜测。
对于上面的例子,我们可以通过求导找到最大值。更常见的是对似然函数取对数(对数似然函数),因为这样计算更方便,而且不会改变最大值的位置:
$$ \ln L(p) = \ln \binom{10}{7} + 7 \ln p + 3 \ln (1-p) $$
求导并令其等于零:
$$ \frac{d \ln L(p)}{dp} = \frac{7}{p} - \frac{3}{1-p} = 0 $$
解得:
$$ p = \frac{7}{10} = 0.7 $$
看,数学严格地证明了我们的直觉!使“7正3反”这个结果最可能出现的硬币正面概率,就是 0.7。
最大似然估计远比抛硬币强大。假设我们有一组数据,猜想它们来自一个正态分布 $N(\mu, \sigma^2)$,但我们不知道具体的 $\mu$ 和 $\sigma^2$。
我们收集了 $n$ 个样本:$x_1, x_2, \dots, x_n$。正态分布的概率密度函数是:
$$ f(x \mid \mu, \sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{(x-\mu)^2}{2\sigma^2} \right) $$
因为每个样本是独立抽取的,整个样本集的联合似然函数就是各个数据点密度的乘积:
$$ L(\mu, \sigma^2) = \prod_{i=1}^n \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{(x_i-\mu)^2}{2\sigma^2} \right) $$
取对数后得到:
$$ \ln L(\mu, \sigma^2) = -\frac{n}{2} \ln(2\pi) - \frac{n}{2} \ln(\sigma^2) - \frac{1}{2\sigma^2} \sum_{i=1}^n (x_i - \mu)^2 $$
分别对 $\mu$ 和 $\sigma^2$ 求偏导并令为零,我们会得到非常熟悉的结果:
原来,我们平时用的均值和(除以 $n$ 的)方差,恰恰就是正态分布下最大似然估计的结果。
最大似然估计在现代统计学和机器学习中占据核心地位,有几点原因:
事实上,你在训练很多机器学习模型时,背后跑着的优化算法,很可能就是在做最大似然估计。
虽然 MLE 很强大,但也并非完美:
最大似然估计就是这样一个朴素而深刻的想法:如果某个参数值能让你实际看到的数据出现的概率最大,那么这个参数值就是你最好的估计。 它从抛硬币的简单问题出发,一直延伸到深度学习的前沿,是连接概率、统计和现代人工智能的一条金线。
理解 MLE,就像掌握了一把钥匙,可以打开理解许多统计方法和机器学习模型的大门。