CNN训练完结果输出全是0?问题原因的探索和总结


在前几年的分割实验中偶尔会碰到模型训练完后输出全是0的情况,前几天又碰到了一次,于是想着干脆把这个频发问题开个随笔记录和总结一下。

先说结论,一般来说导致这个问题的原因可能有:

  • lr太大了。这是个看起来比较弱智的原因,但是有的时候确实是这样的。对于一些结构特殊的模型按照往常的经验设置lr往往会导致该问题

  • 自己设计网络时忘记使用normalization或者激活函数了。也是个比较弱智的原因,但是我会犯

  • 数据集的问题。比如说label的值域没有调整好,训练和测试的input的格式不一样等等

  • 网络结构本身就不合理。这个是比较难以说明白的东西,多试几次总全0的话我一般就认为是结构本身太过于离谱

原先觉得深度学习就是胡乱设计一通模型然后疯狂训练就完事了,觉得非常水。但现在再看一些结构会发现其中独特的结构还是有着合理的思想的,因此设计网络本身还是要围绕着一些基本法来的,天马行空四处架设连接不一定是好事。网络结构整体的简洁有时候往往是有效性和泛化性的保证。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM