- 初始化:不建议使用高斯分布初始化,可以考虑采用Xavier初始化,Kaiming初始化等
- 不要对偏置进行正则化
- 学习率不能设置太大,容易造成不收敛。可以考虑使用0.001-0.0001的Adam优化器优化。
- 将训练数据打乱:shuffle = true;一个batch中label不要完全相同
- 少用vanilla SGD优化器
- 少在太小的批次中使用BatchNorm层
- Nan现象:可能出现了“除0”现象,对数操作小于等于0(log(0), log(-1)),有些时候因为参数初始化或者学习率太大也会导致数值计算溢出,这也是会出现Nan的,一般这样会出现在较前面的层里面。
- 有大佬证明,BN层放在激活函数之后训练的效果会更好。(一般情况下BN层都在激活函数前面)
- 不要忘了每层的偏置
- 要知道验证准确率远远大于测试准确率
- 尝试一下余弦学习率
- ranking loss
深度学习过程中的调试方法
最新推荐文章于 2024-07-25 10:18:13 发布