学习曲线learning curve

学习曲线是横坐标为训练样本数量,横坐标为误差。画的有两条曲线,一条是训练集误差,一条是交叉验证的误差。

学习曲线可以反应两种情况,一种是高偏差,一种是高方差。

高方差:过拟合,拟合效果过好,但是泛化效果差,无法泛化新的数据

高误差:欠拟合,拟合程度太差,误差太大。

反应在学习曲线上就是:

高偏差:

训练集误差曲线开始很小,随着样本数量变多,越来越大,然后不再变化;交叉验证误差开始很大,随着样本数量变多降低,然后不再变化,两条曲线越来越近,趋于平衡不变的点在一个较高的误差。交叉验证的误差和训练集误差差不多。

也就是说随着样本数量越来越多,但是后来会得到一条基本不变的直线,并不会因为训练样本数量的增加而变化。高偏差的算法并不能通过增加样本数量得到改进,降低误差,所以从学习曲线上看,如果是高偏差的情况,就不要增加样本数量。

高方差:

随着样本量的训练集误差越来越大,交叉验证误差越来越小,这两条曲线之间有很大的gap,随着训练样本越来越大,这两个曲线会越来越近。

也就是说,对于高方差的情况,增加训练样本可以改进算法效果。如果通过学习曲线判断出来是高方差的情况,就可以增加样本数量。

所以通过学习曲线可以判断改进算法要采用什么样的策略,判断是出于高方差还是高偏差,换句话就是判断这个算法是过拟合还是欠拟合。

 

 

你可能感兴趣的:(算法)