在caffe的训练过程中,大家难免想图形化自己的训练数据,以便更好的展示结果。如果自己写代码记录训练过程的数据,那就太麻烦了,caffe中其实已经自带了这样的小工具 caffe-master/tools/extra/parse_log.sh caffe-master/tools/extra/extract_seconds.py和 caffe-master/tools/extra/plot_training_log.py.example ,使用方法如下:
1.记录训练日志
在训练过程中的命令中加入一行参数 ,实现Log日志的记录
其中目录改成自己系统的目录,这样训练结束之后,会在Log文件夹中生成每次训练的Log日志
2.解析训练日志
将最上面说的3个脚本文件拷贝到Log 文件夹下,执行:
后面的参数为log文件名,这样就会在当前文件夹下生成一个.train文件和一个.test文件
注意,需要将parse_log.sh、extract_seconds.py和 plot_training_log.py.example的权限设置一下,chmod 755即可。
3.生成图片
执行
就可以生成训练过程中的Test accuracy vs. Iters 曲线,其中0代表曲线类型, save.png 代表保存的图片名称
caffe中支持很多种曲线绘制,通过指定不同的类型参数即可,具体参数如下
注意1:如果有Invalid DISPLAY variable的报错,就在plot_training_log.py.example中修改。我按照下图该就ok了。
注意2:如果生成train loss相关图像时报错,可能是日志解析有问题,查看caffe.log.train是否正确,如果错误,需要更改parse_log.sh。我按照以下这样改就ok了。