4. 参数估计与抽样分布

统计建模的核心任务之一,是用样本去推断总体的未知参数。例如,假设某批电阻的阻值服从正态分布 \(N(\mu,\sigma^2)\),我们真正关心的是 \(\mu\) 和 \(\sigma^2\) 到底是多少。参数估计就是根据样本 \(x_1,x_2,\dots,x_n\) 给出这些未知参数的估计值或估计范围。点估计给出一个具体数值,区间估计给出一个带有置信水平的范围,而抽样分布则是判断估计好坏、构造置信区间的理论桥梁。

点估计:极大似然估计与矩估计

点估计是用一个统计量 \(\hat{\theta}\) 去估计参数 \(\theta\)。最常用的两种构造方法是极大似然估计(MLE)和矩估计(MOM)。

极大似然估计的思想是:既然样本已经出现,就选择使这组样本出现概率最大的参数值。对独立同分布样本,似然函数为 \(L(\theta)=\prod_{i=1}^{n} f(x_i;\theta)\),通常取对数后求导并令导数为零。以指数分布 \(f(x;\lambda)=\lambda e^{-\lambda x}\) 为例,对数似然为 \(\ell(\lambda)=n\ln\lambda-\lambda\sum x_i\),求导得 \(\hat{\lambda}=n/\sum x_i=1/\bar{x}\)。在 MATLAB 中可以直接用 mle 函数完成数值求解:

x = exprnd(2, 200, 1);          % 生成均值为2的指数分布样本
phat = mle(x, 'Distribution', 'exponential');
lambda_hat = 1 / mean(x);        % 解析解对照
disp([phat, lambda_hat]);

矩估计则更直接:用样本矩代替总体矩。若总体一阶矩 \(E[X]=g(\theta)\),令 \(g(\theta)=\bar{x}\) 解出 \(\hat{\theta}\)。例如正态分布 \(\mu\) 的矩估计就是样本均值,\(\sigma^2\) 的矩估计是样本二阶中心矩。矩估计计算简单,但有时效率低于 MLE;MLE 在大样本下通常具有一致性和渐近正态性,是更常用的选择。

自助法:不依赖分布假设的重采样

当样本量小、分布未知或统计量没有解析抽样分布时,自助法(Bootstrap)提供了一种通用思路。其核心是:把原始样本看作经验总体,从中进行有放回地重复抽样,得到大量自助样本,再计算统计量的经验分布。MATLAB 中可用 bootstrp 实现:

x = [2.1 3.4 1.8 2.9 4.2 2.5 3.1 2.7];
stat = @(data) median(data);
boot_med = bootstrp(2000, stat, x);
ci = prctile(boot_med, [2.5 97.5]);   % 百分位法置信区间

自助法特别适合中位数、相关系数、回归系数等复杂统计量。需要注意的是,它假设原始样本能代表总体,样本量过小时结果可能不稳定。

抽样分布与置信区间覆盖率验证

抽样分布描述的是统计量在重复抽样下的分布规律。例如,正态总体下样本均值 \(\bar{X}\sim N(\mu,\sigma^2/n)\),标准化后服从标准正态分布;当 \(\sigma\) 未知时,用样本标准差 \(s\) 替代,则 \(T=(\bar{X}-\mu)/(s/\sqrt{n})\) 服从自由度为 \(n-1\) 的 t 分布。这正是构造置信区间的依据:\(\mu\) 的 \(1-\alpha\) 置信区间为 \(\bar{x}\pm t_{1-\alpha/2}(n-1)\cdot s/\sqrt{n}\)。

置信区间的“置信水平”不是指某个具体区间包含真值的概率,而是指在大量重复抽样中,按同样方法构造的区间有约 \(1-\alpha\) 的比例覆盖真值。我们可以用蒙特卡洛模拟验证覆盖率:

mu = 10; sigma = 2; n = 30; alpha = 0.05; B = 5000;
cover = false(B, 1);
for b = 1:B
    x = mu + sigma * randn(n, 1);
    xbar = mean(x); s = std(x);
    tcrit = tinv(1 - alpha/2, n - 1);
    ci = xbar + [-1 1] * tcrit * s / sqrt(n);
    cover(b) = (ci(1) <= mu) && (mu <= ci(2));
end
fprintf('覆盖率 = %.4f\n', mean(cover));

若运行结果接近 0.95,说明区间构造方法正确;若明显偏低,可能是分布假设错误、样本量不足或公式使用不当。覆盖率验证把“置信水平”从抽象概念变成了可检验的数值指标,是理解区间估计最有效的方式之一。

参数估计与抽样分布:从样本到置信区间 总体 N(μ, σ²) 未知参数 μ, σ² 随机抽样 样本 x₁, x₂, …, xₙ n = 30(示例) 极大似然估计 MLE / mle() 矩估计 MOM / 样本矩 自助法 Bootstrap / bootstrp() 点估计值 θ̂ 点估计值 θ̂ 经验分布 百分位区间 抽样分布:统计量在重复抽样下的分布 X̄ ~ N(μ, σ²/n) σ 已知 → 标准正态 T = (X̄−μ)/(s/√n) σ 未知 → t(n−1) Bootstrap 分布 经验分位数 置信区间:x̄ ± t₁₋α/₂(n−1) · s/√n 覆盖率验证:重复 B 次,统计区间包含 μ 的比例 ≈ 1−α 覆盖率 ≈ 0.95
学习提示:点估计给出“一个数”,区间估计给出“一个范围”,抽样分布解释“这个范围为什么可信”。三者构成参数估计的完整逻辑链。建议在 MATLAB 中亲手运行覆盖率模拟,观察 B 从 100 增加到 5000 时覆盖率如何逐渐稳定到 0.95 附近。
常见误区:不能把“95% 置信区间”理解为“参数有 95% 的概率落在这个具体区间内”。频率学派下参数是固定值,区间是随机的;置信水平描述的是构造方法的长期覆盖率。此外,Bootstrap 百分位法在样本量很小或统计量分布严重偏斜时可能偏差较大,可考虑 BCa 等改进方法。