您的位置:首页 > 理论基础 > 计算机网络

神经网络CNN训练心得--调参经验

2016-08-07 21:29 507 查看
1.样本要随机化,防止大数据淹没小数据
2.样本要做归一化。关于归一化的好处请参考:为何需要归一化处理
3.激活函数要视样本输入选择(多层神经网络一般使用relu)
4.mini batch很重要,几百是比较合适的(很大数据量的情况下)
5.学习速率(learning rate)很重要,比如一开始可以lr设置为0.01,然后运行到loss不怎么降的时候,学习速率除以10,接着训练
6.权重初始化,可用高斯分布乘上一个很小的数,这个可以看:权值初始化7.Adam收敛速度的确要快一些,可结果往往没有sgd + momentum的解好(如果模型比较复杂的话,sgd是比较难训练的,这时候adam的威力就体现出来了)8.Dropout的放置位置以及大小非常重要
9.early stop,发现val_loss没更新,就尽早停止

另:心得体会
深度学习真是一门实验科学,很多地方解释不了为什么好,为什么不好。
网络层数、卷积核大小、滑动步长,学习速率这些参数的设置大多是通过已有的架构来做一些微调

参考:知乎讨论 https://www.zhihu.com/question/41631631
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: