caffe笔记: VGG16预训练模型微调

本文档记录了如何在Caffe中使用SnailTyan的VGG-16预训练模型进行微调。内容包括Caffe预训练模型的含义,微调的概念,以及何时适合使用预训练模型。在微调过程中,主要调整solver.prototxt和train_val.prototxt配置文件,特别是加快最后全连接层的学习率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在caffe里微调VGG-16用于自己的问题

以SnailTyan的预训练模型VGG-16为例,记录一些我这个小白最开始不能理解的概念
GitHub:https://github.com/SnailTyan/caffe-model-zoo/tree/master/VGG16

caffe相关概念:

  1. caffe里面的预训练模型就是一个网络在很大的数据集上训练得到的结果。.caffemodel文件里面保存着网络的结构和参数(从零开始开始训练过程中用snapshot得到的也是这个)。加载预训练模型和从零开始训练的根本区别就是初始权重。一个是加载一个包含权重的文件(caffemodel),另一个是以某种方式初始化权重。
  2. 做微调时,没有额外新的配置文件,唯一要做的就是修改用于预训练的配置文件(solver.prototxt & train_val.prototxt),使他们更适合做微调。

微调(finetune)概念:

  1. 什么时候应该使用别人的预训练模型?:
    最好是想干的事和预训练模型所基于的问题比较相似,这样预训练模型里面的基本feature才有用,才比较有可能靠自己比较少的数据练出一个还凑合的模型。

具体操作:

  1. 加快靠后的全连接层的学习率。对于VGG,就是最后两个全连接层
    方法:设置lr_mult 和decay_mult参数
layer {
  bottom: "fc6"
  top: "fc7"
  name: "fc7"
  type: "InnerProduct"
  #需要添加或修改的部分---------------------------
  param {
  	lr_mult
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值