第六周:Advice for Applying Machine Learning

这部分内容主要讲的是,在应用机器学习算法之后,如果我们发现训练集误差,交叉验证集或者测试集误差比较大的时候,算法在哪出现了问题?我们应该采取哪些措施?

我们先举2个例子

这里写图片描述
当我们的训练集已经比较大,然而验证误差和训练误差依然很大,而且二者相近,这个时候,我们说这种情况是高偏差的,对于这种情况,我们盲目地去增加训练集并没有卵用额,具体怎么做,请往下看。
这里写图片描述
当我们的训练误差很小,而交叉验证集误差很大,但随着训练集变大,2者差距不断变小的时候,我们说这种情况是高方差的,对于这种情况,你再怎么增加特征值也不会有什么同的,具体咋做,还是往下看。

首先我们先看看偏差和方差的概念:

偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力。

方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响。

换句话说,高偏差(high bias)代表着欠拟合(underfit),高方差代表过度拟合(overfit).

什么时候会发生高方差(high variance)和高偏差(high bias)呢?

交叉验证(训练集,交叉验证集,测试集)中:

毫无疑问,无论是高方差,高偏差,测试集的误差都挺大的。

当我们发现训练集的误差很大,交叉验证集的误差也很大,那么,我们可以认为是当前算法是高偏差(欠拟合)的。
当我们发现训练集的误差很小,然而交叉验证集的误差却很大,那么,我们可以认为当前算法是高方差(过度拟合)的。

为什么会出现高方差和高偏差?

高方差(过度拟合)

我们选取的特征值,特征值组成的多项式比表示真实模型需要的参数还要多的多。

高偏差(欠拟合)

我们选取的特征值,特征值组成的多项式不足以表示真实模型。

当遇到高方差,高偏差,我们应该怎么做?

高方差(过度拟合)

  1. 获取更多的训练集(大家再看一下方差的概念就知道为什么要更多训练集了)
  2. 尝试减少一些特征值
  3. 在正则化的算法中,试着加大lambda的值

高偏差(欠拟合)

  1. 试着增加一些特征值
  2. 试着增加更多的多项式
  3. 在正则化的算法中,试着减小lambda的值
如果使用了神经网络算法碰到高方差,高偏差,还是同样的思路。只不过神经网络是通过隐藏层的数量,隐藏层每层上神经元的数目控制多项式的数量。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值