在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日志的记录
2.解析训练日志
将最上面说的3个脚本文件拷贝到Log 文件夹下,执行:
./parse_log.sh caffe.wujiyang-ubuntu.wujiyang.log
3.生成图片
执行
./plot_training_log.py.example 0 save.png caffe.wujiyang-ubuntu.wujiyang.log
caffe中支持很多种曲线绘制,通过指定不同的类型参数即可,具体参数如下
-------------------------------------------------------------------------------------------------------------
用caffe自带的画图工具,对训练日志进行可视化遇到了一些问题,记录一下。
说一下我的情况。参考这篇博客的方法:http://blog.csdn.net/u013078356/article/details/51154847
1、把这三个文件:
caffe-master/tools/extra/parse_log.sh
caffe-master/tools/extra/extract_seconds.py
master/tools/extra/plot_training_log.py.example
拷贝到日志路径下。
2、
执行 ./parse_log.sh mylog.log
3、
执行 ./plot_training_log.py.example 0 save.png mylog.log
说一下我的问题,我用的SSD环境训练的模型,日志输出不用额外加命令,训练过程中的输出日志会保存在jog文件夹下。
按照以上步骤我执行了1、2.都没什么问题。
训练过程中,输出的日志,可以正常用0 1 这两个参数画图 其他的参数用不了,
报错:Traceback (most recent call last):
File "./plot_training_log.py", line 191, in
plot_chart(chart_type, path_to_png, path_to_logs)
File "./plot_training_log.py", line 117, in plot_chart
data = load_data(data_file, x, y)
File "./plot_training_log.py", line 88, in load_data
data[1].append(float(fields[field_idx1].strip()))
IndexError: list index out of range
这个问题暂时还没解决。
训练完成时,这个日志正常输出结束,结果连0 1 这两个参数也没法画图了
报同样的类似错误。
查了一下是因为我的学习率策略是用的multi_step。所以在设置的stepvalue的地方训练日志里会输出一句
MultiStep Status: Iteration 10000, step = 1