作家
登录

数据有限时怎样调优深度学习模型

作者: 来源: 2017-08-01 17:40:51 阅读 我要评论

深度进修中有几种较为常用的改良过拟合办法:

1. data augmentation

data augmentation即数据加强,数据加强其实是增长练习样本的一种办法。以人脸辨认为例,对于人脸识其余数据加强,一般有随机裁剪,随机加光照,随机阁下翻转等。

3. 轻易知足个性化需求

经由过程类似的手段,无论是图像处理,照样语音或者天然说话处理,我们都能有效地增长样本数量。更多的练习样本意味着模许可以或许学到更多的本质特点,具有对于噪声更好的鲁棒性,大年夜而具有更好的泛化机能,可以或许有效地避免过拟合。

2. early stopping

early stopping,顾名思义,就是在练习次数没有达到预先设定的最大年夜练习次数时,我们就让收集停止练习。采取early stopping须要我们在练习集合上划搀扶一小部分(大年夜概10%~30%吧)作为验证集,验证集不介入练习,可以视为是我们知道结不雅的测试集。我们经由过程及时`控模型在验证集上的表示来(及时`控并不料味着每次迭代都去监控,可以每1000次去不雅察一次),一旦模型在验证集上的表示出现降低趋势,我们就停止练习,因为再练习下去模型的泛化机能只会更差。

而实际练习中,我们弗成能一向坐在电脑旁不雅察验证集的精确率,更一般的做法是每隔一段时光(比如每1000次迭代)就保存一次模型,然后选择在验证集上效不雅最好的模型作为最终的模型。

3. 增长Dropout层

增长Dropout层

Dropout(https://www.cs.toronto.edu/~hinton/absps/JMLRdropout.pdf )道理异常简单,Dropout t的感化对象是layer,对于某一层中的每个节点,Dropout技巧使得该节点以必定的概率p不介入到练习的过程中(即前向传导时不介入计算,bp计算时不介入梯度更新)。

如上图所示,实验证清楚明了,Dropout的效不雅异常爆炸,对于模型练习有异常好的效不雅。

loss函数那些事儿

一个原因是经由过程Dropout,节点之间的耦合度降低了,节点对于其他节点不再那么敏感了,如许就可以促使模型学到加倍鲁棒的特点;

第二个是Dropout 层中的每个节点都没有获得充分的练习(因为它们只有一半的出勤率),如许就避免了对于练习样本的过分进修;

第三个原因是在测试阶段,Dropout 层的所有节点都用上了,如许就起到了ensemble的感化,ensemble可以或许有效地克服模型的过拟合。

在实际的模型练习中,ropout在一般的框架中初始默认的0.5概率的丢弃率是保守的选择,如不雅模型不是很复杂,设置为0.2就够了。

不过也要留意到Dropout的缺点:

(1)Dropout是一个正则化技巧,它削减了模型的有效容量。为了抵消这种影响,我们必须增大年夜模型范围。不出不测的话,应用Dropout时最佳验证集的误差会低很多,但这是以更大年夜的模型和更多练习算法的迭代次数为价值换来的。对于异常大年夜的数据集,正则化带来的泛化误差削减得很小。

在这些情况下,应用Dropout和更大年夜模型的计算价值可能跨越正则化带来的好处。

(2)只有极少的练习样本可用时,Dropout不会很有效。

传统的随机梯度降低算法固然实用很广,但并不高效,比来出现很多更灵活的优化算法,例如Adagrad、RMSProp等,可在迭代优化的过程中自适应的调节进修速度等超参数,效不雅更佳。

第四种常用的办法就是weight decay,weight decay经由过程L1 norm和L2 norm强迫地让模型进修到比较小的权值。

这里有两个问题:

(1)为什么L1和L2 norm可以或许进修到比较小的权值?

(2)为什么比较小的权值可以或许防止过拟合?

对于第一个问题:

迁徙进修

起首看一下L1和L2的定义:

个中C0为未加上处罚项的价值函数。那么L1和L2情势的价值函数会若何影响w的值呢?

1)未增长处罚项w的更新

2) L1下的w更新,个中u为进修率

3) L2下的w更新,个中u为进修率

由膳绫擎的(1)(2)(3)可以看出,加上处罚项之后,w明显削减得更多。L1是以减法情势影响w,而L2则是以乘法情势影响w,是以L2又称为weight decay。

对于第二个问题:

过拟合的本质是什么呢?无非就是对于非本质特点的噪声过于敏感,把练习样本里的噪声算作了特点,以至于在测试集上的表示异常稀烂。当权值比较小时,当输入有稍微的修改(噪声)时,结不雅所受到的影响也比较小,所以处罚项能在必定程度上防止过拟合。

除了千方百计增长数据多样性,还要增长模型的多样性

其实可以经由过程迁徙进修把一个通用的用户应用手机的模型迁徙到个性化的数据膳绫擎 。不过,如不雅数据量足够的情况下,迁徙进修的效不雅一般不如完全从新练习哦。迁徙进修合适与快速小巧的工程化,解决所谓的冷启动问题,当数据收集得足够多了今后,我们再改用深度进修。

1、尝尝赓续调剂隐层单位和数量

调模型,要有点靠天吃饭的宽容心态,没事就调调隐层单位和数量,省的GPU闲着,总有一款合适你。


  推荐阅读

  量子纠缠:从量子物质态到深度学习

1. 引言经典物理学的主角是物质和能量。20 世纪初,爱因斯坦写下E =mc2 ,将质量和能量同一在了一路。而大年夜那之后,一个新角色——信息(Information)——逐渐走向>>>详细阅读


本文标题:数据有限时怎样调优深度学习模型

地址:http://www.17bianji.com/lsqh/36494.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)