四、Understanding the Bias-Variance Tradeoff(深入理解偏差和方差)

听说这是一篇你好好看就能看懂的文章,我看不懂证明我没好好看,不是我智商低,一定是这样的。。。下面测智商开始。。。


摘要

理解关于我们训练出来的预测模型的方差和偏差有助于我们避免过拟合和欠拟合错误。

1.不同的误差来源是如何导致方差和偏差的?下面从概念上、图形上和数学上定义偏差和方差。

1.1概念

偏差:预测值与我们试图预测的正确值之间的差额;

方差:假设可以多次重复整个模型构建过程,方差是对给定点的预测在模型的不同实现之间有多大的差异。

1.2图形

1.3数学(明明很简单的东西,偏要写成看不懂的样子)

(正确值-预测值然后平方)的期望,展开就是下面这样,后面带个不可约束误差(这项相当于噪音,无法完全消除):

2.一个例子解释上述: Voting Intentions

现在我们给川建国和拜振华投票选举,做一个当选预测模型,模型规划我们随机从电话簿中选择50个号码,询问他们投谁,得到以下川建国、拜振华、老子不想接骚扰电话三个数据:

白宫根据上面的数据,得出投票给川建国的概率为13/(13+16),即44.8%,然后,白宫昭告天下说:据复仇者联萌调查,预计建国可能要落后十个点落选了,最后的选举结果是却是振华输了10个点落选了,WF?预测的太离谱了! 

从数据中,我们估计投票给共和党的概率为13/容量样本 (13+16),即44.8%。我们发布了新闻稿说民主党会以超过10个百分点的优势胜出;但是,当选举到来的时候,他们实际上输了10个百分点。这肯定会给我们带来负面影响。我们的模型哪里出了问题?

首先样本容量比较小;其次电话簿只能调查特定的阶层,圈层固定;最后,没有跟进调查者 。在靶心图中,这些原因会使结果从目标中心移开,但它们不会导致估计的分散程度增加。另一方面,小样本是方差的来源。如果我们增加样本量,每次重复调查和预测的结果都会更加一致。由于我们有很大的偏差来源,结果仍然可能是非常不准确的,但预测的方差将会减少。在靶心图上,低样本量导致估计数的大分散。增加样本量会使估计值聚集在一起,但它们仍然可能错过目标的中心。同样,这个投票模型是微不足道的,并且从实践中最经常面临的建模任务中完全删除了。通常,用于构建模型的数据集是在模型构建之前提供的,建模者不能简单认为:“让我们增加样本大小以减少方差。”在实践中,偏差和方差之间存在一个明确的权衡,其中一个减少就会增加另一个。最小化模型的总误差需要仔细平衡这两种形式的误差。

3.一个应用例子:Voter Party Registration

假设我们有一个选民数据集,每个选民都有三个属性:选民党派、选民财富、选民虔诚度量化值。

下图x轴表示财富,y轴表示虔诚度,红点代表共和党选民,蓝点代表民主党选民。我们想用财富和虔诚度作为预测指标来预测选民登记情况。

3.1 The k-Nearest Neighbor Algorithm

对于这种0、1问题,如果将其看为连续的,经常使用逻辑回归;如果认为其是离散的,这里使用K近邻算法。

K近邻算法:投票人的政党党派将从他在图中自身点的特征或在图中和其他投票者的关系得到,其他投票人将会按照离这位投票人最近的距离划分,并且按照他们的虔诚度量化平均值来预测这位投票人的选票。因此,如果最接近他的选民(在财富和虔诚度方面)是民主党人,那么他/她也将被预测为民主党人。下图显示了每个原始选民最近的邻居。如果k被指定为1,那么一个新的选民票选意向将由其属于红色还是蓝色区域来决定。

训练集中每个点的最近邻域 

如果我们对新投票人进行抽样,可以使用现有的训练数据来预测他们的投票意向。下图描绘了这些新选民的财富和党派虔诚度,并使用最近邻居算法来预测他们的投票意向。

我们还可以绘制出个人将被划分为民主党或共和党的完整预测区域。

k的最佳值是多少?在这个模拟案例中,我们知道用来将原始选民划分为共和党或民主党的实际模型。使用了简单的分割,并在上图中绘制了分割线。分界线以上的选民被划分为共和党人,分界线以下的选民被划分为民主党人。然后加入一些随机噪声来改变选民登记的随机部分。

3.2 Bias and Variance

增加k值会导致在每次预测中平均更多的选民。这使得预测曲线更加平滑。在k为1的情况下,民主党和共和党之间的差距非常悬殊。此外,在共和党的区域上也有民主党的“岛屿”,反之亦然。当k值增加到,比如说,20时,过渡变得更平稳,岛屿消失,民主党和共和党之间的分歧很好地遵循了分界线。随着k变得非常大,比如80,两类之间的界限变得越来越模糊,边界预测线匹配得也不是很好。在小k处的锯齿状和岛屿是变化的标志。随着新数据的收集,岛屿的位置和边界的确切曲线将发生根本性的变化。另一方面,在大k处,过渡是非常平滑的,所以没有太多的差异,但与边界线的不匹配是高偏差的标志。我们在这里观察到的是,增加k将减少方差和增加偏倚。减小k会增加方差,减小偏倚。看看在低k时,不同数据集的预测是如何变化的。随着k的增加,这种变化减少。但是如果k增大太多,我们就不再遵循真正的边界线了我们观察到高偏差。这就是偏方差权衡的本质。

