在执行训练的过程中,若指定了生成log信息,log信息包含初始化,网络结构初始化和训练过程随着迭代数的loss信息。
注意生成的log文件可能没有.log后缀,那么自己加上.log后缀。如我的log信息为pycaffe20180110-151247-31929.log
生成loss曲线图用到caffe中自带的小工具 caffe/tools/extra/parse_log.sh caffe/tools/extra/extract_seconds.py和 caffe/tools/extra/plot_training_log.py.example
(其中还有一个caffe/tools/extra/parse_log.py文件,可以将log信息分别解析成train和test的log信息,我这里没用到,就没加上去)
将这三个小工具复制到你的log文件夹下,与/log/xxx.log处在同一级目录,再将plot_training_log.py.example复制一份改为plot_training_log.py(python文件当然后缀是.py)
接着在log文件夹下执行命令:python plot_training_log.py 6 ./loss.png ./pycaffe20180110-151247-31929.log
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
我运行成功生成的loss.png图为:
accuracy的曲线图后期用到了再加上。