caffe 命令行解析
caffe的c++主程序(caffe.cpp)放在根目录下的tools文件夹内, 当然还有一些其它的功能文件,如:convert_imageset.cpp, train_net.cpp, test_net.cpp等也放在这个文件夹内。经过编译后,文件被编译成了可执行文件,在 ./build/tools/ 文件夹内。执行caffe程序,加 ./build/tools/ 前缀。
# sudo sh ./build/tools/caffe train --solver=examples/mnist/train_lenet.sh
在-gpu: 可选参数。该参数用来指定用哪一块gpu运行linux下,本身就有一个time命令,结合进来使用,因此我们运行mnist例子的最终命令是(一块gpu):
$ sudo time ./build/toos/caffe train -solver examples/mnist/lenet_solver.prototxt
caffe程序的命令行执行格式如下: caffe <command> <args>
<command>有这样四种: train 、 test 、 device_query 、 time
<args>参数有: -solver -gpu -snapshot -weights -iteration -model -sighup_effect -sigint_effect
-solver:必选参数。一个protocol buffer类型的文件,即模型的配置文件。
-gpu: 可选参数。该参数用来指定用哪一块gpu运行
-snapshot:可选参数。该参数用来从快照(snapshot)中恢复训练。可以在solver配置文件设置快照,保存solverstate。
-weights:可选参数。用预先训练好的权重来fine-tuning模型,需要一个caffemodel,不能和-snapshot同时使用
# ./build/tools/caffe train -solver examples/finetuning_on_flickr_style/solver.prototxt -weights models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel
# ./build/tools/caffe test -model examples/mnist/lenet_train_test.prototxt -weights examples/mnist/lenet_iter_10000.caffemodel -gpu 0 -iterations 100
利用训练好了的权重(-weight),输入到测试模型中(-model),用编号为0的gpu(-gpu)测试100次(-iteration)。