三、偏差方差分解
3.1 点估计
点估计:对参数 的一个预测,记作 。
假设 为独立同分布的数据点,该分布由参数 决定。则参数 的点估计为某个函数:
注意:点估计的定义并不要求 返回一个接近真实值 。
根据频率学派的观点:
- 真实参值 是固定的,但是未知的。
- 是数据点的函数。
- 由于数据是随机采样的,因此 是个随机变量。
3.2 偏差
偏差定义为: ,期望作用在所有数据上。
- 如果 ,则称估计量 是无偏的。
- 如果 ,则称估计量 是渐近无偏的。
无偏估计并不一定是最好的估计。
偏差的例子:
一组服从均值为 的伯努利分布的独立同分布样本 : 为 的无偏估计。
一组服从均值为 ,方差为 的高斯分布的独立同分布样本 :
- 为 的无偏估计。
- 为 的有偏估计。因为
- 为 的无偏估计。
3.3 一致性
通常希望当数据集的大小 增加时,点估计会收敛到对应参数的真实值。即:
表示依概率收敛。即对于任意的 ,当 时,有:
上述条件也称做一致性。它保证了估计偏差会随着样本数量的增加而减少。
渐近无偏不一定意味着一致性。
如:在正态分布产生的数据集中,可以用 作为 的一个估计。
- 它是无偏的,因为 ,所以不论观测到多少个数据点,该估计都是无偏的
- 但它不是一致的,因为他不满足
3.4 方差
估计量的方差记作 ,标准差记作 。
它们刻画的是:从潜在的数据分布中独立的获取样本集时,估计量的变化程度。
例:一组服从均值为 的伯努利分布的独立同分布样本
- 为 的无偏估计。
- 。表明估计量的方差随 增加而下降。
估计量的方差随着样本数量的增加而下降,这是所有估计量的共性。
例:均值估计 ,其标准差为:
其中 是样本 的真实标准差,但是这个量难以估计。实际上 和 都不是真实标准差 的无偏估计,这两种方法都倾向于低估真实的标准差。
实际应用中, 是一种比较合理的近似估计,尤其是当 较大的时候。
3.5 偏差方差分解
偏差和方差衡量的是估计量的两个不同误差来源:
- 偏差衡量的是偏离真实值的误差的期望。
- 方差衡量的是由于数据采样的随机性可能导致的估计值的波动。
通常希望的是:
- 估计量的偏差比较小,即:估计量的期望值接近真实值。
- 估计量的方差比较小,即:估计量的波动比较小。
假设:
在训练集为 上学习到的模型为 。
不同的训练集训练得到不同的模型,因此模型与训练集 相关。
样本 的观测值为 ,其真实值为 。其中 , 为观测误差。
观测误差是由人工标注失误引起的。
观察误差的期望为0: 。
观测误差 与真实值 是相互独立的。即有: 。
样本 的估计量为 。
定义:
损失函数为平方损失函数: 。
对未知样本 :
- 预测偏差为: 。它刻画了期望输出与真实值之间的差别。
- 预测方差为: 。它刻画了模型输出随着训练集 的不同从而导致的波动。
- 噪声方差为: 。它刻画了不同训练集 中的噪音波动。
则未知样本 的泛化误差定义为损失函数的期望: 。其中使用观测值 而不是真实值 ,是因为观测值已知而真实值未知。
则有:
于是泛化误差可以分解为偏差、方差和噪声之和:
- 偏差 :度量了学习算法的期望预测与真实结果之间的偏离程度,刻画了学习算法本身的拟合能力。
- 方差 :度量了训练集的变动所导致的学习性能的变化,刻画了数据扰动造成的影响。
- 噪声 :度量了在当前任务上任何学习算法所能达到的期望泛化误差的下界,刻画了学习问题本身的难度。
偏差-方差分解表明:泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度共同决定的。
偏差-方差分解中,噪声也可以称作最优误差或者贝叶斯误差。如:在图像识别的问题中,人眼识别的错误率可以视作最优误差。
在工程实际中,通常会考察
特征完全相同,但是标签不同
的那些样本的数量。这种样本越多,则代表必须犯的错误
越大。因此实际应用中可以将这个比例作为贝叶斯误差。偏差、方差与模型容量有关。用
MSE
衡量泛化误差时,增加容量会增加方差、降低偏差。- 偏差降低,是因为随着容量的增大,模型的拟合能力越强:对给定的训练数据,它拟合的越准确。
- 方差增加,是因为随着容量的增大,模型的随机性越强:对不同的训练集,它学得的模型可能差距较大。
一般来说,偏差和方差是由冲突的,这称作偏差-方差窘境
bias-variance dilemma
。给定学习任务:
在训练不足时模型的拟合能力不够强,训练数据的扰动不足以使模型产生显著变化,此时偏差主导了泛化误差。
随着训练程度的加深模型的拟合能力逐渐增强,训练数据发生的扰动逐渐被模型学习到,方差逐渐主导了泛化误差。
在训练充分后模型的拟合能力非常强,训练数据发生的轻微扰动都会导致模型发生显著变化。
若训练数据自身的、非全局的特性被模型学到了,则将发生过拟合。
3.6 误差诊断
通常偏差方差反映了模型的过拟合与欠拟合。
高偏差对应于模型的欠拟合:模型过于简单,以至于未能很好的学习训练集,从而使得训练误差过高。
此时模型预测的方差较小,表示预测较稳定。但是模型预测的偏差会较大,表示预测不准确。
高方差对应于模型的过拟合:模型过于复杂,以至于将训练集的细节都学到,将训练集的一些细节当做普遍的规律,从而使得测试集误差与训练集误差相距甚远。
此时模型预测的偏差较小,表示预测较准确。但是模型预测的方差较大,表示预测较不稳定。
误差诊断:通过训练误差和测试误差来分析模型是否存在高方差、高偏差。
- 如果训练误差较高:说明模型的方差较大,模型出现了欠拟合。
- 如果训练误差较低,而训练误差较高:说明模型的偏差较大,出现了过拟合。
- 如果训练误差较低,测试误差也较低:说明模型的方差和偏差都适中,是一个比较理想的模型。
- 如果训练误差较高,且测试误差更高:说明模型的方差和偏差都较大。
上述分析的前提是:训练集、测试集的数据来自于同一个分布,且最优误差较小。否则讨论更复杂。
3.7 误差缓解
高方差和高偏差是两种不同的情况。如果算法存在高偏差的问题,则准备更多训练数据其实没什么卵用。
所以首先要清楚:问题是高偏差还是高方差还是二者兼有。
如果模型存在高偏差,则通过以下策略可以缓解:
- 选择一个容量更大、更复杂的模型。
- 使用更先进的最优化算法。该策略通常在神经网络中使用。
如果模型存在高方差,则通过以下策略可以缓解:
增加更多的训练数据。它通过更多的训练样本来对模型参数增加约束,会降低模型容量。
如果有更多的训练数据,则一定会降低方差。
使用正则化。它通过正则化项来对模型参数增加约束,也会降低模型容量。
有时候更多的训练数据难以获取,只能使用正则化策略。
通常优先解决高偏差的问题。这是最低标准,要反复尝试,直到训练误差降低到足够小。
然后试图降低方差。
总之就是不断重复尝试,直到找到一个低偏差、低方差的模型。