caffe imagenet模型理解

example下imagenet文件夹下的train_caffenet.sh里面的配置文件为models/bvlc_reference_caffenet/solver.prototxt,找到了solver.prototxt,里面对应的模型为,models/bvlc_reference_caffenet/train_val.prototxt,所以本博文,主要描述的是models/bvlc_reference_caffenet/train_val.prototxt。而且从model文件夹里面可以看到有alenet。说明这个其实这里面调用的模型,跟论文ImageNet Classification with Deep Convolutional Neural Networks里的模型是有点区别了。不过差距不大,帮助理解论文里面模型的整体思路,还是很有帮助的。

本文主要参考:ImageNet Classification with deep convolutional neural networks

      [caffe]深度学习之图像分类模型AlexNet解读

      学习笔记:AlexNet&Imagenet学习笔记

下面主要就是对模型bvlc_reference_caffenet/train_val.prototxt的理解,最开始也说明了,这是CaffeNet,说明这就是caffe调用的net了。

问题:

   1、哎,这模型,由于渣显卡。我还没跑过。要跑起来,没跑过,写这博文,总感觉没底气。关于batchsize这块,都是看的[caffe]深度学习之图像分类模型AlexNet解读,上面最后输出的数据,所以以后自己能跑代码的时候,再回来看看有啥问题。

   2、这数据里面又出现了mean_file: "data/ilsvrc12/imagenet_mean.binaryproto",这均值为啥了。

训练阶段:

  由于这个模型,前面几层把卷积和池化都合并了,所以如果当看图来说,相对于之前的MNIST,把卷积和池化层分开来画。这图没那么清晰的思路。

  输入数据:数据为256 3 227 227。由于设置的batch_size: 256,而且输入的为227x227的RGB图像。所以输入的为256 3 227 227。其实这227x227,就跟那alexnet的数据224x224不同了。

  第一层 第一个卷积层:数据变为256 96 55 55。跟论文中一样,也是96个核(不过这个据贾扬清自己说,这个是单GPU的模型了,不是双GPU)。每个核大小还是11x11,步长为4。看到一种更好的计算卷积后尺寸大小的方式:(227-11)/4+1=55。等于相当于减去了卷积核大小,然后看看有多少个步长,由于前面算的是中间的长度,然后+1,就是最后卷积后的特征的尺寸。这里其实也能看出为啥输入数据的尺寸变为227,就是为了对于卷积后得到55x55尺寸的特征图的情况下面,不会出现像论文中一样需要填充。这在我论文笔记里面也提到了要填3个像素。这等于把3个像素补上了,224+3=227。

  ReLU,在卷积之后马上ReLU,这在cifar10模型中其实就有了,但是cifar10第二个卷积之后才ReLU的,这直接就ReLU了,不知道是出于哪方面考虑的,是数据量太大。需要马上稀疏来提取局部特征

  第一层 第一个卷积层:数据变为

时间: 2024-12-18 10:09:25

caffe imagenet模型理解的相关文章

caffe AlexNet模型理解

之前看了CaffeNet,现在再看看这AlexNet,主要是为了帮助理解论文. 这里主要是记录一些和CaffeNet的不同的地方. 第一层:主要是先归一化再池化 第二层:偏差为0.1.先归一化后池化 第三层:一模一样 第四层:偏差为0.1. 第五层:偏差为0.1. 第六层:偏差为0.1 第七层:偏差为0.1 从上图,也可以看出,跟caffenet,就是卷积和归一化的顺序,以及偏差大小不同的差距.

学习笔记:Caffe上LeNet模型理解

学习笔记:Caffe上LeNet模型理解 Caffe中用的模型结构是著名的手写体识别模型LeNet-5(http://yann.lecun.com/exdb/lenet/a35.html).当年美国大多数银行就是用它来识别支票上面的手写数字的.能够达到这种商用的地步,它的准确性可想而知,唯一的区别是把其中的sigmoid激活函数换成了ReLU. 为什么换成ReLU,上一篇blog中找到了一些相关讨论,可以参考. CNN的发展,关键就在于,通过卷积(convolution http://deepl

【caffe】用训练好的imagenet模型分类图像

因为毕设需要,我首先是用ffmpeg抽取某个宠物视频的关键帧,然后用caffe对这个关键帧中的物体进行分类. 1.抽取关键帧的命令: E:\graduation design\FFMPEG\bin>ffmpeg -i .\3.mp4 -vf select='eq(pict_type\,I)',setpts='N/(25*TB)' .\%09d.jpg 2.用python编写脚本,利用在imagenet上训练的模型分类视频帧中的物体. 抽取得到的视频关键帧都存放在文件夹"/home/suns

学习笔记-CIFAR10模型理解简述

学习笔记-CIFAR10模型理解简述 整个结构中包含三个convolution layer.三个pooling layer和两个fully connected layer. 每个层有多个Feature Map,每个Feature Map通过一种卷积滤波器提取输入的一种特征,然后每个Feature Map有多个神经元. 首先是数据层,测试数据100张为一批(batch_size),后面括号内是数据总大小.如100*32*32*3= 307200 Top shape: 100 3 32 32 (30

CSS盒模型 理解

每个元素(块级和内嵌)都会有个矩形盒子,这个盒子为元素盒,盒子的中间(center)为元素的内 容,center区域内的距离为元素的高度(height).宽度(width).在盒模型中 padding就是内容 (center)与边框(border)的空隙区域,而margin 则是边框(border)外的空隙区域.元素的背景颜 色和背景图像在内边框(padding)区域是可见的,并且延生到border下面:元素的外边框(maegin)区 域总是透明的,所有父级元素的背景能看见. 盒内距离表示例如:

border,padding,margin盒模型理解

安静的敲着键盘,已势不可挡的姿势逼近php,我想我是一个幸福的人,未来不可期,做好现在,偶尔写着自己能看懂的API,慢慢悠悠的回味一下前端基础知识. 本文盒模型理解. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>border,padding,margin盒模型理解</title> <style&

[caffe]AlexNet模型解读

在imagenet上的图像分类challenge上Alex提出的alexnet网络结构模型赢得了2012届的冠军.要研究CNN类型DL网络模型在图像分类上的应用,就逃不开研究alexnet,这是CNN在图像分类上的经典模型(DL火起来之后). 在DL开源实现caffe的model样例中,它也给出了alexnet的复现,具体网络配置文件如下https://github.com/BVLC/caffe/blob/master/models/bvlc_reference_caffenet/train_v

Caffe ImageNet官方文档中文版

文档大部分都是机翻,本人英语未过四级,所以凑合看吧 构建ImageNet本指南旨在让您准备好根据自己的数据训练自己的模型.如果你只是想要一个ImageNet训练的网络,那么注意,由于训练需要很多电能,我们讨厌全球变暖,我们在model zoo提供如下所述训练的CaffeNet模型. 数据准备该指南指定所有路径并假定所有命令都从根caffe目录执行.(即-/caffe) 通过"ImageNet"我们这里意味着ILSVRC12挑战,但你也可以轻松地训练整个ImageNet,只是需要更多的磁

4 caffe 创建模型与编写配置文件 train_val.prototxt;solver.prototxt;deploy.proto.txt

一,train_val.prototxt name: "CIFAR10_quick" layer { name: "cifar" type: "Data" top: "data" top: "label" include { phase: TRAIN } transform_param { # mirror: true # mean_file: "examples/cifar10/mean.bin