测试用到手写体识别模型LeNet,mnist数据集
其中LeNet是一种CNN模型,由一个卷积层、后面跟一个下采样层、再跟另外一个卷积层和另一个下采样层,再之后是两个全连接层组成。
mnist数据集:包括60000个训练集和10000个验证集
训练过程:
1.下载mnist数据集
cd ~/caffe
./data/mnist/get_mnist.sh
如果出现权限不够的情况,就加个chmod +X赋予权限
2.转换格式
下载的数据集为二进制格式,必须转换成caffe能识别的lmdb格式
./examples/mnist/create_mnist.sh
浏览/example/mnist下出现mnist_train_lmdb和mnist_test_lmdb就对了
3.训练数据集
./example/mnist/train_lenet.sh
相信大家在网上看到的都是这么几步,我也没有copy,纯手打,主要因为错了好几次,也敲了好几次,已经印在脑海中了。
主要说一些常见的问题和解决办法:
a.找不到caffe,解决办法
sudo gedit ~/.bashrc
PYTHONPATH=/home/sunny/caffe-master/python:$PYTHONPATH
sudo ldconfig
b.执行./example/mnist/train_lenet.sh时提示/examples/build/tools/caffe:No such directory or file,解决办法:
打开/example/mnist/train_lenet.sh,把绝对路径注释掉改为相对路径
c.好不容易把第二个问题解决了,能训练了,打印训练参数网络结束后却提示:已放弃,核心已转存
这时候只需要在./example/mnist/train_lenet.sh前加个sudo就解决问题了
最后训练完的结果是这样的:
分类准确率99.11%,达到训练效果。
很多人到第三步就完了
4.用训练好的模型对数据进行预测
./build/tools/caffe.bin test \
-model examples/mnist/lenet_train_test.prototxt \
-weights examples/mnist/lenet_iter_10000.caffemodel \
iterations 100
转载请注明出处