caffe 中 plot accuracy和loss, 并画出网络结构图

plot accuracy + losshtml

详情可见:http://www.2cto.com/kf/201612/575739.htmljava

1. caffe保存训练输出到log 并绘制accuracy loss曲线:python

以前已经编译了matcaffe 和 pycaffe,caffe中其实已经自带了这样的小工具。caffe-master/tools/extra/parse_log.sh caffe-master/tools/extra/extract_seconds.py和 caffe-master/tools/extra/plot_training_log.py.example;拷贝以上文件到当前工做目录下: 网络

 

2.  保存输出到log文件,更改脚本文件 train_caffenet.sh;在exampless/test 目录下就会有一个log开头的文件less

#!/usr/bin/env sh
TOOLS=./build/tools
LOG=examples/cifar10/log_results/log- 'data +%Y-%m-%d-%H-%S' .log
$TOOLS/caffe train \
--solver=examples/cifar10/cifar10_quick_solver.prototxt -gpu all 2 >& 1 | tee $LOG
 
3.  解析log中的内容 分红train 和 test 会在当前文件夹下生成log-data.train 和 log-data.test两个文件
$ ./parse_log.sh log-data 
 
4. 更改log-data的名字为log-data.log;备注:必须是.log后缀才能解析
$ mv log-data log-data.log
 
5. 调用py程序绘制图形
$ ./plot_training_log.py.example 0 save.png log-data.log
 

其中0表明曲线类型, save.png 表明保存的图片名称 caffe中支持不少种曲线绘制,经过指定不一样的类型参数便可,具体参数以下工具

Notes: 1. Supporting multiple logs.ui

2. Log file name must end with the lower-cased ".log".spa

Supported chart types: 0: Test accuracy vs. Iterscode

1: Test accuracy vs. Secondshtm

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

 

画出网络结构图

 1.  先安装graphviz不然会出现相似:"dot" not found in path 的问题

  安装graphviz不要用pip install安装,不然仍是会找不到可执行程序

  安装:$ sudo apt-get insall graphviz

  而后安装pydot:$ pip install pydot

  其中pyparsing会自动安装

2.  进入 caff-root/python中,输入便可

$ python draw_net.py --rankdir TB ../examples/cifar10/cifar10_quick_train_test.prototxt ../examples/cifar10/log_results/net.jpg

相关文章
相关标签/搜索