当然我还是建议在linux上跑
caffenet的网络配置文件,放在 caffe/models/bvlc_reference_caffenet/这个文件夹里面,名字叫train_val.prototxt。打开这个文件,将里面的内容复制到上图的Custom
Network文本框里,然后进行修改,主要修改这几个地方:
1、修改train阶段的data层为:
layer {
name: "data"
type: "Data"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
mirror: true
crop_size: 227
}
}
即把均值文件(mean_file)、数据源文件(source)、批次大小(batch_size)和数据源格式(backend)这四项都删除了。因为这四项系统会根据dataset和页面左边“solver options"的设置自动生成。
2、修改test阶段的data层:
layer {
name: "data"
type: "Data"李唯告
top: "data"哪明
top: "label"
include {
phase: TEST
}
transform_param {
mirror: false
crop_size: 227
}
}
和上面一样,也是删除那些项。
3、修改最后一个全连接层(fc8):
layer {
name: "fc8-re" #原来为"fc8"
type: "InnerProduct"
bottom: "fc7"
top: "fc8"
param {
lr_mult: 1.0
decay_mult: 1.0
}
param {
lr_mult: 2.0
decay_mult: 0.0
}
inner_product_param {
num_output: 5#原来为"1000"
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.0
}
}
}
看注释的地方,就只有两个地方修改,其它不变。
设置好山启后,就可以开始微调了(fine tuning).
训练结果就是一个新的model,可以用来单张图片和多张图片测试。具体测试方法前一篇文章已讲过,在此就不重复了。
在此,将别人训练好的model用到我们自己的图片分类上,整个微调过程就是这样了。如果你不用digits,而直接用命令 *** 作,那就更简单,只需要修改一个train_val.prototxt的配置文件就可以了,其它都是一样的 *** 作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)