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


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

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

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

    1、观察数据中是否有异常样本或异常label导致数据读取异常
    2、调小初始化权重,以便使softmax输入的feature尽可能变小
    3、降低学习率,这样就能减小权重参数的波动范围,从而减小权重变大的可能性。这条也是网上出现较多的方法。
    4、如果有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和标签的值域不符合:

    由于Alexnet网络是进行1000类的分类任务,而我需要进行五分类,所以就要把train_val.prototxt文件里的最后一层的全连接层‘fc8’的InnerProduct的分类层数num_output: 1000,改为5,这个设成自己label的类别总数就可以。

    3.可能是学习率太高 
    另外如果是最初的迭代的loss很小,然后突然变成87.3365?如果是这样,可以尝试一下调低学习率,我开始学习率是0.1,后来调成了0.001,反正就是调小,可以多试几次。

  • 相关阅读:
    Centos7开启telnet登录
    Centos7编译openssh8.9p1
    20220613复盘
    20220614复盘
    20220610复盘
    Maven打包遇到No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
    如何隐藏滚动条,但是保留滚动效果?(考虑兼容性)
    Oracle高效查询数据是否已经存在
    Django框架redder函数的功能
    VUE框架 ajax请求案例天气预报
  • 原文地址:https://www.cnblogs.com/hust-yingjie/p/6525499.html
Copyright © 2020-2023  润新知