知经 KNOWECON · 卓越的经济金融统计数学学习平台

最大似然估计

# 最大似然估计 (Maximum Likelihood Estimation)

最大似然估计 (Maximum Likelihood Estimation, 简称 MLE),是{{{参数估计}}}的一种核心方法,由统计学家和遗传学家 {{{罗纳德·费雪}}} (Ronald A. Fisher) 在20世纪初系统地提出和发展。其基本思想是:在给定一组观测数据的情况下,寻找一个参数值,使得这组数据出现的{{{概率}}}最大。换言之,最大似然估计旨在回答这样一个问题:“什么样的参数最能解释我们所观察到的数据?”

MLE是现代{{{统计学}}}、{{{计量经济学}}}、{{{机器学习}}}以及众多应用科学领域中最常用和最重要的推断工具之一。

## 核心思想与直觉

要理解最大似然估计,首先必须区分{{{概率}}} (Probability){{{似然}}} (Likelihood)这两个概念,尽管它们在日常语言中经常被混用。

* 概率:在参数已知的情况下,用来预测未来事件(数据)发生的可能性。例如,给定一枚均匀的硬币(参数 $p=0.5$),其正面朝上的概率是 $0.5$。我们讨论的是 $P(\text{数据} | \text{参数})$。 * 似然:在数据已知的情况下,用来评估不同参数值的合理性或“可能性”。例如,我们观察到抛硬币10次,出现7次正面(这是已知数据),然后我们评估参数 $p=0.7$ 的“似然”程度是否高于 $p=0.5$。我们讨论的是 $L(\text{参数} | \text{数据})$。

最大似然估计的直觉就是选择使“似然”最大化的那个参数值。

一个简单的例子: 假设我们有一个未知的硬币,想估计其正面朝上的概率 $p$。我们抛了10次,结果是:“正、反、正、正、反、正、正、正、反、正”,总共7次正面,3次反面。 * 如果 $p=0.5$(一枚均匀硬币),出现这个结果的概率是 $0.5^7 \times (1-0.5)^3 \approx 0.117$。 * 如果 $p=0.7$,出现这个结果的概率是 $0.7^7 \times (1-0.7)^3 \approx 0.0022$。 * (此处计算有误,应为 $0.7^7 \times 0.3^3 \approx 0.08235 \times 0.027 \approx 0.00222$)。 * (更正:$0.7^7 \times (1-0.7)^3 = 0.0823543 \times 0.027 = 0.002223$...$$ 这一计算是正确的,但与 $0.5$ 的比较似乎出现了直觉上的偏差。让我们重新计算:$0.5^{10} = 0.0009765$...$$。而通过二项分布计算,10次中7次正面的概率是 $C(10,7) \times p^7(1-p)^3$。$C(10,7)=120$。对于 $p=0.5$,概率是 $120 \times 0.5^{10} \approx 0.117$。对于 $p=0.7$,概率是 $120 \times 0.7^7(0.3)^3 \approx 0.267$。因此,$p=0.7$ 的可能性确实远大于 $p=0.5$。)

修正上述例子中的直觉解释: 我们观察到了7正3反。直觉上,一个每次正面概率为 $p=0.7$ 的硬币,比一个每次正面概率为 $p=0.5$ 的硬币,更有可能产生我们所观测到的结果。最大似然估计正是将这种直觉形式化,它会发现,当 $p$ 取值为样本比例 $7/10=0.7$ 时,观测到“7正3反”这个结果的概率是最大的。因此,$0.7$ 就是参数 $p$ 的最大似然估计值。

## 数学定义与似然函数

假设我们有一个样本 $x_1, x_2, \dots, x_n$,它们是从一个由参数 $\theta$ 决定的总体分布中抽取的 {{{独立同分布}}} (i.i.d.) 样本。该分布的{{{概率密度函数}}} (pdf) 或{{{概率质量函数}}} (pmf) 为 $f(x|\theta)$。

{{{似然函数}}} (Likelihood Function) 定义为样本的联合概率密度(或质量)函数,但被看作是参数 $\theta$ 的函数: $$ L(\theta | x_1, \dots, x_n) = f(x_1, \dots, x_n | \theta) $$