3.3 Analytical Bias and Variance

在k近邻的情况下,我们可以推导出总误差的显式解析表达式,作为偏差和方差的总和:

方差项是不可约误差和k的函数,方差误差随着k的增大而稳定减小。偏差项是代表模型空间有多粗糙的函数(例如,当我们在不同的财富和宗教空间中移动时,实际值变化有多快)。空间越粗糙,越快的偏差项将增加,因为更远的邻居被纳入估计。

4. Managing Bias and Variance

4.1 打破直觉(总结就是不能只管一个参数,要两者兼顾)

许多人的直觉是,他们应该最小化偏差,即使是以牺牲方差为代价。他们的想法是,偏见的存在表明他们的模型和算法存在根本性的问题。是的,他们承认,方差也不好,但一个高方差的模型至少平均来说可以预测得很好,至少它不是根本错误的。这是错误的逻辑。的确,高方差和低偏差模型可以在某种长期平均意义上很好地预形成。然而,在实践中建模者总是处理一个数据集的实现。在这些情况下,长期平均是无关紧要的,重要的是模型的性能数据你有和在这种情况下偏差和方差都同样重要,一个不应该改善过度牺牲另一个。

4.2 Bagging and Resampling

Bagging和其他重采样技术可以用来减少模型预测中的方差。在bagging (Bootstrap聚合)中,使用带替换的随机选择创建原始数据集的大量副本。每个导数数据集被用来构建一个新的模型,这些模型被聚集到一个集合中。为了做出预测,对集合中的所有模型进行轮询,并对其结果取平均值。随机森林是一种强大的建模算法,可以很好地利用bagging。随机森林的工作原理是训练大量决策树,每棵决策树都基于对原始训练数据的不同重采样。在随机森林中,整个模型的偏差等同于单个决策树的偏差(它本身具有高方差)。通过创建许多这样的树,实际上就是“森林”,然后平均它们,最终模型的方差相对于单个树。

4.3Over- and Under-Fitting

在实践中,这意味着,当您的训练样本规模向无穷大的方向增长时,您的模型的偏差将降到0(渐近一致性),并且您的模型的方差不会比您可以使用的任何其他潜在模型更差(渐近效率)。例如,线性回归中加入的多项式项越多,得到的模型的复杂性就越大。换句话说,偏差对模型复杂度4的一阶导数为负,而方差的斜率为正。这两个属性都是我们希望模型算法具有的。然而,我们并不是生活在一个样本容量无限的世界里,因此渐近性质通常没有什么实际用途。当你有100万个点时,一个算法可能几乎没有偏差,当你只有几百个数人时,它可能有非常显著的偏差。更重要的是,在小样本数据集上,渐近一致和有效的算法实际上可能比既不渐近一致也不有效的算法表现得更差。当处理真实数据时,最好把算法的理论特性放在一边,而把重点放在给定场景中它们的实际准确性上。

4.4 Understanding Over- and Under-Fitting

从根本上说,处理偏差和方差实际上就是处理过拟合和过拟合。偏差减少,方差增加与模型复杂性有关。随着越来越多的参数被添加到模型中,模型的复杂性上升,方差成为我们主要关注的问题,而偏差则稳步下降。例如,线性回归中加入的多项式项越多,得到的模型的复杂性就越大。换句话说,偏差对模型复杂度4的一阶导数为负,而方差的斜率为正。

这两个属性都是我们希望模型算法具有的。然而,我们并不是生活在一个样本容量无限的世界里,因此渐近性质通常没有什么实际用途。当你有100万个点时,一个算法可能几乎没有偏差,当你只有几百个数人时,它可能有非常显著的偏差。更重要的是,在小样本数据集上,渐近一致和有效的算法实际上可能比既不渐近一致也不有效的算法表现得更差。当处理真实的数据时,最好不去想standing Over- and Under-Fitting

这两个属性都是我们希望模型算法具有的。然而,我们并不是生活在一个样本容量无限的世界里,因此渐近性质通常没有什么实际用途。当你有100万个点时,一个算法可能几乎没有偏差,当你只有几百个数人时,它可能有非常显著的偏差。更重要的是,在小样本数据集上,渐近一致和有效的算法实际上可能比既不渐近一致也不有效的算法表现得更差。当处理真实数据时,最好把算法的理论特性放在一边,而把重点放在给定场景中它们的实际准确性上。

理解偏差和方差对于理解预测模型的行为是至关重要的,但通常你真正关心的是总体误差,而不是具体的分解。任何模型的最佳点都是复杂性的水平,在这个水平上,偏差的增加与方差的减少是等价的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值