28.通过学习曲线诊断偏差和方差 翻译自 吴恩达新书-Machine Learning Yearning

更多好玩的机器学习教程: 进入袋马学院领一份 ,全部免费?.

我们已经了解了一些方法,可以算出有多少错误是来自于可避免得方差和偏差了。这些方法包括评估最优错误率、计算模型在训练样本集和开发样本集上的错误率。下面我们讨论两外一项可获得更多信息得方法:绘制学习曲线。

学习曲线显示出模型在开发数据集上的错误率与训练样本数量的关系。绘制这个曲线时,你需要设置不同的训练样本集大小。比如你有1000个样本,你可以分别用100、200、300、……、1000个样本来训练模型。然后就可以绘制出模型在开发样本集上的错误率与训练样本数量的对应关系了,比如下面这个例子:
模型错误率与样本数量
从上图可以看出,随着训练样本数量的增多,模型在开发样本集上的误差在逐渐下降。

对于我们的模型来说,我们通常会有些“期望的错误率”,我们希望我们的模型最终能达到这一效果,比如:

  • 我们期望模型达到人类的水平,则人类能达到的错误率就是我们期望的错误率。
  • 如果我们的算法服务于某些产品(比如猫咪分类),我们会有个大概的感觉,当模型达到什么样的水平时,用户会有比较好的体验。
  • 如果我们已经在某个应用上工作了很长时间,你应该能感觉出,下一季度/年度模型能达到的合理水平。

我们可以把期望水平加入到学习曲线中:
加入期望水平的学习曲线

你可以直接看出加入数据后,"开发错误率"离你期望的水平还差多远。从上面的例子中可以看出,似乎增加训练样本集中样本的数量,就可以让算法达到我们预期的水平了。

但是如果开发错误率变平了(不再下降了),你可以清晰的看出添加数据无助于你达到目标:
开发错误率曲线变平了
看看学习曲线就能帮助你发现收集更多的数据并无效果。而不是花费数月收集了两倍数据后,才发现更多的数据并没有用。学习曲线有个缺点是,如果你有更多的数据,它没有办法帮你准确的预测模型会达到什么水平。还有个图像也可以帮你评估更多的数据对模型性能的影响,即:训练错误率。

更多好玩的机器学习教程: 进入袋马学院领一份 ,全部免费?.

你可能感兴趣的:(吴恩达-YEARNING,吴恩达机器学习,吴恩达新书,Machine,Learning,Yearning,中文版,吴恩达新书中文版全,吴恩达新书中文版(1-52章))