神经网络CNN训练心得--调参经验
2016-08-07 21:29
573 查看
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
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
相关文章推荐
- [计算机视觉][神经网络与深度学习]Faster R-CNN配置及其训练教程
- 神经网络训练心得1
- CNN感性认识(三)——为什么深层次神经网络难于训练?
- [计算机视觉][神经网络与深度学习]Faster R-CNN配置及其训练教程2
- 神经网络训练心得~
- CNN神经网络
- 基于交叉熵准则(Cross Entropy Criteria)的神经网络训练
- SPSS神经网络心得(一)
- SPSS神经网络心得(二)
- 神经网络编程及其训练
- 使用CNN(convolutional neural nets)检测脸部关键点教程(五):通过前训练(pre-train)训练专项网络
- 不同的神经网络训练函数training function的比较
- Matlab在训练神经网络时突然停止
- 神经网络训练中的Tricks之高效BP(反向传播算法)
- CNN 深度神经网络
- 神经网络自学经验整理
- 从数据库读取数据训练神经网络
- 基于遗传算法(GA)的神经网络训练算法
- VMware8下安装redhat9以及网络设置【经验总结和心得体会】
- 新版Matlab中神经网络训练函数Newff的使用方法