1. 程式人生 > >caffe自帶畫圖工具的一些問題

caffe自帶畫圖工具的一些問題

用caffe自帶的畫圖工具,對訓練日誌進行視覺化遇到了一些問題,記錄一下。

說一下我的情況。參考這篇部落格的方法:http://blog.csdn.net/u013078356/article/details/51154847

1、把這三個檔案:

caffe-master/tools/extra/parse_log.sh 

caffe-master/tools/extra/extract_seconds.py

master/tools/extra/plot_training_log.py.example 

拷貝到日誌路徑下。

2、

執行  ./parse_log.sh  mylog.log

3、

執行  ./plot_training_log.py.example 0 save.png mylog.log

  1. Notes:  
  2.     1. Supporting multiple logs.  
  3.     2. Log file name must end with the lower-cased ".log".  
  4. Supported chart types:  
  5.     0: Test accuracy  vs. Iters  
  6.     1: Test accuracy  vs. Seconds  
  7.     2: Test loss  vs. Iters  
  8.     3: Test loss  vs. Seconds  
  9.     4: Train learning rate  vs. Iters  
  10.     5: Train learning rate  vs. Seconds  
  11.     6: Train loss  vs. Iters  
  12.     7: Train loss  vs. Seconds  

說一下我的問題,我用的SSD環境訓練的模型,日誌輸出不用額外加命令,訓練過程中的輸出日誌會儲存在jog資料夾下。

按照以上步驟我執行了1、2.都沒什麼問題。

訓練過程中,輸出的日誌,可以正常用0 1 這兩個引數畫圖 其他的引數用不了,

報錯:Traceback (most recent call last):
  File "./plot_training_log.py", line 191, in <module>
    plot_chart(chart_type, path_to_png, path_to_logs)
  File "./plot_training_log.py", line 117, in plot_chart
    data = load_data(data_file, x, y)
  File "./plot_training_log.py", line 88, in load_data
    data[1].append(float(fields[field_idx1].strip()))
IndexError: list index out of range

這個問題暫時還沒解決。

訓練完成時,這個日誌正常輸出結束,結果連0 1 這兩個引數也沒法畫圖了

報同樣的類似錯誤。

查了一下是因為我的學習率策略是用的multi_step。所以在設定的stepvalue的地方訓練日誌裡會輸出一句

I0810 22:19:02.672968 9663 sgd_solver.cpp:47] MultiStep Status: Iteration 10000, step = 1 緊跟著這一句下面是正常的日誌輸出 I0810 22:19:02.672971 9663 sgd_solver.cpp:138] Iteration 10000, lr = 2e-05 所以問題就在這裡,需要把所有你設定stepvalue的地方那裡輸出的這條刪掉,都刪掉以後0 1 6 7這兩個引數就可以畫圖了,但是其他引數還是不能用,估計也是日誌哪裡出了問題

MultiStep Status: Iteration 10000, step = 1

好吧,尷尬了,查看了一下my.log.test裡面都沒有Test loss 的資料所以引數為2 3的沒法畫圖 引數4 5 沒法畫是因為my.log.train裡面的 學習率名字是LearningRate而不是 Train learning rate所以也沒法找到資料畫圖