热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

卷积层和池化层输出特征图大小的计算——以LeNet模型为例

1.LeNet网络模型结构本文咱们以LeNet网络为例,介绍一下,如何卷积层和池化层输出特征图的大小。LeNet算上输入层,有八层。分别

1.LeNet网络模型结构

本文咱们以LeNet网络为例,介绍一下,如何卷积层和池化层输出特征图的大小。
在这里插入图片描述
LeNet算上输入层,有八层。分别是:输入层INPUT、C1卷积层、S2池化层(或者叫下采样)、C3卷积层、S4池化层(或者叫下采样)、C5卷积层、F6全连接层和最后一层输出层OUTPUT。

在这里插入图片描述

LeNet各层,输入图像大小、卷积核大小、步长和通道数以及输出图像大小,如本图所示。

2.特征图大小的计算

卷积层和池化层采用不同的公式。
a.卷积层
在这里插入图片描述
a.池化层
在这里插入图片描述

解释:OutSize为输出图像大小,InputSize为输入图像大小,KernelSize为卷积核大小,Stride为步长,Padding为卷积时填充方式。根据这两个公式,就可以计算得出上表。读者可以都计算一下。指的说明的是,LeNet中填充方式为valid,即不填充,Padding为0.

3.补充知识

a.一个神经元的基本结构
在这里插入图片描述

加偏置项x0:解决线性不可分问题,从而使得模型能够逼近任何非线性函数。

激活函数主要起此作用(使得模型能够逼近任何非线性函数)。偏置项此功能比较弱。

b.padding的三种填充方式

在这里插入图片描述
在这里插入图片描述
same模式只有步长为1时,输入和输出的尺度才相同

c.卷积操作
在这里插入图片描述
在这里插入图片描述
d.池化操作

池化操作的方式也有很有,这里以MaxPool(最大池化)和AvgPool(取平均池化)为例。
在这里插入图片描述
在这里插入图片描述
在构建卷积神经网络时,往往会用在卷积层之后,通过池化来降低卷积层输出的特征维度,有效减少网络参数的同时还可以防止过拟合现象

参考:

1.建议大家大此文,详细讲解了LeNet模型的结构:LeNet模型解读

2.经典网络结构(LeNet , AlexNet , VGG , GoogLeNet)剖析
3.卷积神经网络-LenNet(代码实现pytorch)


推荐阅读
author-avatar
血狼2732_150
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有