在 LeNet5的深入解析 我们已经对 LetNet-5 网络结构做出了详细的描述,接下来我们将深入分析 Caffe 中怎么使用 LetNet-5 的这个模型进行预测。
Caffe 中关于 LetNet-5 的实现文件主要存放于
https://github.com/BVLC/caffe/tree/master/examples/mnist

第一步是进行 Caffe 的安装

接着看看在 Caffe 中怎么用 LetNet-5 进行训练和测试,整个流程如下:(先cd到 Caffe 的根目录下)
1)下载 minist 数据的命令:
$ cd data/mnist
$ ./get_mnist.sh
这个脚本主要内容是从 http://yann.lecun.com 上下载 mnist 训练和测试数据,并解压

2)将下载的数据转换为 Caffe 能识别的数据格式 LEVELDB 或 LMDB,对应的命令为:
$ ./examples/mnist/create_mnist.sh
上面的脚本调用了 build/examples/mnist/convert_mnist_data.bin这个可执行程序,对应的源文件为 convert_mnist_data.cpp
完成之后,在目录 examples/mnist 发现生成了 examples/mnist/mnist_train_\ lmdb/ (对应训练集) 和 examples/mnist/mnist_test_lmdb/ (对应测试集或验证集)两个目录,每个目录下都有两个文件: data.mdb和lock.mdb

3)定义 LetNet-5 网络模型,在 lenet.prototxt 中描述了广义的LetNet-5网络层设置,在 lenet_train_test.prototxt 中描述了 LetNet-5 训练和 测试时各网络层的设置。大致是差不多的,就是有些细节不一样。

4)有了网络模型,在训练前我们还需要指定一些训练参数,在lenet_solver.prototxt 中实现该功能的。这个文件最后一行是 GPU,如果没有GPU,需要改为CPU。不然报错

5) 现在我们有了训练数据、网络模型、指定了相关训练参数,可以开始训练网络 LetNet-5 了,使用下面的命令:
$./examples/mnist/train_lenet.sh,训练完成之后,我们得到了一个关于 LetNet-5 在 mnist 数据上的模型 caffemodel

train_lenet.sh:
./build/tools/caffe train -solver=examples/mnist/lenet_solver.prototxt

6)使用训练好的模型对数据进行预测,运行下面的代码:
$ ./build/tools/caffe.bin test \
-model examples/mnist/lenet_train_test.prototxt \
-weights examples/mnist/lenet_iter_10000.caffemodel \
-iterations 100

命令行解释:
./build/tools/caffe.bin test,表示只做预测(前向传播计算),不进行参数更新(后向传播计算)
-model examples/mnist/lenet_train_test.prototxt,指定模型描述文本文件
-weights examples/mnist/lenet_iter_10000.caffemodel 指定模型预先训练好的权值文件
-iterations 100,指定测试迭代次数,参与侧测试的样本数目为
(iterations*batch_size), test batch 设置为 100, 所以iterations =100时,刚好覆盖 10000个测试样本。

后续我们将对模型文件进行深入解析

