实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线

根据知乎上kusoGod的回答,实现windows下输出caffe训练的log日志并画出accuracy和loss曲线。

一、训练

Caffe训练脚本(CNN_M_2048_train.bat):

C:\WENTEST\caffe-master\Build\x64\Release\caffe.exe train --solver=C:\WENTEST\caffe-master\examples\WEN\CNN-M-2048\CNN_M_2048_solver.prototxt --weights=C:\WENTEST\caffe-master\examples\WEN\CNN-M-2048\VGG_CNN_M_2048.caffemodel >train.log 2>&1 
Pause 

执行此脚本,训练过程中命令窗口并不显示其日志,如下:

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线
在该脚本目录下生成train.log文件,如下:

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线


二、画图

1、将"G:\caffe-master\tools\extra\"文件夹下的 parse_log.py,extract_seconds.py ,plot_training_log.py(去掉example)三个文件复制到新建的logW文件夹下。同时将训练好的train.log文件也复制过来。如下:

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线


2、修改 "plot_training_log.py" 文件,如下(两处修改):

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线


3、在此处打开命令窗口(shift + 右键),输入"python parse_log.py  train.log  ./"在当前目录下生成 .test, .train 两个文件,如下:

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线


4、接着在刚刚的命令窗口中再输入 "python plot_training_log.py  0  colaugAvI.png  train.log",生成准确度与迭代次数的趋势图。输入 "python plot_training_log.py  8  colaugLvI.png  train.log",生成损失值与迭代次数的趋势图。如下:

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线

具体参数如下:

实现windows 下输出caffe训练的log日志并画出accuracy和loss曲线


三、参考

怎样在windows下输出训练caffemodel的log日志并画出accuracy和loss曲线? - kusoGod的回答 - 知乎https://www.zhihu.com/question/49521165/answer/127675889