caffe 试运行MNIST
转自:http://www.cnblogs.com/NanShan2016/p/5469942.html
编译完caffe后,在D:\caffe\caffe-master\caffe-master\build\x64\Release 中有caffe.exe
训练篇
1 *.sh文件如何执行?
直接将后缀名改成“bat”然后双击。 但是实际上好像好需要修改。
2 如何载入MNIST数据并且开始训练?
(1)首先明确我们需要设定两个重要的prototxt文件,它们分别是CAFFE_ROOT/examples/mnist下的lenet_train_test.prototxt和lenet_solver.prototxt。
①在此给出用于训练的MNIST数据mnist-train-leveldb以及mnist-test-leveldb的路径; 用于训练和测试的数据的路径
②在此定义这个网络都有哪些层,给出每一层的定义。 网络的结构,那些层,每层的设计
3)在lenet_solver.prototxt中:
①在此指明我们要训练的网络是lenet_train_test.prototxt,给出lenet_train_test.prototxt的路径; 上述网络运行时的参数及路径 详细见:http://blog.csdn.net/langb2014/article/details/50457774
②在此指定是用CPU还是GPU。
开始训练:在CAFFE_ROOT/examples/mnist下找到sh文件train_lenet.sh,在里面给出:
①caffe编译后生成的可执行文件exe的名称(带不带“.exe”都可以),后面跟“train”代表选择“训练”; caffe.exe要和train_lenet.sh在一个目录下 同时
②刚才写好的lenet_solver.prototxt的路径。 train_lenet.sh要指明网络求解路径,网络求解proto中包含数据路径
然后双击执行该脚本文件即可。
windows下脚本是.bat文件
caffe.exe train --solver=example2/lenet_solver.prototxt
pause
3、关于路径
如2中所述,在这两个prototxt和一个sh文件中,都要指明一些文件的路径。现总结如下:
(1)lenet_train_test.prototxt中:训练集mnist-train-leveldb与测试集mnist-test-leveldb的路径;
(2)lenet_solver.prototxt中:3-(1)的prototxt文件lenet_train_test.prototxt的路径;
(3)train_lenet.sh中:caffe可执行文件exe名称,以及3-(2)的prototxt文件lenet_solver.prototxt的路径。
能够让程序跑起来的设置方法(法一)
(1)在CAFFE_ROOT/x64/Debug中,新建一个文件夹example2,使该文件夹与可执行文件Caffe.exe处于同一路径中;
不要管examples和myexamples,这两个文件夹是师兄拷给我的时候就有了的,一个是caffe自带的,一个是师兄做的实验。总而言之与example2是独立关系。
(2)将刚才CAFFE_ROOT/examples/mnist下的mnist-test-leveldb、mnist-train-leveldb、lenet_train_test.prototxt以及lenet_solver.prototxt这四个文件全部拷贝到example2中去。
(3)设定prototxt文件,给出相应的路径。
①lenet_train_test.prototxt
这个文件即之前说的lenet_train.prototxt,为了便于区分在后面加了一个_test。给出相对路径如下:
此处给出绝对路径也是可以的。如:
②lenet_solver.prototxt
设置相对路径:
这里给出绝对路径也是可以的。如:
(4)将CAFFE_ROOT/examples/mnist下的train_lenet.sh文件拷贝到CAFFE_ROOT/x64/Debug中,使之与可执行文件Caffe.exe以及example2处于同一目录下。
打开train_lenet.sh文件,修改内容如下:
修改该文件后缀名为bat,双击train_lenet.bat,则可以成功跑起来
注意:一点是LEVELDB 而不是小写的 否则训练会出错
在网络训练完毕后,将在指定路径后生成四个文件,其中两个caffemodel文件lenet_iter_5000.caffemodel与lenet_iter_10000.caffemodel为我们测试时所需要的,它们分别存放着程序迭代5000次与10000次后网络的参数。
测试篇
将在对应的路径下生成四个文件:
2、在CAFFE/examples/mnist目录下新建一个文本文件,然后将后缀名改成sh。填入以下语句:
注意,这样填写只是为了便于观看,但直接保存后是不能跑起来的,必须把第2~5条语句全部放在同一行,语句与语句之间用一个空格隔开。
3、保存该sh文件,然后双击,即可出现训练情况:
caffe 试运行MNIST的更多相关文章
- Chapter 3 Start Caffe with MNIST Demo
先从一个具体的例子来开始Caffe,以MNIST手写数据为例. 1.下载数据 下载mnist到caffe-master\data\mnist文件夹. THE MNIST DATABASE:Yann L ...
- windows下使用caffe测试mnist数据集
在win10机子上装了caffe,感谢大神们的帖子,要入坑caffe-windows的朋友们看这里,还有这里,安装下来基本没什么问题. 好了,本博文写一下使用caffe测试mnist数据集的步骤. 1 ...
- Caffe系列4——基于Caffe的MNIST数据集训练与测试(手把手教你使用Lenet识别手写字体)
基于Caffe的MNIST数据集训练与测试 原创:转载请注明https://www.cnblogs.com/xiaoboge/p/10688926.html 摘要 在前面的博文中,我详细介绍了Caf ...
- 用vs2013(cpu-only)调试caffe的mnist
在调试Mnist例子之前,首先需要用vs2013编译好caffe.详情请参见: [caffe-Windows]caffe+VS2013+Windows无GPU快速配置教程 按照上述教程编译好caffe ...
- 【caffe】mnist训练日志
@tags caffe 前面根据train_lenet.sh改写了train_lenet.py后,在根目录下执行它,得到一系列输出,内容如下: I1013 10:05:16.721294 1684 c ...
- 使用caffe训练mnist数据集 - caffe教程实战(一)
个人认为学习一个陌生的框架,最好从例子开始,所以我们也从一个例子开始. 学习本教程之前,你需要首先对卷积神经网络算法原理有些了解,而且安装好了caffe 卷积神经网络原理参考:http://cs231 ...
- 实践详细篇-Windows下使用VS2015编译的Caffe训练mnist数据集
上一篇记录的是学习caffe前的环境准备以及如何创建好自己需要的caffe版本.这一篇记录的是如何使用编译好的caffe做训练mnist数据集,步骤编号延用上一篇 <实践详细篇-Windows下 ...
- Windows caffe 跑mnist实例
一. 装完caffe当然要来跑跑自带的demo,在examples文件夹下. 先来试试用于手写数字识别的mnist,在 examples/mnist/ 下有需要的代码文件,但是没有图像库. mn ...
- caffe测试mnist问题-error while loading shared libraries
问题描述 build/examples/mnist/convert_mnist_data.bin: error while loading shared libraries: libcudart.so ...
随机推荐
- Xamarin.IOS之多视图
欢迎大家加入以下开源社区 Xamarin-Cn:https://github.com/Xamarin-Cn Mvvmcross-Cn:https://github.com/Mvvmcross-Cn ...
- Http规范
1. 关于 HTTP Basic Authentication http://blog.itpub.net/23071790/viewspace-709367/ 通过以下代码,提示用户登录 Respo ...
- Ubuntu Desktop基本办公环境搭建
Ubuntu Desktop基本办公环境搭建 一如前面所强调的, linux系统是面向开发人员友好的,而对office办公人员并不友好 . 如果是重度的office办公需求人员,不建议使用linux ...
- ASP.NET一般处理程序访问Session问题
我们在使用一般处理程序的时候,访问Session会出现如下错误: 解决方案如下: //引用命名空间 using System.Web.SessionState; //继承IRequiresSessio ...
- 让gcc支持成员函数模板的trick
让gcc支持成员函数模板的trick 罗朝辉 (http://www.cnblogs.com/kesalin/) 本文遵循“署名-非商业用途-保持一致”创作公用协议 gcc 4.7.3 不支持成员 ...
- 暂停JS的深入学习
对于JS的掌握程度,已经满足中级前端工程师的需要了,现在需要入门一下后端的基础知识,如nginx服务器一类的知识,方便今后快速开发. 先来nginx,文章.
- tomcat 5.5 动态加载类
转载于:http://www.itxuexiwang.com/a/javadianzishu/tomcat/2016/0225/161.html?1456480735 开发使用的是tomcat5.5. ...
- php实现注册
<?php header("Content-Type:text/html;charset=gb2312"); @mysql_connect('localhost','root ...
- Atitit html5 Canvas 如何自适应屏幕大小
Atitit html5 Canvas 如何自适应屏幕大小 可以用JS监控屏幕大小,然后调整Canvas的大小.在代码中加入JS 1 2 3 4 5 6 7 $(window).resize ...
- ASP.NET MVC3 模板页的使用
占位符的使用: 下面是一个模板页 _Layout.cshtml <!DOCTYPE html> <html> <head> @RenderSection(" ...