参考链接:http://blog.csdn.net/yangshu91/article/details/52830241?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
1.下载数据
cd $CAFFE_ROOT./data/mnist/get_mnist.sh
下载完成后得到四个文件
2.数据格式转化
./examples/mnist/create_mnist.sh
该命令将数据转化为lmdb
之后得到两个文件夹,就是caffe所需要的数据集了,即lmdb格式
3.训练模型
新建文件夹保存模型:mkdir model
建好文件夹后别忘记修改lenet_solver.prototxt 中的snapshot_prefix
在配好训练网络输入路径,以及网络全局信息后,执行mnist文件夹中的train_lenet.sh 脚本命令就可以开始训练网络了
cd $CAFFE_ROOT
./examples/mnist/train_lenet.sh
其中主要命令为:./build/tools/caffe train –solver=examples/mnist/lenet_solver.prototxt
脚本运行后会显示各个层的细节和训练情况
4.测试模型
调用训练好的模型测试
./build/tools/caffe.bin test -model=examples/mnist/lenet_train_test.prototxt -weights=examples/mnist/model/lenet_iter_10000.caffemodel -gpu=0
运行得到测试结果。
解释:
lenet_train_test.prototxt:详细描述了网络结构和数据集信息,在测试时数据层转到了测试集
lenet_iter_10000.caffemodel:指定模型的训练好的权重weights