运行caffe自带的mnist实例详细教

为了程序的简洁,在caffe中是不带练习数据的,因此需要自己去下载。但在caffe根目录下的data文件夹里,作者已经为我们编写好了下载数据的脚本文件,我们只需要联网,运行这些脚本文件就行了。

        Mnist介绍:mnist是一个手写数字库,由DL大牛YanLeCun进行维护。mnist最初用于支票上的手写数字识别,现在成了DL的入门练习库。征对mnist识别的专门模型是Lenet,算是最早的cnn模型了。mnist数据训练样本为60000张,测试样本为10000张,每个样本为28*28大小的黑白图片,手写数字为0-9,因此分为10类。

注意:在caffe中运行所有程序,都必须在根目录下进行,否则会出错

第一步:打开caffe根目录 

[objc] view plain copy
  1. cd ~/caffe/caffe-master  

第二步:下载Mnist数据

[objc] view plain copy
  1. sudo sh data/mnist/get_mnist.sh  

运行成功后,在caffe-master/data/mnist/目录下有四个文件:

train-images-idx3-ubyte:训练集样本 (9912422 bytes) 

train-labels-idx1-ubyte: 训练集对应标注 (28881 bytes) 

 t10k-images-idx3-ubyte: 测试集图片 (1648877 bytes)

 t10k-labels-idx1-ubyte: 测试集对应标注 (4542 bytes)

这些数据不能在caffe中直接使用,需要转换成LMDB数据

第三步:转换成LMDB数据

[objc] view plain copy
  1. sudo sh examples/mnist/create_mnist.sh  

我刚开始在执行这条指令的时候出现问题,大概错误意思就是,某某文件不存在不能发现。

后来解决办法是:将caffe-master目录下build文件夹剪切到桌面,通过指令打开根目录:cd ~/caffe/caffe-master,在它目录下,重建一个build文件夹:mkdirbuild,然后再进入build文件夹下,注意:是这个文件夹里面。执行指令cmake..待执行完,再make以下,等它编译完成并成功。

然后在caffe根目录下面,重新执行第三步。这一次就通过了,转换成功的标志就是:会在caffe/caffe-master/examples/mnist/目录下,生成两个文件夹,分别是mnist_train_lmdb和mnist_test_lmdb,里面存放的data.mdb和lock.mdb,就是我们需要的运行数据。

路径问题,BUILD=examples/mnist
然而bin文件不再这个目录下,此目录为cpp源文件,
convert_mnist_data.bin文件在caffe/build/examples/mnist下
但是build文件是一个符号链接链接地址为.build_release
所以更改路径为

BUILD=.build_release/examples/mnist


多说两句:

create_mnist.sh是利用caffe-master/build/examples/mnist/的convert_mnist_data.bin工具,将mnistdate转化为可用的lmdb格式的文件。并将新生成的2个文件mnist-train-lmdb 和 mnist-test-lmdb放于create_mnist.sh同目录下。

第四步:运行这个例子

Caffe根目录下执行:   

[objc] view plain copy
  1. sudo time sh examples/mnist/train_lenet.sh  

成功运行,在泰坦显卡的机子上运行时间大概是3分钟,因为机子有英伟达的显卡,GPU-CUDA也装好,所以就没有修改配置文件这一步。

精度为99.03%。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/387324.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

6 软件的安装

6 软件包管理 6.1 简介 软件包分类: 源码包 源代码(大多数是C语言) 安装时慢,容易报错 >脚本安装包 对源码包进行改装,使安装更简单,不多。 rpm包 二进制包 Ubuntu系列的二进制包不是rpm&#xf…

STD函数的内部计算公式

各股票软件的标准差函数STD是不同的,而布林线的上下轨是以STD为基础计算出来的,所以使用布林线应小心。以2008/3/28的上证综指为例,利用如下代码:"收盘价3日STD:STD(CLOSE,3);",三日收盘价分别是&#xff1a…

caffe路径正确,却读不到图片

调试caffe,用已有的网络训练自己的数据集的时候(我这里做的是二分类)。在生成均值文件之后,开始train,发现出现了这个问题。 1,路径正确,却读不到图片。 [db_lmdb.hpp:15] Check failed: mdb_st…

Eclipse可以执行jsp文件却无法访问Tomcat主页

点击Servers,然后双击本地的Tomcat服务器 出现如下界面 这里要选择第二项 再重新启动Tomcat就行了 转载于:https://www.cnblogs.com/lls1350767625/p/10452565.html

caffe调用的一个例子

本文是学习Caffe官方文档"ImageNet Tutorial"时做的,同样由于是Windows版本的原因,很多shell脚本不能直接使用,走了不少弯路,但是收获也不少。比如:如何让shell脚本在Windows系统上直接运行、如何去用Caffe给…

孔铜的铜厚

---恢复内容开始--- 表面处理方式注释&#xff1a; 喷锡 喷锡铅合金是一种最低成本PCB表面有铅工艺&#xff0c;它能保持良好的可焊接性。但对于精细引脚间距(<0.64mm)的情况&#xff0c;可能导致焊料的桥接和厚度问题。 无铅喷锡 一种无铅表面处理工艺&#xff0c;符合“环…

1 kafka简介

