1.准备数据
准备训练的数据,新建train,val文件夹做训练 和测试数据集的文件夹,在train,val下新建图片类别数目的文件夹,分别放各自类别图片区分开来,编写脚本 生成标签文件train.txt,和val.txt。
环境变量:
export LD_LIBRARY_PATH=/data/lib/cudnn_v5.1/cuda/lib64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/opencv3/lib:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
python虚拟环境 opencv:
python环境装下这个:https://github.com/pyenv/pyenv-installer
opencv的话,在自己的虚拟环境里价格软链接:
ln -s /usr/local/opencv3/lib/python2.7/site-packages/cv2.so /home/chenxiaopeng/.pyenv/versions/2.7.13/envs/sci_env/lib/python2.7/site-packages/cv2.so
并将caffe/examples/imagenet目录下create_imagenet.sh文件拷贝到自己的数据集中,修改里面的目录为自己的数据目录,运行生成lmdb数据文件和mean均值文件。
2.准备模型
准备网络模型文件,train_val.prototxt文件和slover参数文件,修改里面的数据和均值目录为自己的目录,最后全链接层修改为自己的全链接层和输出类别数量。在slover里调整合适的学习参数。
3.训练
使用caffe下的命令进行训练,或者可以在预训练模型上进行finetune
./build/tools/caffe train --slover=......./slover.prototxt