caffe学习(二) CIFAR-10数据集上训练

原文:http://blog.csdn.net/liumaolincycle/article/details/47258937 caffe示例实现之1在CIFAR-10数据集上训练与测试Caffe

下面假定caffe的根目录是CAFFE_ROOT,在终端输入命令下载数据集:

cd $CAFFE_ROOT 
./data/cifar10/get_cifar10.sh  #该脚本会下载二进制的cifar,并解压,会在/data/cifar10中出现很多batch文件
./examples/cifar10/create_cifar10.sh  #运行后将会在examples中出现数据集./cifar10_xxx_lmdb和数据集图像均值./mean.binaryproto
 
 
  • 1
  • 2
  • 3

3.模型

CIFAR-10的卷积神经网络模型由卷积层,pooling层,ReLU,非线性变换层,局部对比归一化线性分类器组成。该模型定义在CAFFE_ROOT/examples/cifar10/cifar10_quick_train_test.prototxt中。

4.训练和测试“quick”模型

注:如果电脑没有GPU,需要更改两个地方,即cifar10_quick_solver.prototxt和cifar10_quick_solver_lr1.prototxt。将其中最后一行的GPU改为CPU。(文件在caffe/examples/cifar10下))

写好网络定义和solver以后,开始训练模型。输入下面的命令:

cd $CAFFE_ROOT 
 ./examples/cifar10/train_quick.sh  #先以0.001的学习率迭代4000次,再以0.01的学习率接着再迭代1000次,共5000次
 
 
  • 1
  • 2

可以看到每一层的详细信息、连接关系及输出的形式,方便调试。 
图2 
初始化后开始训练: 
图3 
在solver的设置中,每100次迭代会输出一次训练损失,测试是500次迭代输出一次: 
图4 
训练阶段,lr是学习率,loss是训练函数。测试阶段,score 0是准确率,score 1是损失函数。最后的结果: 
图5 
测试准确率大约有0.75,模型参数存储在二进制protobuf格式的文件cifar10_quick_iter_5000中。 
参考CAFFE_ROOT/examples/cifar10/cifar10_quick.prototxt的模型定义,就可以训练其他数据了。

5.GPU使用

CIFAR-10比较小,可以用GPU训练,当然也可以用CPU训练。为了比较CPU和GPU的训练速度,通过修改cifar*solver.prototxt中的一行代码来实现。

# solver mode: CPU or GPU 
solver_mode: CPU
 
 
  • 1
  • 2

6.”full”模型

同理可以训练full模型,full模型比quick模型迭代次数多,一共迭代70000次,前60000次学习率是0.001,中间5000次学习率是0.0001,最后5000次学习率是0.00001。full模型的网络层数也比quick模型多。 
命令是:

cd $CAFFE_ROOT 
./examples/cifar10/train_full.sh
 
 
  • 1
  • 2

测试准确率也比quick模型高,大约有0.82。 
这里写图片描述


三.利用classification.bin识别单张图片    注:每一行的反斜杠之前都有一个空格

     回到根目录下(caffe目录下 cd caffe)执行:

     $ ./build/examples/cpp_classification/classification.bin \

     >examples/cifar10/cifar10_quick.prototxt \     (模型描述文件)

     >examples/cifar10/cifar10_quick_iter_5000.caffemodel.h5 \     (训练好的caffemodel模型权值文件)

     >examples/cifar10/mean.binaryproto \     (图像均值文件)

     >data/cifar/batches.meta.txt \     (图像类别标签信息)   注:此标签可能是11类,因为最后一行有一个空格,需要删掉,否则和模型描述文件不符。

     >examples/images/fish-bike.jpg    (此处可以是自己的图片)


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值