caffe svm损失参数

finetune

参考链接https://blog.csdn.net/nongfu_spring/article/details/51514040

预训练模型的参数如何跟自己的网络匹配的呢

预训练的模型根据你当前网络的layer 名进行匹配参数,加入预训练原始网络的第一个卷积层name是conv1,而你自己的第一个卷积层网络name是Convolution1,那么这个层在预网络中的参数就不会被匹配调用,这就没有实现我们finetune的目的!

因为没有匹配上的layer会随机初始化

微调的意思就是先在别的数据集上进行训练,把训练好的权值,作为我们现在数据集的权值初始化,就不再需要随机初始化了



ignore_label

int型变量,默认为空。 

如果指定值,则label等于ignore_label的样本将不参与Loss计算,并且反向传播时梯度直接置0.

如果你有一些背景部分不想用来参与loss的计算,这里提供一个ignore_label的参数,可以把背景标记成255,然后这个参数设置成255,之后所有被标记为255的点虽然参与了forward计算,但是不会参与loss的计算,也就不会有反向传播的效果

normalize

bool型变量,即Loss会除以参与计算的样本总数;否则Loss等于直接求和

mirror:false    # 1表示开启镜像,0表示关闭,也可用ture和false来表示

crop_size: 227  

# 剪裁一个 227*227的图块,在训练阶段随机剪裁,在测试阶段从中间裁剪

只裁剪一次吗??

   #因为在deploy中指明训练图片是227*227,这里剪裁为 227*227的图块

new_height和new_width 可以不设置,这样以来就是原始图片的大小。比如我裁剪的车辆图片是24*24,如果不设置new_height 和new_width ,这样会导致caffe运行出错,因为无法在一幅24*24的图片中裁剪出一个227*227的图片。因此,当原始图片小于227*227时,必须进行resize


 需要将正负样本的顺序打乱,这样训练的效果比较好

注:如果图片过大,需要适当缩小batch_size的值,否则使用GPU时可能超出其缓存大小而报错

  



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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值