码迷,mamicode.com
首页 > 移动开发 > 详细

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

时间:2018-01-29 20:13:22      阅读:656      评论:0      收藏:0      [点我收藏+]

标签:recipe   高度   爬取   step   大数   cat   效率   学习   out   

应用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

标签:recipe   高度   爬取   step   大数   cat   效率   学习   out   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!