评分卡系列(四):泛化误差估计和模型调参

广义的偏差(bias)描述的是预测值和真实值之间的差异,方差(variance)描述的是不同样本下模型效果的离散程度。在《Understanding the Bias-Variance Tradeoff》当中有一副图形象地向我们展示了偏差和方差的关系:

评分卡系列(四):泛化误差估计和模型调参

一、Bias-variance 分解

算法在不同训练集上学到的结果很可能不同,即便这些训练集来自于同一分布。对测试样本 x ,令 y_D 为 x 在数据集中的标记,y 为 x 的真实标记, f(x;D) 为训练集 D 上学的模型 f 在 x 上的预测输出。

在回归任务中,学习算法的期望输出为:

\[\bar{f}(x)=\mathbb{E}_{D}[f(x;D)]\]

使用样本数相同的不同训练集产生的方差为:

\[var(x)=\mathbb{E}_{D}[(f(x;D)-\bar{f}(x))^2]\]

噪声为

\[\varepsilon^2=\mathbb{E}_{D}[(y_{D}-y)^2]\]

我们将期望输出与真实标记之间的差别称为偏差(bias):

\[bias^2(x)=(\bar{f}(x)-y)^2\]

为便于讨论,假定噪声期望为零,即

\[\mathbb{E}_D[y_D-y]=0\]

通过简单的多项式展开合并,对算法的期望泛化误差进行分解:

\[\begin{align*} E(f;D)=&\mathbb{E}_{D}\left[(f(x;D)-y_D)^2\right]\\ =&\mathbb{E}_{D}\left[(f(x;D)-\bar{f}(x)+\bar{f}(x)-y_D)^2\right]\\ =&\mathbb{E}_{D}\left[(f(x;D)-\bar{f}(x))^2\right]+(\bar{f}(x)-y)^2+\mathbb{E}_{D}[(y_D-y)^2] \end{align*}\]

于是有

\[E(f;D)=bias^2(x)+var(x)+\varepsilon^2\]

也就是说,泛化误差可分解为偏差、方差与噪声之和。

偏差和方差是有冲突的,下面是一个示意图。在训练不足(模型复杂度低)时,偏差主导了泛化误差率;随着训练程度的加深,方差逐渐主导了泛化误差率。

评分卡系列(四):泛化误差估计和模型调参

二、集成学习框架下的泛化误差分解

在 bagging 和 boosting 框架中,通过计算基模型的期望和方差,我们可以得到模型整体的期望和方差。为了简化模型,我们假设基模型的权重、方差及两两间的相关系数相等。由于bagging和boosting的基模型都是线性组成的,那么有:

\[E(f)=E(\sum_{i=1}^{m}\gamma_{i}\cdot_{}f_{i})=\sum_{i=1}^{m}\gamma_{i}\cdot_{}E(f_i)=\gamma\cdot\sum_{i}^{m}E(f_i)\]

\[\begin{align} Var(f)=&Var(\sum_{i}^{m}\gamma_{i}\cdot_{}f_{i})=Cov(\sum_{i}^{m}\gamma_{i}\cdot_{}f_{i},\sum_{i}^{m}\gamma_{i}\cdot_{}f_{i})\\ =&\sum_{i}^{m}\gamma_{i}^2\cdot_{}Var(f_i)+\sum_{i}^{m}\sum_{j\neq_{}i}^{m}2\rho\gamma_{i}\gamma_{j}\sqrt{Var(f_i)}\sqrt{Var(f_j)}\\ =&m^2\gamma^2\sigma^2\rho+m\gamma^2\sigma^2(1-\rho) \end{align}\]

2.1 bagging 的偏差和方差

对于bagging来说,每个基模型的权重等于 1/m 且期望近似相等(子训练集都是从原训练集中进行子抽样),故我们可以进一步化简得到:

\[E(f)=\gamma\cdot\sum_{i}^{m}E(f_i)=\frac{1}{m}m\mu=\mu\]

\[\begin{align} Var(F)=&m^2\gamma^2\sigma^2\rho+m\gamma^2\sigma^2(1-\rho)\\ =&m^2\frac{1}{m^2}\sigma^2\rho+m\frac{1}{m^2}\sigma^2(1-\rho)\\ =&\sigma^2\rho+\frac{\sigma^2(1-\rho)}{m} \end{align}\]

根据上式我们可以看到,整体模型的期望近似于基模型的期望,这也就意味着整体模型的偏差和基模型的偏差近似。同时,整体模型的方差小于等于基模型的方差(当相关性为1时取等号),随着基模型数(m)的增多,整体模型的方差减少,从而防止过拟合的能力增强,模型的准确度得到提高。但是,模型的准确度一定会无限逼近于1吗?并不一定,当基模型数增加到一定程度时,方差公式第二项的改变对整体方差的作用很小,防止过拟合的能力达到极限,这便是准确度的极限了。另外,在此我们还知道了为什么bagging中的基模型一定要为强模型,否则就会导致整体模型的偏差度低,即准确度低。

  Random Forest是典型的基于bagging框架的模型,其在bagging的基础上,进一步降低了模型的方差。Random Fores中基模型是树模型,在树的内部节点分裂过程中,不再是将所有特征,而是随机抽样一部分特征纳入分裂的候选项。这样一来,基模型之间的相关性降低,从而在方差公式中,第一项显著减少,第二项稍微增加,整体方差仍是减少。

2.2 boosting 的偏差和方差

对于boosting来说,基模型的训练集抽样是强相关的,那么模型的相关系数近似等于1,故我们也可以针对boosting化简公式为:

\[E(f)=\gamma\sum_{i}^{m}E(f_i)\]

\[Var(F)=m^2\gamma^2\sigma^2\rho+m\gamma^2\sigma^2(1-\rho)=m^2\gamma^2\sigma^2\]

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzjwsg.html