caffe繪制訓練過程的loss和accuracy曲線


轉載自http://blog.csdn.net/u013078356/article/details/51154847

 

在caffe的訓練過程中,大家難免想圖形化自己的訓練數據,以便更好的展示結果。如果自己寫代碼記錄訓練過程的數據,那就太麻煩了,caffe中其實已經自帶了這樣的小工具 caffe-master/tools/extra/parse_log.sh  caffe-master/tools/extra/extract_seconds.py和 caffe-master/tools/extra/plot_training_log.py.example ,使用方法如下:

1.記錄訓練日志

在訓練過程中的命令中加入一行參數 ,實現Log日志的記錄

 

[plain] view plain copy
  1. TOOLS=./build/tools  
  2. GLOG_logtostderr=0 GLOG_log_dir=deepid/deepid2/Log/ \  
  3. $TOOLS/caffe train \  
  4.   --solver=deepid/deepid2/deepid_solver.prototxt  


其中目錄改成自己系統的目錄,這樣訓練結束之后,會在Log文件夾中生成每次訓練的Log日志


2.解析訓練日志

將最上面說的3個腳本文件拷貝到Log 文件夾下,執行:

 

[python] view plain copy
  1. ./parse_log.sh caffe.wujiyang-ubuntu.wujiyang.log  


后面的參數為log文件名,這樣就會在當前文件夾下生成一個.train文件和一個.test文件


3.生成圖片

執行

 

[plain] view plain copy
  1. ./plot_training_log.py.example 0  save.png caffe.wujiyang-ubuntu.wujiyang.log  


就可以生成訓練過程中的Test accuracy  vs. Iters 曲線,其中0代表曲線類型, save.png 代表保存的圖片名稱

caffe中支持很多種曲線繪制,通過指定不同的類型參數即可,具體參數如下

 

[plain] view plain copy
  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  


最后,看一下效果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM