Caffe 训练生成可视化loss和accuracy
利用caffe自带的小工具绘制loss和accuracy 可视化图片
Step1
训练中生成记录训练日志:
在训练命令后加上 -log_dir ./ ,可生成训练日志
例如:/home/fier/caffe/build/tools/caffe train -solver lenet_sover.prototxt -gpu 0 -log_dir ./
"""
或者(网上教程,这个本人没有测试过):
在训练过程中的命令中加入一行参数 ,实现Log日志的记录
GLOG_logtostderr=0 GLOG_log_dir=/home/liuyun/caffe/models/AAA/A12/Log/ \
/home/liuyun/caffe/build/tools/caffe train -solver examples/AAA/solver.prototxt -weights ./models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel
其中目录改成自己系统的目录,这样训练结束之后,会在Log文件夹中生成每次训练的Log日志。
"""
训练日志名为:caffe.[主机名].[域名].[用户名].log.INFO.[年月日]-[时分秒]-[微秒]
例如:caffe.fier-PC.fier..log.INFO.20180423-090533.5367
此时可改名为: ***.log 后缀名一定要为.log
Step2
Caffe(caffe安装路径)中其实已经自带了这样的小工具 :
caffe/tools/extra/parse_log.sh、
caffe/tools/extra/extract_seconds.py和caffe/tools/extra/plot_training_log.py.example
将其复制到训练文件目录下
并且将plot_training_log.py.example改为plot_training_log.py
Step3
在终端运行:./parse_log.sh ***.log
(***.log为之前改过名字的训练日志)
此时生成.train和.test两个文件
Step4
可以运行plot_training_log.py文件来画图(必须用Python2运行,这个文件的语法为python2d)
这个脚本的输入参数分别是:图的类型、生成图片的路径和log的路径
其中图片类型为:
0:表示测试准确率 vs.迭代次数
1:测试准确率 vs . 训练时间(秒)
2:测试loss值 vs. 迭代次数
3:测试loss vs. 训练时间(秒)
4:学习率 vs. 迭代次数
5:学习率 vs. 训练时间(秒)
6:训练loss值 vs. 迭代次数
7:训练loss vs. 训练时间(秒)
终端命令例如:python2 plot_training_log.py 2 train_loss_vs_ites.png mnist_train.log
其中参数“2”就为图的类型,“train_loss_vs_ites.png”表示在本目录中生成图片(可以指定路径),“mnist_train.log”表示log路径(本次命令是在同一目录下运行,可以指定路径)
最后可视化图片为:
参考:https://www.cnblogs.com/Allen-rg/p/5822332.html