首页 > 其他 > 详细

Caffe之初见:跑跑mnist,cifar10

时间:2016-07-19 13:15:54      阅读:552      评论:0      收藏:0      [点我收藏+]
操作系统:win8.1
编译环境:Caffe+CUDA+cuDNN
显卡:Nvidia GeForce GT 730(因cuDNN要求显卡计算能力必须大于3.0,所以只能用cpu跑跑)
环境安装参考:Caffe环境布置

一、Minst训练

     开始训练mnist。
     第一步:我的目录是E:\Caffe-Master\examples\mnist获取leveldb格式的数据集不能FQ的,就到:http://pan.baidu.com/s/1nvSzqkx下载吧。下载完解压到…\examples\mnist 文件夹下如下图所示。网络参数可以再lenet_train_test.prototxt中修改。

技术分享

因为Caffe默认采用GPU,而我需要用CPU,故需要修改lenet_solver.prototxt中GPU和CPU切换

技术分享

 

     第二步:打开lenet_train_test.prototxt。修改参数。将14行修改为存放leveldb形式的训练数据的路径,将16行的数据格式修改为LEVELDB的形式。同样将31行修改为测试集存在的路径,32行的数据格式修改为LEVELDB。我的修改完成后数据格式如下图所示:

技术分享

     第三步:写入如下图所示的.bat文件,运行结果:

技术分享

    我的.bat文件放在E:\Caffe-Master目录下面。
    运行结果如下图所示:

技术分享


     前面是整个mnist的训练流程,现在接着看如何训练cifar10数据集。

二、cifar10数据库

      60000张32*32 彩色图片 共10类

      50000张训练

      10000张测试

      下载cifar10数据库:http://pan.baidu.com/s/1dFC09dn

      这是binary格式的,所以我们要把它转换成leveldb格式。

      第一步:在E:\Caffe-Master\Build\x64\Release目录下面有有个convert_cifar_data.exe文件,若没有则运行程序进行生成。利用convert_cifar_data.exe文件在如下命令下生成ldb文件,何为LDB详情请看http://blog.csdn.net/kkk584520/article/details/41056543博客。事先建立input,output文件夹。将下载好的数据集拷贝到input文件下面。然后运行convert_cifar_data.exe  input output leveldb 命令生成leveldb格式的数据集。

      第二步:计算图像均值:同样在E:\Caffe-Master\Build\x64\Release目录下面查看是否有comput_image_mean.exe文件。若没有则生成新的exe文件。cmd进入Release目录后运行如下命令生成。compute_image_mean.exe --backend=leveldb output/cifar10_train_leveldb mean.binaryproto   执行后,在bin文件夹下出现一个mean.binaryproto文件,这就是所需的均值文件。

      第三步:训练cifar网络:将在output生成的leveldb文件和均值文件拷贝到/examples/cifar10目录下。修改网络配置文件cifar10_quick_train_test.prototxt中的source: "cifar-train-leveldb"    mean_file: "mean.binaryproto" 文件如下图所示:

技术分享

           后面再训练就类似于MNIST的训练。写一个train_quick.bat,内容如下:

技术分享

           训练结果如下:

技术分享

 

Caffe之初见:跑跑mnist,cifar10

原文:http://www.cnblogs.com/newbyang/p/5684124.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!