赞
踩
当训练集增大时,开发集(测试集)损失应该降低,但是训练集损失会增大。
用一个例子展示这种效果:假如训练集只有2个样本:一个猫图片,一个非猫图片,对于算法来说很容易记得这两个样本,从而在训练集上获得0%的错误率。即使两个样本的标签都错了,对于算法来说还是很容易记住这些标签。(注:标签错了,算法记住错的标签,训练集上分类错误率也为0)。
现在假设训练集有100个样本,其中少量样本的标签是错误的,或者一些图片模糊不清,连人类都没法分辨是不是猫的图片。算法还是可能记住所有的训练样本,但是要获得100%的准确率比较困难了。将训练集从2个样本增加到100个样本,你会发现训练集准确率会稍微下降。
最后,假设训练集有10,000个样本。这样的话,算法将难以完美的拟合这10,000个样本,特别是在有模糊不清或是错误标签的情况下,因此学习算法将会在训练集上表现的更差。
对前一节的图在添加一个训练集损失
可以看到随着训练集的增大,蓝色线(训练集损失)将会增加。更进一步的,算法在训练集上性能一般比开发集好,因此,红色的开发集损失曲线一般都会在蓝色线的上方比较接近的地方。
下一节讨论如何解释这幅图。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。