caffe训练日志一般保存的是terminal打印的输出,解析这些日志文件其实就是对每一行进行匹配,例如显示测试的正确率那一行会有 “Test”、“accuracy”等关键字,我们只需要判断该行是否有这些关键字就行了,如果有,我们就对其提取我们需要的数据。
我训练的输出如下:
I0122 16:19:05.882210 21125 solver.cpp:347] Iteration 3200, Testing net (#0)
I0122 16:19:05.882244 21125 net.cpp:678] Ignoring source layer train_image_data
I0122 16:19:06.609315 21125 solver.cpp:414] Test net output #0: accuracy = 0.772164
I0122 16:19:06.609366 21125 solver.cpp:414] Test net output #1: identi_loss = 0.647029 (* 1 = 0.647029 loss)
I0122 16:19:06.661540 21125 solver.cpp:239] Iteration 3200 (12.1152 iter/s, 8.25408s/100 iters), loss = 0.66067
I0122 16:19:06.661716 21125 solver.cpp:258] Train net output #0: identi_loss = 0.66067 (* 1 = 0.66067 loss)
I0122 16:19:06.661726 21125 sgd_solver.cpp:112] Iteration 3200, lr = 0.01
I0122 16:19:11.921538 21125 solver.cpp:239] Iteration 3300