学习曲线,偏差和方差

对于学习算法,我们不能直观或者想当然的认为,哪种算法好,哪种算法差,也不能直观判断某一个算法是否处于偏差、方差问题。对此,我们可以用学习曲线来检验学习算法。学习曲线是将训练集误差和交叉验证误差作为训练集实例数量 m 的函数绘制的图标。从事机器学习相关领域的人,都常说,训练集越大,训练出的模型越精确,那么事实是否真是如此?

假如我们有500个数据,先从小往大增加数据个数,训练模型。当训练较少数据时,训练出的模型能较好地拟合训练数据,训练误差低,但是不能训练出的模型不能很好地拟合验证集或者测试集,误差较高。随着训练集越来越大,模型不能再像以往一样很好地拟合数据,训练误差变高,但是,训练出的模型更加精确,能够推广到一般,其验证误差或者测试误差就降低了。如下图所示:

那么,我们能否根据上面的曲线区分出模型是高偏差/欠拟合,还是高分差/过拟合。

若是高偏差/欠拟合,当训练数据增加到一定数目,哪怕继续增加,模型的训练误差也基本不会有改观,应用到验证集中,模型也和训练集中一样,其验证误差也和训练误差差不多,因为模型已经是达到了它能达到的最好性能。如下图所示:

 也就是说在高偏差/欠拟合的情况下,增加数据到训练集不一定有效果。从图中,我们也可以看出,若是欠拟合,当训练集增加到一定数目时,训练误差和测试误差基本相差不大。

若是高分差/过拟合,假设我们使用一个非常高次的多项式模型,并且正则化非常小,可以看出,当交叉验证集误差远大于训练误差时,向数据集增加更多数据可以提高模型的效果。

也就是说在高方差/过拟合的情况下,增加更多数据到训练集可能提高算法效果。从图中我们也可以看出,即使数据很大时,训练误差和验证误差也差距不小,训练误差要小很多验证误差。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值