caffe绘制训练过程的loss和accuracy曲线

来源:互联网 发布:wifi音频接收器 软件 编辑:程序博客网 时间:2024/06/05 09:18

深度学习交流QQ群:116270156


在使用caffe训练数据,迭代次数非常大的时候,难免会想图形化展示实验结果。这样即便于训练过程中参数的调整,也便于最后成果的展示。

0. 需要的文件:

1 caffe/tools/extra/parse_log.sh  2 caffe/tools/extra/extract_seconds.py3 caffe/tools/extra/plot_training_log.py.example

1. 记录训练日志:

方法一:

1 GLOG_logtostderr=0 GLOG_log_dir=Vgg-face/codes/Log/ \  2 ./build/tools/caffe train \  3   --solver=Vgg-face/codes/solver.prototxt

注意:

  • 在目录下新建文件夹Log

  • 去掉通常脚本里面开头的#!usr/bin/env sh 否则Log文件夹里面啥都不会出现

方法二:

1 #!/bin/bash2 LOG=Vgg-face/Log/train-`date +%Y-%m-%d-%H-%M-%S`.log3 ./build/tools/caffe train \4     --solver=Vgg-face/codes/solver.prototxt --gpu=0 2>&1 | tee $LOG

注意:

  • 在目录下新建文件夹Log

此时将出现的文件名改为my.log 或者自己喜欢的名字,这个名字会出现在最后得到的图片里面。

2. 解析训练日志:

将开头提到的三个文件拷贝到Log文件夹里面。

1 ./parse_log.sh my.log

注意:

  • 参考博文的博主提到的 ./parse_log.sh caffe.wujiyang-ubuntu.wujiyang.log 
    中的  caffe.  是所生成文件的文件名的一部分,不叫这个名字的童鞋,千万别在自己文件名前面➕ caffe. 不然会报错。

此时会出现 my.log.train 和 my.log.test 两个文件,里面保存了提取出来的 seconds、loss、accuracy 信息。

3. 绘制图片:

执行:

1 ./plot_training_log.py.example 0 save.png my.log

也可以将 plot_training_log.py.example 改为 plot_training_log.py 

执行:

1 python plot_training_log.py 0 save.png my.log

其中:

  • 0 为曲线类型

  • save.png为保存图片的文件名

  • my.log为上述所得日志

参数的含义: 

复制代码
1 Supported chart types: 2 0: Test accuracy vs. Iters 3 1: Test accuracy vs. Seconds 4 2: Test loss vs. Iters 5 3: Test loss vs. Seconds 6 4: Train learning rate vs. Iters 7 5: Train learning rate vs. Seconds 8 6: Train loss vs. Iters 9 7: Train loss vs. Seconds
复制代码

4. 结果展示

 


阅读全文
0 0
原创粉丝点击