训练深度学习网络时候,出现Nan是什么原因,怎么才能避免?
2018-01-23 16:17
671 查看
说法一:
说明训练不收敛了, 学习率太大,步子迈的太大导致梯度爆炸等都是有可能的,另外也有可能是网络的问题,网络结构设计的有问题。
我现在的采用方式是:
1. 弱化场景,将你的样本简化,各个学习率等参数采用典型配置,比如10万样本都是同一张复制的,让这个网络去拟合,如果有问题,则是网络的问题。否则则是各个参数的问题。
2. 如果是网络的问题,则通过不断加大样本的复杂度和调整网络(调整拟合能力)来改变。
3. 参数的微调,我个人感觉是在网络的拟合能力和样本的复杂度匹配的情况下,就是可以train到一定水平,然后想进行进一步优化的时候采用。
4. 参数的微调,楼上说得几个也算是一种思路吧,其他的靠自己去积累,另外将weights可视化也是一个细调起来可以用的方法,现在digits tf里面都有相关的工具.
说法二:
说法三:
说法四:
说明训练不收敛了, 学习率太大,步子迈的太大导致梯度爆炸等都是有可能的,另外也有可能是网络的问题,网络结构设计的有问题。
我现在的采用方式是:
1. 弱化场景,将你的样本简化,各个学习率等参数采用典型配置,比如10万样本都是同一张复制的,让这个网络去拟合,如果有问题,则是网络的问题。否则则是各个参数的问题。
2. 如果是网络的问题,则通过不断加大样本的复杂度和调整网络(调整拟合能力)来改变。
3. 参数的微调,我个人感觉是在网络的拟合能力和样本的复杂度匹配的情况下,就是可以train到一定水平,然后想进行进一步优化的时候采用。
4. 参数的微调,楼上说得几个也算是一种思路吧,其他的靠自己去积累,另外将weights可视化也是一个细调起来可以用的方法,现在digits tf里面都有相关的工具.
说法二:
说法三:
说法四:
相关文章推荐
- 深度学习训练中cost突然出现NaN
- 七分钟带你读懂深度学习之什么是神经网络
- 在嵌入式学习过程中的困惑——我一开始看什么书都看不懂,怎么才能理出一个学习顺序
- 训练网络出现loss突然上升或者直接NaN......
- 深度学习 13. 能力提升, 一步一步的介绍如何自己构建网络和训练,利用MatConvNet(二),思路整理
- 深度学习网络怎么看你的自拍
- 【深度学习】笔记7: CNN训练Cifar-10技巧 ---如何进行实验,如何进行构建自己的网络模型,提高精度
- 【深度学习】训练网络的方法总结
- caffe学习笔记-深度网络优化过程中loss=nan
- 七分钟带你读懂深度学习之什么是神经网络
- 深度学习: 如何训练网络
- 【深度学习】笔记6:使用caffe中的CIFAR10网络模型和自己的图片数据训练自己的模型(步骤详解)
- Deep Learning(深度学习)之(五)神经网络训练中的高效BP(反向传播算法)
- 【神经网络与深度学习】什么是HDF
- 深度学习网络模型训练中loss为nans的总结
- 七分钟带你读懂深度学习之什么是神经网络
- 深度学习caffe代码怎么读 & 添加新网络层
- 【深度学习】torch使用nngraph构建网络并训练
- 七分钟带你读懂深度学习之什么是神经网络
- 【caffe-Windows】caffe在Windows下训练深度学习网络并测试(以mnist为例)