「选对模型」和「预测得准」在数学上不可兼得——AIC 的 +2k 与 BIC 的 +k·ln n 不是两档旋钮
【锚点】AIC 的 +2k 和 BIC 的 +k·ln n 不是「惩罚力度」的两档旋钮,而是两个不同估计目标的估计量:前者估【样本外 KL 风险】,后者估【−2×边际似然】。把它们当成同一件事的保守/激进版本,是模型选择里最常见的一次范畴错误。
【显式】同一个拟合项,不同的罚: - AIC = −2 ln L(θ̂) + 2k - BIC = −2 ln L(θ̂) + k ln n
差距随 n 单调拉开:n=100 时 ln n=4.61,BIC 罚 2.30 倍;n=10⁶ 时 ln n=13.82,罚 6.91 倍。这个「差距」不是谁设计的,是两条推导路线碰巧在 n=e²≈7.39 处相交的结果——低于这个样本量,BIC 反而罚得更轻。
【隐式】+2k 到底是什么?它不是「复杂度税」,是最大化操作本身的偏差。
【流程节点链路】真实分布 f → 候选模型族 {g_θ} → MLE θ̂ → 想估的目标量 E_f[ln g_θ̂] → 手上只有 ln g_θ̂(观测数据) → 二者之差 E[ln g_θ̂ − E_f ln g_θ̂] = k/(2n) + o(1/n) → 两边乘 −2n → AIC = −2 ln L + 2k
关键在于那个 k/(2n):你在 k 个方向上各取了一次最大值,每个方向平均白送半个 χ²₁(期望 1/2),k 个方向就是 k/2。这跟 Type M error、赢家诅咒、回归到均值是同一个数学对象换了件外衣——「被选中的最大值总是偏高,偏高的量正比于你搜索了多少个方向」。所以 AIC 的罚项其实是一张「搜索自由度」的账单。
【细微】AIC 的过拟合概率不随 n 收敛到 0。嵌套模型差一个参数时,AIC 选大模型的充要条件是 LR > 2;H0 下 LR~χ²₁,P(χ²₁>2)=0.157。也就是说 AIC 永远有约 15.7% 的概率多留一个噪声参数,n→∞ 也不消失。BIC 的对应概率 →0(阈值 k ln n 发散)。
代价在另一头:BIC 要稳定检出效应,需要 |β| ≳ √(ln n / n);AIC 只需 |β| ≳ n(−1/2)。BIC 的检测门槛被 √(ln n) 抬高了——这就是「相合性」的价格单。
【极难发现】Yang (2005, Biometrika 92:937) 证明了这不是工程问题而是不可能定理:没有任何选择准则能同时做到 (a) 相合、(b) minimax-rate optimal。
【流程节点链路】候选集含真模型 → 相合性要求 P(选真)→1 → 迫使惩罚项 λ_n→∞(否则固定大小的伪效应永远混得进来)→ 惩罚发散 ⇒ 任何 ‖β‖=O(n(−1/2)) 的真信号被系统性丢弃 → 局部备择下风险不达 minimax 下界 → 与 (b) 冲突
【极难发现·二】更少人提:BIC 的「贝叶斯性」是有条件的。Laplace 展开给出 BIC ≈ −2 ln BF,前提是先验取 Kass & Wasserman (1995) 的 unit information prior:N(θ̂, I₁(θ̂)⁻¹)——以 MLE 为中心、信息量等于一个观测的先验。它依赖数据(中心就是 θ̂),所以 BIC 严格来说不对应任何固定先验的 Bayes factor;它隐含地假设「真参数离 MLE 大约一个标准误」。这既不是无信息先验,也不是任何研究者真实的先验。说「BIC 更贝叶斯」,得先把这个先验买下来。
【推论】所以「哪个更好」是伪问题。该问的是「我的损失函数是什么」: - 要报告一个系数、一个机制、一个「有没有效应」的判断 → 你在做识别 → 相合路线(BIC/EBIC) - 要预测一个新样本 → 你在做风险最小化 → AIC/LOO-CV - 两个都要,还想要一个数 → 你在要求一个被 Yang 证明不存在的估计量
反直觉的收尾:当真实数据生成过程根本不在候选集里(实践中是常态),「相合性」这个性质就完全失效——它是对一个测度零事件的渐近承诺。此时 BIC 只剩「罚得更狠」这一个属性,而罚得更狠没有任何定理保证预测更好。Shibata (1983) 早就证明:即使真模型有无穷多个参数,AIC 仍渐近有效。
【留给评论区的问题】如果「相合」在真模型缺席时是个空承诺,我们为什么还把它当模型选择的黄金标准?是因为它在教科书里太好讲,还是因为「选对了模型」这个叙事对论文写作太顺手?如果你手上有两个候选准则,你会怎么设计一个实验来区分「它在识别」还是「它在预测」?







0 Comments