由于样本是独立同分布的,联合概率等于各样本点概率的乘积: $$ L(\theta | x_1, \dots, x_n) = \prod_{i=1}^{n} f(x_i | \theta) $$

最大似然估计量 (Maximum Likelihood Estimator),记作 $\hat{\theta}_{MLE}$,是使得似然函数 $L(\theta)$ 达到最大值的那个 $\theta$ 值。 $$ \hat{\theta}_{MLE} = \arg\max_{\theta} L(\theta | x_1, \dots, x_n) $$ 这里的 $\arg\max$ 符号表示“使函数最大化的参数值”。

## 对数似然函数 (Log-Likelihood Function)

直接处理似然函数 $L(\theta)$ 中的连乘积形式在数学上通常很困难,且在数值计算中容易因为多个小于1的数相乘而导致{{{数值下溢}}} (numerical underflow)。为了解决这个问题,我们通常转而最大化 {{{对数似然函数}}} (Log-Likelihood Function)

由于对数函数 $\ln(x)$ 是一个严格的{{{单调递增函数}}},最大化 $L(\theta)$ 等价于最大化 $\ln(L(\theta))$。对数似然函数定义为: $$ \ell(\theta | x_1, \dots, x_n) = \ln(L(\theta)) = \ln\left(\prod_{i=1}^{n} f(x_i | \theta)\right) = \sum_{i=1}^{n} \ln f(x_i | \theta) $$ 这样,原本的连乘运算就转换为了更易于处理的连加运算。最大化问题变为: $$ \hat{\theta}_{MLE} = \arg\max_{\theta} \ell(\theta | x_1, \dots, x_n) $$

## 求解最大似然估计的步骤

求解MLE通常遵循以下标准步骤:

1. 确定概率分布:根据问题背景和数据特性,为数据选择一个合适的统计模型及其概率密度/质量函数 $f(x|\theta)$。 2. 构建似然函数:基于 $n$ 个独立同分布的观测值 $x_1, \dots, x_n$,写出似然函数 $L(\theta) = \prod_{i=1}^{n} f(x_i | \theta)$。 3. 构建对数似然函数:取 $L(\theta)$ 的自然对数,得到 $\ell(\theta) = \sum_{i=1}^{n} \ln f(x_i | \theta)$。 4. 求导与求解:在微积分中,求函数最大值的方法是找到其导数为零的点。我们将对数似然函数 $\ell(\theta)$ 对参数 $\theta$ 求偏导数,并令其等于零。这个方程被称为 似然方程。 $$ \frac{\partial \ell(\theta)}{\partial \theta} = 0 $$ 解这个方程(或方程组,如果 $\theta$ 是向量)得到的解是MLE的候选值。 5. 验证最大值:为了确保找到的是最大值而非最小值或鞍点,需要检验{{{二阶条件}}}。即,在候选解处,对数似然函数的二阶导数应为负数(对于多参数情况,其{{{Hessian矩阵}}}应为负定)。

在许多情况下,似然方程没有{{{解析解}}},需要依赖{{{数值优化}}}算法(如{{{牛顿-拉夫逊方法}}}、{{{梯度下降法}}}、EM算法等)来迭代求解。

## 示例:正态分布

假设我们有一组来自{{{正态分布}}} $N(\mu, \sigma^2)$ 的样本 $x_1, \dots, x_n$,我们希望估计参数 $\mu$ 和 $\sigma^2$。

1. 概率分布:正态分布的pdf为 $f(x|\mu, \sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)$。

2. 对数似然函数: $$ \ell(\mu, \sigma^2) = \sum_{i=1}^{n} \ln \left[ \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x_i-\mu)^2}{2\sigma^2}\right) \right] $$ $$ = \sum_{i=1}^{n} \left[ -\frac{1}{2}\ln(2\pi) - \frac{1}{2}\ln(\sigma^2) - \frac{(x_i-\mu)^2}{2\sigma^2} \right] $$ $$ = -\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 $$

