caffe训练时,loss出现87.3365则保持不变

caffe训练时,loss出现很奇怪的值:87.3365,则保持不变下去。

搜索资料,找到多篇帖子:

https://blog.csdn.net/u011215144/article/details/78479330

https://blog.csdn.net/cheese_pop/article/details/79582077

https://blog.csdn.net/ying86615791/article/details/60757573

https://blog.csdn.net/abcjennifer/article/details/46424949

https://blog.csdn.net/lyiiiiii61/article/details/79153014

https://blog.csdn.net/hyqsong/article/details/51933255

https://blog.csdn.net/u010725283/article/details/78929684
https://blog.csdn.net/u010417185/article/details/69664803

 

对如上看到的帖子总结, 主要有以下几个方面需要关注:

1、降低学习率,提高batchsize

将学习率从0.01,降低到0.0000001,训练的batchsize现在是256

2、降低weight

跟学习率同步降低的

3、输入归一化

训练prototxt文件中,设置归一化参数:

transform_param {

scale: 0.00390625//像素归一化,1/255

}

4、查看输入数据、标签是否有异常

solver.prototxt中设置,debug_info: true

标签仔细看了,从0到60,总分类个数也改成了61

数据都是严格按照预处理lmdb来的。

5、数据shuffle

已经在lmdb数据生成时进行了shuffle。

6、batch normalization的设置

http://www.caffecn.cn/?/question/312

http://noahsnail.com/2018/07/05/2018-07-05-Caffe%E8%AE%AD%E7%BB%83%E6%97%B6Loss%E4%B8%8D%E4%B8%8B%E9%99%8D%E9%97%AE%E9%A2%98/

 

我这里碰到的问题,其实是通过第6点解决的。将batch normaliztion的use_global_stats由true改成false

batch_norm_param { use_global_stats: false }

训练阶段是false,测试阶段是true。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值