码迷,mamicode.com
首页 > 其他好文 > 详细

homework

时间:2019-12-01 13:56:45      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:under   还需要   组合   pac   img   agg   量化   算法   src   

一、一段一米长的绳子,随机且两刀,分成三段,求能够组合成一个三角形的概率。

技术图片 

 

 

 

 

 

 

 

 

 

二、什么是bias,什么是variance?

 答:

在用机器学习算法对数据进行拟合的过程中,往往一开始得不到满意的结果,例如 AUC 值不够高,此时我们就需要对模型进行调优,那么调优的方向是什么?有没有调优方法论可遵循?答案当然是有的,bias 和 variance 这两个指标就能起到指导调优的作用。

Bias

我们先来看一个例子,假设实验室收集了老鼠的体重和大小的数据,我们可以建立一个模型,通过输入老鼠的大小来预测老鼠的体重,部分数据散点图如下。在训练之前,我们还是将数据拆分为两部分,红色的点为训练集,绿色的点表示测试集:

 
技术图片
 

接着我们用两个模型来拟合训练数据,第一个模型采用线性算法,如下:

 
技术图片
 

可以看到,线性模型并不能很好的描绘真实数据,我们一般使用 MSE (Mean Squared Error) 来量化这种拟合能力,即预测值和实际值之间的差值的平方的均值。

接下来我们训练第二个较复杂的模型,该模型的曲线如下:

 
技术图片
 

第二个模型完美的贴合了训练数据,即用这个模型来预测训练数据,获得的预测值与实际值相等。

至此,我们再给出 bias 的定义就不难理解了:

Bias 指标衡量了在训练阶段,机器学习算法和真实数据之间的差异。

从上面的例子可以看出,模型二的 bias 远远低于模型一的 bias。

Variance

训练完模型后,我们还需要使用测试集对模型进行评估,下图是模型一的评估结果,我们用蓝色虚线来表示测试结果中,预测值和实际情况的差异(也可以使用 MSE 来衡量):

 
技术图片
 

同样,模型二的评估结果如下:

技术图片
 

和 Bias 相反的是,模型一的预测效果却远远好于模型二的,这说明模型二的预测能力并不稳定,我们试着给 Variance 也下个定义:

Variance 表示在不同测试集间,预测效果间的偏差程度,偏差程度越大,variance 越大,反之越小。

显然模型二的 variance 较大;而对于不同测试集,模型一预测的准确性非常接近,我们可以说模型一的 variance 较小。

Bias & Variance

下图摘自 Scott Fortmann-Roe‘s 的博客http://scott.fortmann-roe.com/docs/BiasVariance.html),它能够很好的描绘我们在机器学习中的调优方向,其中左上角是最理想的模型,它是终极目标,如果实在做不到,你应该朝着左下角的 High Bias + Low Variance 努力。

 
技术图片
 

上图中,右上角的情况又被称为过拟合 (Overfit),它表示你的模型在训练时的表现非常好,但在测试过程中的表现又非常差,上文的模型二就是典型的过拟合情况。有过拟合肯定就有欠拟合 (Underfit),它表示你的模型无法很好的刻画样本数据。同时,过拟合一般对应你使用了一个较复杂的模型,而欠拟合一般和简单模型相对应。很多时候,我们说模型调优,实际上指的是:

在简单模型和复杂模型间寻求平衡

如何做到呢?这里有一些经验方法:

  • 如何处理 variance 较大的问题
    1. 减少特征数量
    2. 使用更简单的模型
    3. 增大你的训练数据集
    4. 使用正则化
    5. 加入随机因子,例如采用 bagging 和 boosting 方法
  • 如何处理 bias 较大的问题
    1. 增加特征数量
    2. 使用更复杂的模型
    3. 去掉正则化
链接:https://www.jianshu.com/p/e5c2af344327

homework

标签:under   还需要   组合   pac   img   agg   量化   算法   src   

原文地址:https://www.cnblogs.com/ariel-dreamland/p/11965648.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!