首页 > 移动平台 > 详细

吴恩达深度学习专项课程3学习笔记/week1/Setting up ML Application

时间:2018-01-29 19:58:51      阅读:240      评论:0      收藏:0      [点我收藏+]

应用ML是一个高度迭代的过程

Idea->Code->Experment->...

去不断地调整超参数。

Train/Dev/Test sets

通常将数据集划分为Train/Dev/Test集。

  • Training set: 用于模型的训练

  • Hold-out cross validation set/Developmet set: 用于测试,调整模型超参数

  • Test set: 用于最终评估

以前的ML问题:数据规模在w级,通常70/30划分Train/Test集或者60/20/20比例划分。

现在的大数据时代:数据规模在百w级,趋势是Dev/Test集的比例减小,因为Dev集只需要大到足够判断不同的模型的优劣就可以了,Test集类似。如有100w的数据集,98/1/1的比例是一种较合理的划分。

经验:

  1. 确保Dev/Test集来自同一个分布,这样有助于算法进步的效率。
  2. 训练集则可以采取网页爬取等方式以获得更大量的数据。
  3. 没有测试集也是可以的,只用Dev集来调整。

Bias/Variance

可以通过Train set error和Dev set error来判断模型是否存在high bias/variance的问题。

比如,假设假设bayes error约为0%,即人类可以几乎完全准确识别,并且Train和Dev集来自同一个分布。

Train set error Dev set error 结果
1% 11% high variance
15% 16 high bias
15% 30% high variance & high bias
0.5% 1% low variance & low bias

Some Basic recipe(基本准则)

STEP1 High bias? --> 更大的网络;训练更长时间;(其他NN架构)

STEP2 High variance? --> 更多的数据;正则化;(其他NN架构)

在深度学习时代,不需要再过多考虑bias 和 variance的权衡,如果合理的正则化,采用更大的网络在降低bias的同时几乎不会增加variance,如果有足够大的网络,获得更多的数据在降低variance时几乎不会增加Bias,这也是深度学习在监督学习领域十分有效地原因之一。

吴恩达深度学习专项课程3学习笔记/week1/Setting up ML Application

原文:https://www.cnblogs.com/surimj/p/8379175.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!