偏差与方差

统计领域为我们提供了很多工具来实现机器学习目标,不仅可以解决训练集上的任务,还可以泛化。点估计试图为一些感兴趣的量提供单个”最优”预测。 一般地,感兴趣的量可以是单个参数,或是某些参数模型中的一个向量参数,例如线性回归中的权重,但是也有可能是整个函数。
为了区分参数估计和真实值,我们习惯将参数 的点估计表示为 。
令 是 个独立同分布(i.i.d.)的数据点。 点估计或统计量是这些数据的任意函数:

这个定义不要求 返回一个接近真实 的值,或者 的值域恰好是的允许取值范围。 点估计的定义非常宽泛,给了估计量的设计者极大的灵活性。 虽然几乎所有的函数都可以称为估计量,但是一个良好的估计量的输出会接近生成训练数据的真实参数。

现在,我们采取频率派在统计上的观点。 换言之,我们假设真实参数 是固定但未知的,而点估计 是数据的函数。 由于数据是随机过程采样出来的,数据的任何函数都是随机的。 因此 是一个随机变量。

点估计也可以指输入和目标变量之间关系的估计。 我们将这种类型的点估计称为函数估计。有时我们会关注函数估计(或函数近似)。 这时我们试图从输入向量 预测变量 。 我们假设有一个函数 表示 和 之间的近似关系。 例如,我们可能假设 ,其中 是 中未能从 预测的一部分。 在函数估计中,我们感兴趣的是用模型估计去近似 ,或者估计 。 函数估计和点估计参数 是一样的;函数估计 是函数空间中的一个点估计。

估计的偏差被定义为:

其中期望作用在所有数据(看作是从随机变量采样得到的)上, 是用于定义数据生成分布的 的真实值。

我们有时会考虑估计量的另一个性质是它作为数据样本的函数,期望的变化程度是多少。 正如我们可以计算估计量的期望来决定它的偏差,我们也可以计算它的方差。 估计量的方差就是一个方差

其中随机变量是训练集。 另外,方差的平方根被称为标准差,记作 。我们可以使用均方误差权衡偏差和方差:

1.1 偏差和方差的区别与权衡

偏差和方差度量着估计量的两个不同误差来源。 偏差度量着偏离真实函数或参数的误差期望。 而方差度量着数据上任意特定采样可能导致的估计期望的偏差。

  • 偏差,对象是单个模型,期望输出与真实标记的差别(可以解释为描述了模型对本训练集的拟合程度)
  • 方差,对象是多个模型(这里更好的解释是换同样规模的训练集,模型的拟合程度怎么样;也可以说方差是刻画数据扰动对模型的影响,描述的是训练结果的分散程度)

我们把模型拟合函数的能力称为模型的容量

偏差与方差_第1张图片
bais_var

从上图可以知道:随着容量的增大偏差随之减少,而方差随之增大,使得泛化误差呈现 U 形。因而,降低偏差或者方差需要针对不同的场景来设计,下面我们以线性回归为例来说明,我们使用了如下的代价函数来评估预测误差:

改进策略 使用场景
采集更多的样本 高方差
降低特征维度 高方差
采集更多的特征 高偏差
进行高次多项式回归(增加模型复杂度) 高偏差
降低正则化项系数 高方差
增大正则化项系数 高偏差

1.2 从方差-偏差角度分析 bagging 和 boosting

  • bagging 是并行的(即分别训练几个不同的模型,然后让所有模型表决测试样例的输出),每个基学习器可以单独训练。基学习器独立性很强,所以说 bagging 关注的是降低方差。
  • boosting 是串行的,后一个学习器要在前一个学习器训练好之后才能训练,即学习器之间独立性没那么强,且 boosting 关注偏差 (每一步我们都会在上一轮的基础上更加的拟合原数据,所以可以保证偏差,所以对于每个基分类器来说,问题就是如何选择方差更小的分类器,即更简单的弱分类器)。于是 boosting 对样本集会拟合的更好,所以说boosting 关注的是降低偏差。

你可能感兴趣的:(偏差与方差)