Machine Learning —— Basic Concept: Where does the error come from

Machine Learning —— Where does the error come from

1、Error来源

  • Bias
  • Variance
    在这里插入图片描述

2、Model简单和复杂时的情况

  • 当model比较简单时,variance比较小,bias比较大,此时的 f ∗ f^* f会比较集中,但是function set可能并没有包含真实的标准函数 f ^ \hat{f} f^此时model受bias影响较大
  • 当model比较复杂时,variance比较大,bias比较小,此时的 f ∗ f^* f会比较分散,但是function set会包含真实的标准函数 f ^ \hat{f} f^此时model受variance影响较大
    如下两图所示,一次项函数简单函数和含五次项复杂函数对比
    在这里插入图片描述
    在这里插入图片描述

3、区分function set的bias大 or variance大

  • 若是采样得到的大部分样本点都不在训练得到的 f ∗ f^* f上,说明model太简单,bias比较大,是欠拟合(underfitting)
  • 若是样本点都在model训练出来的 f ∗ f^* f上,但是经过test data测试后得到的error很大,说明model太复杂,variance比较大,是过拟合(overfitting)
    在这里插入图片描述

4、处理操作

  • 当bias比较大时,需要做的是重新设计model,包括考虑添加新的input变量、高次项;然后对每一个model对应的 f ∗ f^* f计算出error,选择error值最小的model(随着model变复杂,bias会减小,但是variance也会增大,故在此取两者的平衡点)
    在这里插入图片描述

  • 当variance比较大时,最后的办法是增加data,当data数量足够时,得到的 f ∗ f^* f会比较集中;如果没办法得到更多的data,可以采用regularization正规化,以曲线的平滑度为条件控制function set的范围,用weight控制平滑度阈值,使得最终的model既包含 f ^ \hat{f} f^,variance又不会太大
    在这里插入图片描述

5、如何选择model

  • 已有的test data与真实的test data之间是存在一定偏差的,因此可以将training data分成两部分即 train_data和validation_data,经过validation筛选后的model再用全部的train data训练一遍参数,最后用test data测试error,这样的model与实际情况的error会比较符合。
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值