过拟合与模型选择(AIC/BIC)
/ OH-ver-FIT-ing; ay-eye-see; bee-eye-see /
想象一个学生死记去年考卷的确切答案,而不去学懂这门科目。他在练习卷上拿满分,到了真正的考试却不及格,因为他拟合的是某一份特定考卷的怪癖,而非背后的知识。统计模型也会犯同样的错误。过拟合,就是把模型造得过于精巧,以致它去追逐训练数据中的随机噪声,把它拟合得漂漂亮亮,对新数据的预测却很糟。模型选择,正是避免此事的那门有纪律的艺术——选一个丰富到足以捕捉真实信号、却又不过分丰富的模型。
加入更多变量或更多灵活性,总会改善对你所训练数据的拟合;问题在于过了某一点,你拟合的就是噪声而非信号,样本外的表现反而变差。用来平衡拟合与复杂度的工具是信息准则。AIC(赤池信息准则)与 BIC(贝叶斯信息准则)都取模型的对数似然,再为每个多出的参数减去一项惩罚;你偏好得分较低的模型。BIC 的惩罚随样本量增大,因此对复杂度惩罚得更狠,往往挑出比 AIC 更简单的模型。不过,诚实的黄金标准是:在模型从未见过的数据上检验它——留出集或交叉验证,即在一部分数据上拟合,在其余数据上衡量误差。
对精算师而言,这关乎真金白银。一个带有过多细分地域或车型类别的定价 GLM,会把去年的损失拟合得极好,然后对明年定错价,向某些客户错误收费、又流失掉那些有利可图的客户。AIC、BIC 与交叉验证的全部要点,就是找到那个能够泛化的模型,而非那个奉承历史数据的模型。有经验的建模者反复念叨一句直白的警告:对你的数据拟合得最好的模型,几乎从来不是预测未来最好的模型;而一个简约、可解释的模型,通常胜过一个庞杂到无人能核查的模型。
在一个 5 变量与一个 15 变量的定价 GLM 之间抉择时,精算师看到 15 变量模型的似然更高,但 BIC 更差(更高)。BIC 的复杂度惩罚把那多出的十个变量标记为“追逐噪声”,于是选用更精简的模型。
似然更高但 BIC 更差:多出的参数买到的是拟合,而非预测力。
AIC 与 BIC 是向导,而非裁决,且它们假定所比较的模型是在同一份数据上拟合的可比模型。检验过拟合最诚实的方法,永远是模型在从未见过的数据上的表现。