深度学习之学习(1-1) VGG16网络结构详解
参见
- 【深度学习】全面理解VGG16模型_florrie-CSDN博客_vgg16模型介绍
- 深度学习-VGG16原理详解_é£的博客-CSDN博客_vgg16
1、网络结构
根据卷积核大小和卷积层数,VGG共有6中配置,分别为A,A-LRN,B,C,D,E,其中D和E两种最为常用,即i我们所说的VGG16和VGG19。
具体为:
1. 卷积-卷积-池化-卷积-卷积-池化-卷积-卷积-卷积-池化-卷积-卷积-卷积-池化-卷积-卷积-卷积-池化-全连接-全连接-全连接 。
2. 通道数分别为64,128,512,512,512,4096,4096,1000。卷积层通道数翻倍,直到512时不再增加。通道数的增加,使更多的信息被提取出来。全连接的4096是经验值,当然也可以是别的数,但是不要小于最后的类别。1000表示要分类的类别数。
3. 所有的激活单元都是Relu 。
4. 用池化层作为分界,VGG16共有6个块结构,每个块结构中的通道数相同。因为卷积层和全连接层都有权重系数,也被称为权重层,其中卷积层13层,全连接3层,池化层不涉及权重。所以共有13+3=16权重层。
5. 对于VGG16卷积神经网络而言,其13层卷积层和5层池化层负责进行特征的提取,最后的3层全连接层负责完成分类任务。
vgg16总共有16层,13个卷积层和3个全连接层,第一次经过64个卷积核的两次卷积后,采用一次pooling,第二次经过两次128个卷积核卷积后,再采用pooling,再重复两次三个512个卷积核卷积后,再pooling,最后经过三次全连接。
2、VGG16的卷积核
- conv3-xxx:卷积层全部都是3*3的卷积核,用上图中conv3-xxx表示,xxx表示通道数。其步长为1,用padding=same填充。池化层的池化核为2*2
- input(224x224 RGB image) :指的是输入图片大小为224*244的彩色图像,通道为3,即224*224*3;
- maxpool :是指最大池化,在vgg16中,pooling采用的是2*2的最大池化方法;
- FC-4096 :指的是全连接层中有4096个节点,同样地,FC-1000为该层全连接层有1000个节点;
- padding:指的是对矩阵在外边填充n圈,padding=1即填充1圈,5X5大小的矩阵,填充一圈后变成7X7大小;
- 最后补充,vgg16每层卷积的滑动步长stride=1,padding=1,卷积核大小为333;
3. 卷积计算
4、什么是卷积?
在这里补充经过padding填充,那么卷积后图片大小不会发生改变,如5X5的图像大小,padding=1变成7X7,再用3X3的filter进行卷积,那么卷积后的宽高为(7-3+2x1)/1+1=7。
5、什么是maxpool?
最大池化就是取filter对应区域内最大像素值替代该像素点值,其作用是降维。在这里,池化使用的滤波器都是2*2大小,因此池化后得到的图像大小为原来的1/2。下图为最大池化过程:
6.1、从input到conv1
6.2、从conv1到conv2之间的过渡
6.3、conv2到conv3
我们从上面的过程中知道了,input为300x300x3的图片,经过第一层之后变成150x150x64,那么第二层里面有128个卷积核,可以推出经过第二层后得到是75x75x128。
6.4、进入conv3
可知,第三层有256个卷积核,那么得到就是75x75x256
6.5、从conv3到conv4之间的过渡
这里75是奇数,经过pad之后变成偶数76,那么就得到结果为38x38x256
其余的过程与上述一样,最终得到10x10x512。
7、最后到三层全连接FC层
深度学习之学习(1-1) VGG16网络结构详解相关推荐
- 深度学习之目标检测(五)-- RetinaNet网络结构详解
深度学习之目标检测(五)-- RetinaNet网络结构详解 深度学习之目标检测(五)RetinaNet网络结构详解 1. RetinaNet 1.1 backbone 部分 1.2 预测器部分 1. ...
- 【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理(1)
上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可 ...
- pytorch图像分类篇:6. ResNet网络结构详解与迁移学习简介
前言 最近在b站发现了一个非常好的 计算机视觉 + pytorch 的教程,相见恨晚,能让初学者少走很多弯路. 因此决定按着up给的教程路线:图像分类→目标检测→-一步步学习用pytorch实现深度学 ...
- ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解
ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 原文 ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 在教程的这一部分,我们将研究一 ...
- php laravel入口文件,Laravel学习教程之从入口到输出过程详解
php 的 Laravel学习教程之从入口到输出过程详解 本文主要给大家介绍了关于Laravel从入口到输出过程的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. I. 预备 ...
- 【相机标定与三维重建原理及实现】学习笔记1——相机模型数学推导详解
目录 前言 一.小孔成像模型 二.坐标系的变换 1.世界坐标系到相机坐标系的变换(刚体变换)[xw^→xc^\boldsymbol {\hat{x_{w}}}\rightarrow \boldsymb ...
- AlexNet网络结构详解与代码复现
参考内容来自up:3.1 AlexNet网络结构详解与花分类数据集下载_哔哩哔哩_bilibili up主的CSDN博客:太阳花的小绿豆的博客_CSDN博客-深度学习,软件安装,Tensorflow领 ...
- AlexNet网络结构详解(含各层维度大小计算过程)与PyTorch实现
AlexNet网络结构详解(含各层维度大小计算过程)与PyTorch实现 1.AlexNet之前的思考 2.AlexNet网络结构 3.AlexNet网络结构的主要贡献 4.PyTorch实现 ...
- U-Net网络结构详解
U-Net网络结构详解 U-Net网络结构是对称的,由于网络结构像U型,所以被命名为U-Net.整体而言,U-Net是一个Encoder-Decoder(编码器-解码器)的结构,这一点是与FCN的结构 ...
- 基于OpenCL的深度学习工具:AMD MLP及其使用详解
from:http://www.csdn.net/article/2015-08-05/2825390 [编者按]深度学习是近年来迅速发展和突破的机器学习领域,具有非常广泛的应用前景.将服务器GPU应 ...
最新文章
- C语言基础(12)-输入和输出
- 阿里开源台柱 Ant Design 源码仓库被删了...
- pytorch计算模型参数量
- 【408预推免复习】计算机网络(谢希仁第七版)第二章——物理层
- stl set求交集 并集 差集
- Command of SVN for linux
- SHA256安全散列算法
- 如何提升JavaScript的任务效率?学会后教给你同事
- jQuery 3.4.0 Released(2019.4.10)
- python附加索引_python – 附加两个多索引的pandas数据帧
- mysql批量删除进程_小程序批量删除云数据库里的数据
- 【数据预测】基于matlab鸟群算法优化BP神经网络数据预测【含Matlab源码 1772期】
- kalipython图形界面_Kali入侵入门版笔记!!!
- ​倒卖二手书,一个被忽略的项目,​做的​好月赚1w+
- 好玩Spring之TransactionSynchronization相关的几个类
- 2021 编程语言排行榜出炉
- Git报错解决:fatal: unable to access ‘https://github.com/.......‘: OpenSSL SSL_read: Connection was reset
- Hourglass网络的理解和代码分析
- Gartner发布2022年新兴技术成熟度曲线,推动沉浸式、AI自动化发展
- 抓取微博热搜榜数据并保存在Excel中