caffe-win10-cifar10
因为是在win10下安装的GPU版caffe,所以不能直接运行linux里的shell脚本。但是win10自带bash,可以运行.sh文件,网上也有直接下Cygwin和git的。我是下载好git后才知道win10自带有bash。。
win10自带bash:

git:

转入正题,运行cifar10实例。
在运行这个实例过程中,给我体会最深的是路径问题。我的caffe路径是:
E:\caffe-master\caffe-master\Build\x64\Release
E:\caffe-master\caffe-master\examples\cifar10
下图所示路径即E:\caffe-master\caffe-master就是caffe的根路径。

1.下载数据:
# sudo sh data/cifar10/get_cifar10.sh
以上命令在caffe根路径执行即可。
运行成功后,会在 data/cifar10/文件夹下生成一堆bin文件:原文件中只有get_cifar10这一shell文件。

可见生成的5个训练集和一个测试集。
2.数据转换
bin文件为二进制文件,而caffe只许leveldb和lmdb两种数据格式。这里选择转为leveldb格式。
在/examples/cifar10文件夹中有一个 convert_cifar_data.cpp文件,经过编译之后会生成convert_cifar_data.exe可执行文件。注意这个文件的位置在:

可能有人文件位置不在这个地方,两种原因:第一种是最开始下载安装caffe的时候是在https://github.com/happynear/caffe-windows。而我在https://github.com/BVLC/caffe/tree/windows,两者路径有些不同,第一种而言convert_cifar_data.exe在bin文件下,而我的路径如上图。
新建一个名为input的空文件夹,将之前生成的6个bin(二进制)文件拷贝到input文件夹中,再建一个空文件夹output用来存放生成的leveldb文件。在当前目录下(dara/cifar10/)建立一个 bat 文件,实现binary 到 leveldb 数据集格式转换。(要建立一个output空文件夹,否则会提示could not found files)批处理代码如下:
convert_cifar_data.exe input output leveldb
pause
注意,以上命令中包含convert_cifar_data.exe、input、output,所以执行以上命令时路径下必须同时包括convert_cifar_data.exe、input、output文件夹,也就是说当前路径是\Build\x64\Release则可以直接执行并且会在这个目录下的output中生成leveldb文件。如下图:

好,已经生产levelde文件在output文件夹中:

3.求数据图像的均值,获取mean.binaryproto
这一步需要一个可执行文件:comput_image_mean.exe,他在路径和生成leveldb数据的convert_cifar_data.exe文件在同一个路径下。

在当前路径\Build\x64\Release下新建一个bat文件,然后输入以下命令:
compute_image_mean.exe --backend=leveldb output/cifar10_train_leveldb mean.binaryproto
pause
注意一定强调后端是leveldb格式!否则默认lmdb会出错。以上命令生成训练集的均值。同理,以上命令是在\Build\x64\Release下执行的,所以生成的mean.biaryproto也在这个路径下;

好了,到目前为止,我们有了leveldb数据、均值文件,下一布就可以开始训练了。
4.训练cifar10
首先,在examples/cifar10/文件夹中,找到cifar10_quick_trian_test.prototxt。 修改里面的mean_file和source的路径。backend一律改为LEVELDB。 注意是大写!leveldb不可以!!!,
这个prototxt文件中共有6处要改,分别是train和test的mean-file、source、backend:

注意在examples/cifar10/中有几种不同的训练模式(quick和full等),注意一一对应。我们利用的是cifar10_quick_trian_test.prototxt网络结构,所以在solver中选择cifar10_quick_solver.prototxt。
例如你选择的网络是cifar10_full_train_test,那么你的slver应为cifar10_full_solver:

到此一切就绪可以开始了:
Build\x64\Release\caffe.exe train --solver=examples\cifar10\cifar10_quick_solver.prototxt
pause
注意mean_file、sourse等都是在caffe根目录下计算路径的,所以选择在caffe根目录下建立mytrain-cifar10.bat文件,写入以上命令:以上命令都以根目录为标准给出了caffe.exe和cifar10_quick_solver.prototxtde的相对路径:

执行:


参考:
http://blog.csdn.net/hyqsong/article/details/51713444
http://blog.csdn.net/muyouhang/article/details/50688038
caffe-win10-cifar10的更多相关文章
- caffe学习--cifar10学习-ubuntu16.04-gtx650tiboost--1g--02
caffe学习--cifar10学习-ubuntu16.04-gtx650tiboost--1g--02 训练网络: caffe train -solver examples/cifar10/cifa ...
- Caffe初试(三)使用caffe的cifar10网络模型训练自己的图片数据
由于我涉及一个车牌识别系统的项目,计划使用深度学习库caffe对车牌字符进行识别.刚开始接触caffe,打算先将示例中的每个网络模型都拿出来用用,当然这样暴力的使用是不会有好结果的- -||| ,所以 ...
- 【caffe】cifar10例子之quick_train.sh在windows下的解决方案
@tags caffe 照例还是转写为python脚本: import os caffe_root=os.environ['caffe_root'] caffe_build=os.environ['c ...
- [Caffe]Win10+VS2015+CUDA8.0+cudnn5.1环境配置
百度:win10 caffe vs2015 编译caffe.sln工程参见->这里 caffe训练参见->这里 参见->这里 Windows+VS2013爆详细Caffe编译安装教程
- caffe学习--cifar10学习-ubuntu16.04-gtx650tiboost--1g--03--20171103
classification ./examples/cifar10/cifar10_full.prototxt ./examples/cifar10/cifar10_full_iter_70000.c ...
- caffe学习--cifar10学习-ubuntu16.04-gtx650tiboost--1g--01
引用了下文的资料,在此感谢! http://www.cnblogs.com/alexcai/p/5468164.html http://blog.csdn.net/garfielder007/arti ...
- Ubuntu+caffe训练cifar-10数据集
1. 下载cifar-10数据库 ciffar-10数据集包含10种物体分类,50000张训练图片,10000张测试图片. 在终端执行指令下载cifar-10数据集(二进制文件): cd ~/caff ...
- caffe+win10+git使用sh文件
在windows下是否可以执行sh文件呢,搜了一下,可以安装了git就可以执行,当然这不是唯一答案. 然后联想到caffe下有一些.sh文件可以尝试,就用create_mnist.sh尝试把. cre ...
- caffe︱cifar-10数据集quick模型的官方案例
准备拿几个caffe官方案例用来练习,就看到了caffe中的官方案例有cifar-10数据集.于是练习了一下,在CPU情况下构建quick模型.主要参考博客:liumaolincycle的博客 配置: ...
- 在Caffe上运行Cifar10示例
准备数据集 在终端上运行以下指令: cd caffe/data/cifar10 ./get_cifar10.sh cd caffe/examples/cifar10 ./create_cifar10. ...
随机推荐
- BZOJ 1124: [POI2008]枪战Maf(构造 + 贪心)
题意 有 \(n\) 个人,每个人手里有一把手枪.一开始所有人都选定一个人瞄准(有可能瞄准自己).然后他们按某个顺序开枪,且任意时刻只有一个人开枪. 因此,对于不同的开枪顺序,最后死的人也不同. 问最 ...
- 【Luogu4921】情侣?给我烧了!(组合计数)
[Luogu4921]情侣?给我烧了!(组合计数) 题面 洛谷 题解 很有意思的一道题目. 直接容斥?怎么样都要一个平方复杂度了. 既然是恰好\(k\)对,那么我们直接来做: 首先枚举\(k\)对人出 ...
- 【杂题1】USACO 2018 Open Contest-练习
https://www.xoj.red/contests/show/1231 下面会写一些题目的解析什么的,当然不会粘贴题目只是简单提一下 (部分题目简单的题目就不概括了) 其实难度应该前面比较低. ...
- pyEcharts
例子: from pyecharts import Line line = Line("我的第一个图表", "这里是副标题",width="800px ...
- 逆向---02.je & jmp & jnz 、OD调试
上一篇:逆向---01.Nop.中文字符串搜索.保存修改后程序 OD调试基础:(01.02篇练手工具:https://pan.baidu.com/s/1kW2qlCz) nop是删除跳转,你别问我,我 ...
- [CF1091D]New Year and the Permutation Concatenation
link 题目大意 给$n!$个$n$的排列,按字典序从小到大连成一条序列,例如$3$的情况为:$[1,2,3, 1,3,2, 2,1,3 ,2,3,1 ,3,1,2 ,3,2,1]$,问其中长度为$ ...
- 【数学】NOIP数论内容整理
NOIP数论内容整理 注:特别感谢sdsy的zxy神仙以及lcez的tsr筮安帮助审稿 一.整除: 对于\(a,b~\in~Z\),若\(\exists~k~\in~Z\),\(s.t.~b~=~k~ ...
- zoj3707(Calculate Prime S)解题报告
1.计算(a/b)%c,其中b能整除a 设a=b*r=(bc)*s+b*t 则(b*t)为a除以bc的余数 r=c*s+t 而 (a/b)%c=r%c=t (a%bc)/b=(b*t)/b=t 所以对 ...
- Linux command ------ vi / vim
EDIT mode to GENERAL mode: press ESC General mode: operate file :q! :force to close the file but ...
- js对象克隆
大家都知道,js的对象是引用类型,如果直接var obj2 = obj,obj2和obj是共享同一个对象实体的,这往往不是我们想要的结果. 官方并没有给出通用的对象克隆方法: 我们给出以下几种写法: ...