caffe 画loss图

在绘制训练过程的loss和accuracy曲线时候,抛出如下错误,在网上查找无数大牛博客后无果,自己稍微看了下代码,发现,extract_seconds.py文件的
get_start_time()函数在获取时间时候获取失败,因为if line.find(‘Solving‘) != -1:这个语句判断错误导致,具体解决办法:

将该函数改造成: 

def get_start_time(line_iterable, year):
    """Find start time from group of lines
    """

    start_datetime = None
    for line in line_iterable:
        line = line.strip()
        #if line.find(‘Solving‘) != -1:
        start_datetime = extract_datetime_from_line(line, year)
        break
    return start_datetime

没错,就是把这个判断注释掉就ok了!


之前已经编译了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;拷贝以上文件到当前目录下


(一)保存输出到log文件,更改脚本文件 train_caffenet.sh;更改如上

在exampless/test 目录下就会有一个log开头的文件, 可以用 vim 打开浏览内容

 

     #!/usr/bin/env sh
    TOOLS=./build/tools
    LOG=examples/mytest/code/model64/log-'data +%Y-%m-%d-%H-%S'.log
    $TOOLS/caffe train \
        --solver=examples/mytest/code/model64/recapture_solver.prototxt -gpu all  2>&1   | tee $LOG

 

(二)解析log中的内容 分成train 和 test 会在当前文件夹下生成log-data.train 和 log-data.test两个文件

    ./parse_log.sh log-data

 

  (三)   更改log-data的名字为log-data.log;备注:必须是.log后缀才能解析

    mv log-data log-data.log


 

(四) 调用py程序绘制图形 

   ./plot_training_log.py.example 0 save.png log-data.log

       其中0代表曲线类型, save.png 代表保存的图片名称  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




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值