基于ubuntu对于CIFRA-10进行训练学习
来源:互联网 发布:移动网络维护人员体检 编辑:程序博客网 时间:2024/06/18 17:12
参考博客:http://blog.csdn.net/c406495762/article/details/67650370
1.深度学习中经常看到epoch、 iteration和batchsize,下面按自己的理解说说这三个的区别:
(1)batchsize:批大小。在深度学习中,一般采用SGD训练,即每次训练在训练集中取batchsize个样本训练;
(2)iteration:1个iteration等于使用batchsize个样本训练一次;
(3)epoch:1个epoch等于使用训练集中的全部样本训练一次;
举个例子,训练集有1000个样本,batchsize=10,那么:
训练完整个样本集需要:
100次iteration,1次epoch。
根据上面的讲解,我们可以这样理解:
1次全部训练=1次epoch
样本总数(已知)=batchsize(可以设定,也是已知,因为可以通过在data层,也就是输入层指定)*iteration,batchsize表示一次处理多少张图片,在data层定义(人为可控)
从而求出来了iteration(迭代数)
这里说一下test_iter与test_interval的区别:
test_iter表示需要迭代的次数
test_interval,这个interval表示区间的意思,也就是,没进行test_interval次训练之后,就需要测试一次
2.跑cifra-10的例子的具体步骤:
step1:获取数据
cd ~/caffe
./data/cifar10/get_cifar10.sh
step2:图片格式转换和计算图片数据的均值
cd ~/caffe
./examples/cifar10/create_cifar10.sh
-------------------------在这里对于create_cifar10.sh的内容进行一下说明-----------------------
通过看create_cifar10.sh源代码可以看出来:
./build/examples/cifar10/convert_cifar_data.bin$DATA$EXAMPLE$DBTYPE
利用convert_cifar_data.bin,可以工具将/data/cifar10中的原始图片转换成lmdb文件并将其保存到/examples/cifar10文件中
之前这个脚本已经对于$DATA$EXAMPLE$DBTYPE进行了定义
EXAMPLE=examples/cifar10
DATA=data/cifar10
DBTYPE=lmdb
./build/tools/compute_image_mean -backend=$DBTYPE \ $EXAMPLE/cifar10_train_$DBTYPE$EXAMPLE/mean.binaryproto
利用这个工具,可以根据/examples/cifar10/cifar10_train_lmdb(刚刚生成的)文件计算出这些训练集图片数据的均值,
并将其保存到/examples/cifar10/mean.binaryproto文件中。
--------------对于compute_image_mean的说明————————————————
在训练过程中,caffe使用的均值数据格式是binaryproto,它是一个二进制格式文件。
作者为我们提供了一个计算均值的文件compute_image_mean.cpp,放在caffe根目录下的tools文件夹里面。
编译caffe后,生成的可执行文件放在 build/tools/ 目录下,我们可以直接在caffe根目录中使用如下指令:
- 1
- 1
带两个参数:
第一个参数:my-caffe-project /img_train_lmdb , 表示需要计算均值的数据,格式为lmdb的训练数据。
第二个参数:my-caffe-project /mean.binaryproto, 将计算出来的二进制格式结果保存到均值文件。
-----------------------------------------------------------------------------------------------
至此,一共生成了三个文件:cifar10_test_lmdb,cifar10_train_lmdb,mean.binaryproto。
cifar10_train_lmdb:用于Caffe训练的lmdb文件
cifar10_test_lmdb:用于Caffe测试的lmdb文件
mean.binaryproto:根据cifar10_train_lmdb计算出的图片数据均值
step3:建立prototxt,这个作者已经写好了,所以不用自己动手写,如果新建一个项目的话,prototxt文件是一个必须写的文件,
这个文件告诉caffe需要建立什么样的网络
step4:开始训练
cd ~/caffe
./examples/cifar10/train_quick.sh
-------------------对于train_quick.sh进行说明----------------
从下面的shell脚本文件中可以看出:使用caffe train指令根据cifar10_quick_solver.prototxt配置文件训练模型,随后在进行8次epochs之后学习率因子降低十分之一。
- 基于ubuntu对于CIFRA-10进行训练学习
- Caffe学习笔记(一):CIFRA-10在Caffe上进行训练学习
- caffe当中对于cifar10进行训练
- 基于gensim进行句向量的训练
- 基于Inception v3进行多标签训练
- 基于Inception v3进行单标签训练
- CIFAR-10在caffe上进行训练与学习
- 训练集噪声对于深度学习的影响
- caffe学习笔记1_CIFAR-10在caffe上进行训练与学习
- 在ubuntu环境下进行Opencv分类器的训练
- 利用ubuntu命令来进行查看训练时间
- CIFAR-10在caffe上进行训练与学习出现compute_image_mean: not found问题
- caffe读书笔记1 CIFAR-10在caffe上进行训练与学习
- caffe读书笔记1 CIFAR-10在caffe上进行训练与学习
- 【神经网络与深度学习】基于Windows+Caffe的Minst和CIFAR—10训练过程说明
- 基于机器学习对于短波通讯抗干扰可行性分析
- CIFAR-10在caffe上进行训练
- Caffe学习:使用pycaffe进行网络训练与测试
- HUD 1215七夕节(get一种解决超时的新思想)
- 小白带你学安卓——工程目录结构及日志
- 《趣学算法》前言
- placeholder支持ie
- SDL编译安装问题
- 基于ubuntu对于CIFRA-10进行训练学习
- 单词长度
- HTTP常见错误代码
- selenium定位页面元素
- 青蛙跳台阶
- WebRTC穿透服务器防火墙配置问题
- 多重背包
- IDEA2017创建maven+springmvc+mongdb的项目
- 冒泡排序-bubbleSort