bias and variance在机器学习中的应用

首先我们通过三种途径来认识bias and variance ,三种途径是:直观上的、图形上的、数学定义上的。

直观上的定义:

Error due to Bias:真实值与预测值之间的差异。

Error due to Variance : 在给定模型数据上预测的变化性,你可以重复整个模型构建过程很多次,variance 就是衡量每一次构建模型预测相同数据的变化性。

图形上的理解:

如图所示,图形中心是模型完美正确预测数据值,当我们远离中心预测越来越差,我们可以重复整个模型构建过程多次,通过每一次命中图形来表示bias and variance



数学上定义:

通过covariate X 预测 Y ,我们假设存在如下关系:


 Y = f(X) + ϵ 
 满足正态分布均值为0 方差σϵ  

模型预测错误定义为:


 

 

bias and variance 的折衷在机器学习中很重要,如果我们模型太简单 则有大的 bias 但是比较小的variance 这时处于模型under-fitting 的状态。

如果模型过于复杂,则bias 较小,但是variance 较大 ,这时模型处于over-fitting 的状态。

解决模型over-fitting 方法有: cross-validation 、最常用的方法是正则化(regularization) 

参考资料:http://scott.fortmann-roe.com/docs/BiasVariance.html

参考了NG的课程增加了对这部分理解,资料中有一页PPT非常好


通过判断Jcv是cross validation的损失函数,Jtest是测试集损失函数,通过两者值判断系统所在的状态。

通过算法的learning curve 我们可以很好判断系统处于何总状态!依据状态确定学习系统的改进方向以及如何提高!!!下面就描述了两种状态分别是high bias 、high variance。

直观理解上我们在解决问题时,当效果不好,我们直观上的理解就是增加数据量提升算法效果,但是这个方法不一定是有用的,看下面图片的状态:


在high bias状态下,我们发现右边上下两个图示意,第二图增加数据,其实对算法性能没有任何提高!!!这是需要特别关注一点问题。

highvariance 状态下如图:


在预测房价问题和神经网络中把上述描述问题就行总结,通过判断方差与偏差关系去解决系统学习算法问题:


这里列举了六种情况,仔细考虑为什么那么操作!


太简单神经网络容易欠拟合,复杂容易过拟合,通过正则化解决。


  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值