3. 求导求解: * 对 $\mu$ 求偏导并设为0: $$ \frac{\partial \ell}{\partial \mu} = -\frac{1}{2\sigma^2} \sum_{i=1}^{n} 2(x_i-\mu)(-1) = \frac{1}{\sigma^2} \sum_{i=1}^{n}(x_i-\mu) = 0 $$ $$ \Rightarrow \sum_{i=1}^{n}x_i - n\mu = 0 \Rightarrow \hat{\mu}_{MLE} = \frac{1}{n}\sum_{i=1}^{n}x_i = \bar{x} $$ 这表明,均值的最大似然估计就是{{{样本均值}}}。

* 对 $\sigma^2$ 求偏导并设为0: $$ \frac{\partial \ell}{\partial \sigma^2} = -\frac{n}{2\sigma^2} + \frac{1}{2(\sigma^2)^2}\sum_{i=1}^{n}(x_i-\mu)^2 = 0 $$ 将 $\mu = \hat{\mu}_{MLE} = \bar{x}$ 代入,得到: $$ \frac{n}{2\sigma^2} = \frac{1}{2(\sigma^2)^2}\sum_{i=1}^{n}(x_i-\bar{x})^2 $$ $$ \Rightarrow \hat{\sigma}^2_{MLE} = \frac{1}{n}\sum_{i=1}^{n}(x_i-\bar{x})^2 $$ 这表明,方差的最大似然估计是样本方差(分母为 $n$ 的版本)。

## 最大似然估计的性质

MLE之所以被广泛使用,是因为它具有优良的(特别是大样本下的)统计性质。

1. 一致性 (Consistency):当样本量 $n \to \infty$ 时,最大似然估计量 $\hat{\theta}_{MLE}$ 会{{{概率收敛}}}于参数的真实值 $\theta_0$。这意味着只要有足够多的数据,MLE就能给出对真实参数的准确估计。

2. 渐进正态性 (Asymptotic Normality):在大的样本量下,MLE的抽样分布近似于一个{{{正态分布}}}。具体来说: $$ \sqrt{n}(\hat{\theta}_{MLE} - \theta_0) \xrightarrow{d} N(0, I(\theta_0)^{-1}) $$ 其中 $I(\theta_0)$ 是单位观测值的 {{{费雪信息量}}} (Fisher Information)。这个性质是进行{{{假设检验}}}和构建{{{置信区间}}}的理论基础。

3. 渐进有效性 (Asymptotic Efficiency):MLE是渐进有效的,意味着在大样本下,它的方差达到了所有一致估计量可能达到的最小值,即 {{{克拉默-拉奥下界}}} (Cramér-Rao Lower Bound)。通俗地讲,在大样本中,没有比MLE“更精确”的估计量了。

4. 不变性 (Invariance):如果 $\hat{\theta}$ 是 $\theta$ 的最大似然估计,那么对于任何函数 $g(\theta)$,其最大似然估计就是 $g(\hat{\theta})$。例如,正态分布中标准差 $\sigma$ 的MLE就是方差MLE的平方根,即 $\hat{\sigma}_{MLE} = \sqrt{\hat{\sigma}^2_{MLE}}$。

需要注意的是,MLE在小样本中可能是有偏的 (Biased)。例如,正态分布方差的MLE $\hat{\sigma}^2_{MLE}$ 是有偏的,而样本方差的{{{无偏估计量}}}是分母为 $n-1$ 的版本。但是,这种偏差通常会随着样本量的增加而趋近于零(即渐进无偏)。

## 应用与局限性

* 应用:MLE几乎是所有现代统计建模的基础。例如,{{{逻辑回归}}}、{{{广义线性模型}}}、{{{时间序列分析}}}模型 (如{{{ARMA模型}}})、{{{生存分析}}}、以及复杂的{{{结构方程模型}}}等,其参数估计都普遍采用最大似然法。

* 局限性: 1. 模型设定:MLE的正确性严重依赖于所选择的概率分布模型是否正确。如果模型设定错误(Model Misspecification),估计结果的质量会大打折扣。 2. 计算复杂性:对于复杂的模型,似然函数可能非常难以处理,存在多个局部最大值,或者需要复杂的数值优化算法。 3. 小样本偏差:如前所述,MLE在小样本下可能存在偏差。 4. 对异常值敏感:由于似然函数是所有样本点的函数值的乘积,一个或几个{{{异常值}}} (outliers) 可能会对似然函数产生巨大影响,从而扭曲估计结果。