mkdir face_detect
cd face_detect
mkdir train val
mkdir train/{0,1}
mkdir val/{0,1}
train/1
和val/1
下val/0
和val/0
下vim train.txt
0/xxx.jpg 0
1/xxx.jpg 1
vim val.txt
1/xxx.jpg 1
0/xxx.jpg 0
face_detect_lmdb.sh
# 修改部分
EXAMPLE=/home/jh/face_detect
DATA=/home/jh/face_detect
TOOLS=caffe安装目录/build/tools
TRAIN_DATA_ROOT=/home/jh/face_detect/train/
VAL_DATA_ROOT=/home/jh/face_detect/val/
# 对输入的数据进行大小的调整, 大小的调整是要根据我们要使用的网络模型, 比如AlexNet或者VGG(速度慢)为227x227
RESIZE=true
if $RESIZE; then
RESIZE_HEIGHT=227
RESIZE_WIDTH=227
else
RESIZE_HEIGHT=0
RESIZE_WIDTH=0
fi
# 接着修改GLOG_logtostderr那里的$DATA/train.txt, 这个为那个train.txt, $EXAMPLE/face_train_lmdb, 这个为生成的lmdb数据源的位置
# 下面也一样, 修改为val.txt, $EXAMPLE/face_val_lmdb, 这个为val的lmdb数据源生成的位置
face_detect_lmdb.sh
脚本文件, 如果那些face_val_lmdb
已经存在则直接报错, 在执行过程中, 可能会出现Could not open ...
, 这个没有关系, 执行的细节为, 先配置train, 在配置valtest_iter
, 测试多少个batchtest_interval: 1000
, 迭代1000次进行测试base_lr: 0.001
: 基础学习率max_iter: 10000
: 最大迭代次数gamma: 0.1
stepsize: 20000
display: 1000
: 每1000次迭代显示一次momentum: 0.9
weight_decay: 0.0005
snapshot: 10000
: 每个10000次保存一次modelsnapshot_prefix: "/path/to/model"
: 模型保存的目录solver_mode: CPU
: 使用CPU还是GPU
/path/to/caffe train --solver=/path/to/solver.prototxt
sh train.sh
执行原文:https://www.cnblogs.com/megachen/p/10661060.html