此篇爲了記錄過程如題。
- linux下配置編譯caffe網上資源很多。在make runtest和import caffe成功後進行本文的實驗。
下載數據:
cd ~/caffe/
./data/mnist/get_mnist.sh
./examples/mnist/create_mnist.sh
修改配置:
cd ~/caffe/
sudo gedit ./examples/mnist/lenet_solver.prototxt
修改:solver_mode: CPU
訓練模型:
cd ~/caffe/
./examples/mnist/train_lenet.sh(log順便記錄下,下部分有)結果可視化:
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文件,注意目錄對應。在caffe下mkdir log;
在訓練過程中的命令中加入一行參數 ,實現Log日誌的記錄:gedit ./examples/mnist/train_lenet.sh
寫入:
LOG=log/train-date +%Y-%m-%d-%H-%M-%S
.log
CAFFE=~/caffe/build/tools/caffe
./build/tools/caffe train –solver=examples/mnist/lenet_solver.prototxt 2>&1 | teeLOG @
(2)解析訓練日誌
將最上面說的3個腳本文件拷貝到Log 文件夾下.
./parse_log.sh caffe.log (自己的名字)
後面的參數爲log文件名,這樣就會在當前文件夾下生成一個.train文件和一個.test文件
(3)生成圖片
./plot_training_log.py.example 2 save.png caffe.log
就可以生成訓練過程中的Test accuracy vs. Iters 曲線,其中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