怎么使用 Caffe 进行 LetNet-5 的训练和预测相关推荐

  1. 利用Caffe实现mnist的数据训练

    阿里云的参考文档:https://help.aliyun.com/document_detail/49571.html 在文档里提供了caffe的一个案例,利用Caffe实现mnist的数据训练.准备 ...

  2. Pythonnbsp;实现LeNet网络模型的训练及预测

    更多python教程请到友情连接: 菜鸟教程https://www.piaodoo.com 初中毕业读什么技校 http://cntkd.net 茂名一技http://www.enechn.com p ...

  3. 【超详细】MMLab分类任务mmclassification:环境配置说明、训练、预测及模型结果可视化展示

    本文详细介绍了使用MMLab的mmclassification进行分类任务的环境配置.训练与预测流程. 目录 文件配置说明 下载源码 配置文件 基于预训练模型微调或者续训练自己模型的方式 配置文件说明 ...

  4. pytorch建立mobilenetV3-ssd网络并进行训练与预测

    pytorch建立mobilenetV3-ssd网络并进行训练与预测 前言 Step1:搭建mobilenetV3-ssd网络框架 需要提前准备的函数和类. mobilenetV3_large 调用m ...

  5. ResNet网络的训练和预测

    ResNet网络的训练和预测 简介 Introduction 图像分类与CNN 图像分类 是指将图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法,是计算机视觉中其他任务,比如目标检测 ...

  6. 三两下实现NLP训练和预测,这四个框架你要知道

    作者 | 狄东林 刘元兴 朱庆福 胡景雯 编辑 | 刘元兴,崔一鸣 来源 | 哈工大SCIR(ID:HIT_SCIR) 引言 随着人工智能的发展,越来越多深度学习框架如雨后春笋般涌现,例如PyTorc ...

  7. Spark技术在京东智能供应链预测的应用——按照业务进行划分,然后利用scikit learn进行单机训练并预测...

    3.3 Spark在预测核心层的应用 我们使用Spark SQL和Spark RDD相结合的方式来编写程序,对于一般的数据处理,我们使用Spark的方式与其他无异,但是对于模型训练.预测这些需要调用算 ...

  8. 特征训练、预测一致性管理工具:开源项目Feast

    在机器学习的流程大体可以分成模型训练和模型服务两个阶段.无论是训练和服务阶段,其实都需要进行特征工程相关的工作,这块的技术挑战就是如何保证训练和预测过程中使用的特征是一致的.这个问题困扰了很多机器学习 ...

  9. MAT之GUI:GUI的方式创建/训练/仿真/预测神经网络

    MAT之GUI:GUI的方式创建/训练/仿真/预测神经网络 目录 操作步骤 (0).打开 (1).导入数据 (2)创建模型network_Jason_niu (3)设置参数并训练 (4)仿真预测 操作 ...

最新文章

  1. 来吧学学.Net Core之登录认证与跨域资源使用
  2. mysql 撤销删除_线上磁盘告警,mysql无法释放空间,踩了个大坑,大家记得别踩坑...
  3. mac 黑窗口连接mysql_python操作mysql数据库
  4. 爱奇艺开源轻量级插件化方案 Neptune
  5. 10代i5主频为什么这么低_i5-10210U 笔记本推荐
  6. Nginx 反向代理可以缓存 HTTP POST 请求页面吗?
  7. ccf小明放学20分_关于完全平方数的好题(20年3月1日)
  8. 深度学习在时空大数据分析中的应用
  9. (四)keycloak 自定义用户(SPI)开发
  10. ubuntu关机后自动重启[无法关机]的解决办法
  11. 宇枫资本工薪族理财启发
  12. 【计算机三级信息安全】访问控制模型
  13. 使用NCL绘制安徽省的轮廓图
  14. 220817笔试(速腾聚创)
  15. shell脚本语法基础汇总
  16. Tarjan算法流程和简要证明
  17. 在html中插入avi视频,兮夜2000杀成就达成,JDG优势局连续失误
  18. 飞凌imx6dl lvds闪屏问题记录
  19. 频偏纠正matlab实现,频偏估计matlab代码
  20. 爬虫之数据保存到txt文本中

热门文章

  1. Hi3516ampp编译错误之ls: cannot access '/hiwork/osdrvhi3516a.C02': No such file or directory
  2. oracle开发常用,oracle开发常用关键字
  3. Nature Protocols | 密歇根州立大学何胜阳/Tiedje团队建立拟南芥微生物组研究的标准化生长体系!...
  4. 青岛能源所提出微生物组相似度新算法DMS
  5. QIIME 2用户文档. 11数据筛选Filtering data(2018.11)
  6. C语言hk,C语言再学习
  7. python使用matplotlib绘制一条正弦曲线(plot函数可视化sine plot)
  8. R语言可视化分面图、多变量分组嵌套多水平t检验、可视化多变量分组嵌套多水平分面条形图(faceting bar plot)并添加显著性水平、添加误差条
  9. Python使用matplotlib绘图并去除颜色样条colorbar实战:remove colorbar from figure in matplotlib
  10. R语言dplyr包移除dataframe数据列实战(Remove Columns)