【Caffe】训练ImageNet模型
Caffe训练ImageNet使用的是NIPS 2012 paper论文的算法。
本博客转载自:http://blog.csdn.net/pirage/article/details/17553549
1、准备数据。
假设已经下载好数据集和验证集,存储路径为:
/path/to/imagenet/train/n01440764/n01440764_10026.JPEG
/path/to/imagenet/val/ILSVRC2012_val_00000001.JPEG
首选需要创建一个txt文件,列举出所有图像以及对应的lable,caffe包“python/caffe/imagenet/ilsvrc_2012_train.txt”和“ilsvrc_2012_val.txt”两个文件分别是标好的训练集和验证集的文件,共分为1000类。
还需要注意的是,所有的图像都需要归一到同样的尺寸。
2、转化生成训练集。
运行下面的命令:
GLOG_logtostderr=1 examples/convert_imageset.bin /path/to/imagenet/train/ python/caffe/imagenet/ilsvrc_2012_train.txt /path/to/imagenet-train-leveldb
生成文件存储在“/path/to/imagenet-train_leveldb”路径下。
3、计算图像均值。
执行命令:
examples/demo_compute_image_mean.bin /path/to/imagenet-train-leveldb /path/to/mean.binaryproto
第一个参数是执行脚本代码,第二个参数是上一步生成的数据集,第三个参数是存储图像均值的目录路径。
4、定义网络。
ImageNet的网络定义在“examples/imagenet.prototxt”文件中,使用时需要修改里面source和meanfile变量的值,指向自己文件的路径。
仔细观察imagenet.prototxt和imagenet_val.prototxt文件可以发现,训练和验证的参数大部分都相同,不同之处在于初始层和最后一层。训练时,使用softmax_loss层来计算损失函数和初始化后向传播,验证时,使用accuracy层来预测精确度。
在文件“examples/imagenet_solver.prototxt”中定义solver协议,同样需要修改train_net和test_net的路径。
5、训练网络。
执行命令:
GLOG_logtostderr=1 examples/train_net.bin examples/imagenet_solver.prototxt
6、在python中使用已经训练好的模型。
Caffe只提供封装好的imagenet模型,给定一副图像,直接计算出图像的特征和进行预测。首先需要下载模型文件。
【Caffe】训练ImageNet模型相关推荐
- Caffe实践】如何利用Caffe训练ImageNet分类网络
Caffe实践]如何利用Caffe训练ImageNet分类网络 源文章:https://github.com/BVLC/caffe/tree/master/examples/imagenet 由于要使 ...
- Caffe训练ImageNet
Caffe训练ImageNet使用的是NIPS 2012 paper论文的算法. 1.准备数据. 假设已经下载好数据集和验证集,存储路径为: /path/to/imagenet/train/n0144 ...
- caffe训练分类模型教程
caffe训练分类模型教程 1.已有图像存放在train和val下,book和not-book(两类)的图片数量相同 在caffe/data下新建一個myself文件夾,并新建两个文件夹分别命名为tr ...
- 8_用opencv调用深度学习框架tenorflow、Pytorch、Torch、caffe训练好的模型(20190212)
用opencv调用深度学习框架tenorflow.Pytorch.Torch.caffe训练好模型(20190212) 文章目录: https://blog.csdn.net/hust_bochu_x ...
- Windows环境下使用 Caffe在ImageNet上训练网络
在配置好Windows版的Caffe之后,可以使用Windows Caffe训练ImageNet网络,主要有4个步骤: (1)准备图片数据库 (2)将图片数据转换为Caffe可以使用的LMDB或者Le ...
- Windows下Caffe的学习与应用(二)——优化自己训练的模型(fine-tuning)
前言 在前面的博文中,我们也看到,在进行训练的样本比较少,每个种类的样本只有120张,迭代次数为100代,训练得到的模型在测试那些特征不那么明显图像时,准确率达不到我们想要的效果.如果下图: 测试的结 ...
- caffe使用预训练的模型进行finetune
首先明确预训练好的模型和自己的网络结构是有差异的,预训练模型的参数如何跟自己的网络匹配的呢: 参考官网教程:http://caffe.berkeleyvision.org/gathered/examp ...
- python怎么使用预训练的模型_Keras使用ImageNet上预训练的模型方式
我就废话不多说了,大家还是直接看代码吧! import keras import numpy as np from keras.applications import vgg16, inception ...
- 将训练集构建成ImageNet模型
以下程序实现将训练集构建为ImageNet模型,训练集图片为56个民族 import java.io.File; import java.io.FileNotFoundException; impor ...
最新文章
- 气候变迁给社会带来什么变化?
- 淮阴工学院研究生计算机,先鸣论坛第六期/考研加油站(五)|2017届淮阴工学院计算机学院考研最高分王杰和你一起分享他的考研经验...
- python数组去重函数_Python常用功能函数系列总结(一)
- Mysql中怎样使用update更新某列的数据减去指定值
- shell如果文件夹不存在则创建
- 开发你的酷炫装备 Jetson TX1使用指南
- shellcode xor编码/解码[2]
- Debugging a Plug-in
- 移植JDK,确实需要CPU指令级的工作
- ON_EVENT 报错
- windows时间服务器搭建
- 车机鸿蒙系统 车型,华为鸿蒙车机系统提前曝光!首发车型是它?
- 深度学习之Bias/Variance偏差、方差
- 实战演习(四)——网络流量系统分析简介
- 自学自用 = B站(操作系统_清华大学(向勇、陈渝)) 未完待续。。(转载)
- 建模人必备的C4D素材网站,解决你的创作问题
- 【STC8G2K64S4】比较器介绍以及比较器掉电检测示例程序
- 为什么R.Stallman这次来华讲学可能跑题?
- SparkSQL比MapReduce快的原因
- 等级分布图的边界元素的处理
热门文章
- torch.cat() 函数用法
- 毕设日志——pytorch版本faster rcnn运行代码前的环境配置2019.4.9
- 分享java web 期末项目实验源码20套,BBS论坛,ERP管理系统,OA自动化等等
- python中is、id、==与浅拷贝和深拷贝
- 使用swiftenv管理swift版本
- windows下安装whmcs会经常遇到两个问题
- 【python】详解zipfile模块读取处理压缩文件实例
- Python实例:11~20例
- ThinkPHP5.0源码学习之框架启动流程
- MVC面试问题与答案