以caffe-master\examples\mnist\lenet_solver.prototxt文件来解析,这个文件为训练mnist模型时的超参数文件,这个文件中中有两个参数test_iter与test_interval,这里用了单词“test”,但这个超参数时在训练阶段使用,而不是测试阶段,因此我认为应该翻译为验证更合适。因此文件参数解析如下:
test_iter: 100 #一次验证计算的图片批次,一次验证计算所有验证集图片(10000张),分test_iter(100)次进行,每个批次包含64(batch_size)张验证集图片。也就是说一次验证完成100个批次的图片验证
test_interval: 500 #每训练500次(即迭代500次),进行一次验证。
base_lr: 0.01 #基础学习率,即初始训练时的学习率
momentum: 0.9 #梯度下降法中的参数,一般不需变化
weight_decay: 0.0005 #权重衰减项,即正则化项前面的系数,用于防止过拟合
lr_policy: "inv" #训练过程中学习率调整的方法,如果设置为inv, 学习率更新为 base_lr * (1 + gamma * iter) ^ (- power)
gamma: 0.0001 #学习率变化的比率
power: 0.75 #inv中的参数
display: 100 #每训练(迭代)100次显示一次训练的结果
max_iter: 10000 #总共训练(迭代)10000次
snapshot: 5000 #每5000次训练(迭代)输出caffemodel权重文件
snapshot_prefix: "examples/mnist/mnist_data/lenet" #权重文件路径
solver_mode: GPU #使用GPU训练
训练过程中的参数对应如下: