Caffe训练AlexNet网络模型——问题三

caffe 进行本身的imageNet训练分类:loss一直是87.3365,accuracy一直是0

解决方法: http://blog.csdn.net/jkfdqjjy/article/details/52268565?locationNum=14

知道了缘由,解决时就能对症下药。整体上看,softmax输入的feature由两部分计算获得:一部分是输入数据,另部分是各层权重参数。markdown

一、观察数据中是否有异常样本或异常label致使数据读取异常
二、调小初始化权重,以便使softmax输入的feature尽量变小
三、下降学习率,这样就能减少权重参数的波动范围,从而减少权重变大的可能性。这条也是网上出现较多的方法。
四、若是有BN(batch normalization)层,finetune时最好不要冻结BN的参数,不然数据分布不一致时很容易使输出值变的很大。
 
具体作法可参照如下三点:

http://blog.csdn.net/hyqsong/article/details/51933255网络


1.标签的问题:
图像分类的标签label必定要从0开始,针对N分类问题,标签需设置为0,1,2,3,4,...,N-1。学习

2.分类层的num_output和标签的值域不符合:spa

因为Alexnet网络是进行1000类的分类任务,而我须要进行五分类,因此就要把train_val.prototxt文件里的最后一层的全链接层‘fc8’的InnerProduct的分类层数num_output: 1000,改成5,这个设成本身label的类别总数就能够。 .net

3.多是学习率过高 
另外若是是最初的迭代的loss很小,而后忽然变成87.3365?若是是这样,能够尝试一下调低学习率,我开始学习率是0.1,后来调成了0.001,反正就是调小,能够多试几回。orm

相关文章
相关标签/搜索