Publish-subscribe distributed messaging system. A distributed commit log. kafka集群中的服务器都叫broker。 客户端有两类&#xff1a;producer、consumer。 客户端和broker之间使用TCP协议。 不同业务系统的消息通过topic进行区分。 消息的topic会分区&#xff0c;以…

各种机器学习的优缺点及应用场景

目录 正则化算法&#xff08;Regularization Algorithms&#xff09; 集成算法&#xff08;Ensemble Algorithms&#xff09; 决策树算法&#xff08;Decision Tree Algorithm&#xff09; 回归&#xff08;Regression&#xff09; 人工神经网络&#xff08;Artificial…

微信公众号接入开发者模式,服务器配置Token验证

概述 接入微信公众平台开发&#xff0c;开发者需要按照如下步骤完成&#xff1a; 填写服务器配置验证服务器地址的有效性依据接口文档实现业务逻辑官方指南文档服务器配置 服务器地址(URL)&#xff1a;填写完URL后&#xff0c;微信服务器会发送GET请求&#xff0c;并携带以下参…

2 kafka安装

单节点&#xff1a; 1、解压kafka压缩包到安装目录&#xff08;自己指定&#xff09;&#xff1b; 2、进入kafka目录并执行命令 > bin/zookeeper-server-start.sh config/zookeeper.properties #如果报错&#xff0c;修改kafka-run-class.sh&#xff0c;将 -XX:UseComp…

TensorFlow自带例子

TensorFlow自带例子已经包含了android和ios下的摄像头图像分类示例Inception&#xff0c;这里补充一个Windows下的&#xff0c;使用AForge库(www.aforgenet.com)操作摄像头。 代码在这里下载&#xff0c;使用Visual Studio 2017编译。 http://files.cnblogs.com/files/autosoft…

遇到Visual Studio 当前不会命中断点.还没有为该文档加载任何符号的情况

一.问题及原因 有这样一种调用逻辑:A.exe调用B.dll.现在想要在B的源代码中打断点,从A发起进行调试,却给出了"当前不会命中断点.还没有为该文档加载任何符号"的提示.感觉十分奇怪,各种重新生成,重启VS都没啥用,最后不得以网上搜了一番,找到了问题的根源. 原来我把旧的…

java01基础简介

1 java概述 开发服务器端应用程序最流行语言&#xff0c;产生网页、运行后端逻辑。 当对java了解到一定程度&#xff0c;阅读源码才能解决问题。 Applet&#xff1a;在网页中运行的java程序&#xff0c; Java的应用领域&#xff1a; 桌面应用系统开发 企业级应用开发 多媒…

TensorFlow自带例子已经包含了android和ios下的摄像头图像分类示例Inception v1,这里补充一个Windows下的,使用AForge库(www.aforgenet.com)操作

TensorFlow自带例子已经包含了android和ios下的摄像头图像分类示例Inception v1&#xff0c;这里补充一个Windows下的&#xff0c;使用AForge库(www.aforgenet.com)操作摄像头。 代码在这里下载&#xff0c;使用Visual Studio 2017编译。 http://files.cnblogs.com/files/autos…

Docker+Mongodb

DockerMongodb 原文:DockerMongodbdocker search mongodb docker run -d -p 2701:27017 -v /usr/mongodb/data:/data/db -v /usr/mongodb/databack:/data/backup --name mongo-v1.0.0 mongo --auth docker exec -it mongo-v1.0.0 mongo admin docker exec -it mongo-v1.0.…

Java02继承

5继承 5.1 类、超类和子类 关键字extends表示继承。 Java中的继承都是公用继承&#xff0c;没有C中的私有继承和保护继承。 Super class Subclass 来自于集合的术语 Base class Derived class Parent class Child class 将通用的功能放在超类中&#xff0c;将具有特…

BP神经网络与Python实现

人工神经网络是一种经典的机器学习模型&#xff0c;随着深度学习的发展神经网络模型日益完善.联想大家熟悉的回归问题&#xff0c; 神经网络模型实际上是根据训练样本创造出一个多维输入多维输出的函数&#xff0c; 并使用该函数进行预测&#xff0c; 网络的训练过程即为调节该…

《关于长沙.NET技术社区未来发展规划》问卷调查结果公布

那些开发者们对于社区的美好期待 2月&#xff0c;长沙.net 技术社区自从把群拉起来开始&#xff0c;做了一次比较正式、题目为《关于长沙.NET技术社区未来发展规划》的问卷调查&#xff0c;在问卷调查中&#xff0c;溪源写道&#xff1a; 随着互联网时代的到来&#xff0c;互联…

Java03接口与内部类

6 接口与内部类 接口 interface 对象克隆 内部类 inner class 代理 proxy 6.1 接口 public interface Comparable<T> {int compareTo(T other); }Arrays.sort(Object[] a) 利用的是mergesort 接口也可以被扩展 public interface Moveable {void move(double x, doub…

第一节:ASP.NET开发环境配置

第一节&#xff1a;ASP.NET开发环境配置 什么是ASP.NET&#xff0c;学这个可以做什么&#xff0c;学习这些有什么内容&#xff1f; ASP.NET是微软公司推出的WEB开发技术。 2002年&#xff0c;推出第一个版本&#xff0c;先后推出ASP.NET2.0&#xff0c;和ASP.NET3.5&#xff0c…