Generalization in Machine Learning

机器学习中的泛化能力,指模型对未知数据(测试集)的拟合能力。

从统计学习的角度出发,具体的学习策略有两种方案:经验风险最小(ERM)和结构风险最小(SRM)。

以下图的二分类问题为例,以ERM的标准,倾向于绿色曲线;而以SRM的标准,黑色曲线则是最优选择。

以下我将简单介绍在机器学习的不同阶段,评估/提升模型泛化能力的方法。

1 模型训练

模型训练阶段,从SRM的角度考虑,需要对模型加一个正则项。正则项的选取,常用的有L1、L2范数。

L1范数,也称为曼哈顿范数,为参数向量元素绝对值之和。以L1范数作为正则项,目的是使模型稀疏化,防止模型参数过多。例如 lasso regression 就是在线性回归的基础上加L1范数作为正则项。

\[\lVert x \rVert_1 = \sum_i \vert x_i \rvert \tag{1}\]

L2范数,也称为欧几里得范数,为参数向量元素绝对值平方和再开方。以L2范数作为正则项,防止参数过拟合到某个特征上。例如 ridge regression 就是在线性回归的基础上加L2范数作为正则项。

\[\lVert x \rVert_2 =\sqrt{ \sum_i x_i^2}\tag{2}\]

2 模型选择

模型选择考虑的是不同的模型之间的优劣。

从ERM的角度考虑,拟合数据最好的模型,即似然函数值$\hat L$最大的模型是最好的。那么从SRM的角度考虑,是寻求一个模型复杂度与拟合数据之间的最佳平衡。以SRM策略为目标的评分准则,常用的有AIC、BIC评分。

Akaike Information Criterion 由日本人赤池あかいけ( Akaike)于1974年提出,$k$是模型参数的个数,$\hat L$是似然函数值,AIC评分越小模型越好。

\[{\rm AIC}=2k-2\ln(\hat L)\tag{3}\]

Bayesian Information Criterion 由Schwarz 于1978年提出,$k$是模型参数的个数,$n$是样本数量,$\hat L$是似然函数值,BIC评分越小模型越好。对比AIC,BIC的改进是考虑了样本数量$n$,大数据量时,惩罚项更大。

\[{\rm BIC}=k\ln(n)-2\ln(\hat L)\tag{4}\]

3 Bagging

Bagging是集成学习(ensemble learning)策略的一种。

集成学习的思想是利用多个弱分类器组合一个强分类器,主要有bagging和boosting两种策略。Boosting的目标是提升分类器拟合能力,而bagging则是为了提升分类器的泛化能力。

Bagging策略的做法是对样本均匀随机重采样,对每一份重采样得到的子样本训练一个模型,利用得到的N个模型进行最终的结果预测。

Reference

[1] 李航 (2012) 统计学习方法. 清华大学出版社, 北京.

[2] Wikipedia Overfitting