天天看点

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路径(本次命令是在同一目录下运行,可以指定路径)

最后可视化图片为:

Caffe 训练生成可视化loss和accuracy

参考:https://www.cnblogs.com/Allen-rg/p/5822332.html

继续阅读