1.Caffe#
編譯好後,我們訓練,測試都是運行./build/tools/caffe
下面我簡介介紹它的用法:
commands:
train 訓練模型
test 調用 prototxt 中 test 模式,就是用驗證集對模型打分。也可以通過修改 train_val.prototxt 指定新的測試集。
device_query 顯示 GPU 診斷信息
time 計算模型執行時間
Flags:
-gpu 可選參數,指定用哪一塊 GPU 設備,默認為 0。如果參數設置為 'all',則使用所有可用 GPU。
多 GPU 訓練真正 batch 數量是 GPU 數 × batch 數。
-iterations test 模式可選參數。默認為 50,原則上應該跟 solver 中 test_iter 相同。
-model test、time 模式必選參數。指定網絡結構文本,train_val.prototxt
-sighup_effect 收到 SIGHUP 信號要採取的動作,可選:snapshot、stop、none,默認為 snapshot。
-sigint_effect 同上,默認為 stop。
-snapshot 恢復訓練指定上次中止的快照文件 xxxxxx.solverstate
-slover train 模式必選參數。指定超參數文本。
-weights 1. test 模式必選參數。指定訓練好的 xxxxxx.caffemodel
-
train 模式可選參數。指定需要在哪個 caffemodel 上做 finetune
2.extract_features#
路徑:./build/tools/extract_features.bin
參數 1:xxx.caffemodel
參數 2:deploy.prototxt
參數 3:conv1 or conv2 or pool1,可一個,可多個用逗號間隔
參數 4:保存上面特徵圖的路徑
參數 5 (option):做特徵提取的數據批數量
參數 6 (option):輸入數據格式(LMDB or LEVELDB)
參數 7 (option):CPU or GPU
參數 8 (option):如果選擇 GPU,則選擇設備號
3.Classification#
路徑: ./build/examples/cpp_classification/classification.bin
參數 1: deploy.prototxt
參數 2: xxx.caffemodel
參數 3: mean.binaryproto
參數 4: words.txt
參數 5: xxx.jpg