最近使用caffe训练时,不知道loss的变化趋势,于是就想到了能否将自己的训练数据图形化。后来经过查阅资料,发现caffe自带这样的工具:
caffe-master/tools/extra/parse_log.sh
caffe-master/tools/extra/extract_seconds.py
caffe-master/tools/extra/plot_training_log.py.example
使用这个方法的前提是存在log文件以及模型的.sh文件(具体怎么生成log文件还请自己百度)
1、解析训练日志
将最上面的3个脚本拷贝到Log文件夹下,执行:
./parse_log.sh 20180305.log
执行此代码,就会在当前文件夹下生成一个.train文件和.test文件
2、生成图片
./plot_training_log.py.example 0 save.png 20180305.log
这样就可以生成训练过程的各种数据曲线。0代表曲线的类型,下面有讲解。save为保存图片的名称,默认在当前路径。
caffe中支持很多种曲线绘制,通过指定不同的类型参数即可,具体参数如下
Notes:
1. Supporting multiple logs.
2. Log file name must end with the lower-cased ".log".
Supported chart types:
0: Test accuracy vs. Iters
1: Test accuracy vs. Seconds
2: Test loss vs. Iters
3: Test loss vs. Seconds
4: Train learning rate vs. Iters
5: Train learning rate vs. Seconds
6: Train loss vs. Iters
7: Train loss vs. Seconds