caffe中solver.prototxt文件参数解释

在训练或者微调网络时我们需要设置一些参数,在caffe中这些参数保存在sovler.prototxt文件中(当然这只是一个文件名,你也可以随意换成其他的名称)。在下面的代码中以注释的形式解释每一个参数的意义。

net: "train.prototxt" #需要训练的网络名称
test_iter: 100 #测试时的迭代次数
test_interval: 500 #每迭代500次测试一次网络
#注意,test_iter和test_interval的设置与网络文件中data层的batch_size有关,具体设置如下:
#test_iter*batch_size(测试)=测试数据量
#test_interval*batch_size(训练)>>训练数据量
base_lr: 0.001 #学习率初始值0.01=1e-2(lr即learning rate)
momentum: 0.9 #动量
weight_decay: 0.0001
lr_policy: "step"#学习率成阶梯式递减
gamma: 0.1 #multiply the lr by a factor of gamma for each stepsize iteration
stepsize: 100000 #每迭代100,000次降低一次学习率 lr=lr/gamma
display: 500 #每500次显示一次结果
max_iter: 150000 #一共迭代150,000次
snapshot: 10000 #每10,000次向caffemodel/文件夹内存放一个model
snapshot_prefix: "./caffemodel/"
solver_mode: GPU #GPU方式运行
device_id: 7 #7号GPU运行

learning_rate有四种设置方式,具体可参见文章:[learning rate的四种改变方式] http://blog.csdn.net/cheese_pop/article/details/52024479)

有一些参数还不是很清楚意义,有待补充。

你可能感兴趣的:(CAFFE)