传统CNN的概念理解--LeNet-5

本文介绍了CNN结构可视化工具,重点解析了LeNet-5网络结构,包括卷积核、featuremap的概念。卷积核尺寸、深度和数量可自由设定,影响下一层的featuremap数量。featuremap是经过卷积处理后的图像。LeNet-5网络从C1到F6层的结构、参数和连接数逐一剖析,展示了卷积层和下采样层的工作原理。
摘要由CSDN通过智能技术生成

CNN结构可视化的神器

在这里插入图片描述
没错,看到这个网站了吗。有了这个网站,我们可以把CNN的结构很好的可视化。
基本上可以解释你对CNN的 feature map和卷积核filter的所有疑惑。

https://www.cs.ryerson.ca/~aharley/vis/conv/
不多说了,上面就是这个可视化工具的网址。这个可视化工具的CNN框架是LeNet-5。
来,我们看一下LeNet-5的网络结构。正好啊,这个网络的输入是单通道灰度图为例的。
在这里插入图片描述

2 CNN的一些专用名词

feature map、卷积核、卷积核个数、filter、channel的概念解释
channel RGB图像有三个channel,灰度图有一个channel

2.1 卷积核的理解

卷积核在有的文档里也称为过滤器(filter)。
关于卷积核,大家最关系的就是卷积核的尺寸。一般来讲,卷积核的33D或者55D等,前面的33或者55就是卷积核的尺寸,这个是随便大家设计的,甚至11的卷积核都可以。设置11的卷积核主要作用是为扩大下一层feature map的数量。
大家更关注的是卷积核的第三个参数D,一般来讲我们定意思D为卷积核的深度。在一些博客中,大家都会这么理解:如果输入图像是三通道的RGB图像,那么第一批卷积核的深度D就是3.。如果输入图像是灰度图,第一批卷积核的深度就是1.。
除此之外,大家更关注的就是卷积核的数量问题了,因为卷积核的数量直接影响下一层feature map的数量。即卷积核的数量=下一层feature map的数量。
以LeNet-5的第一层为例,它的第一批卷积核有6个,所以处理的feature map的数量就是6.。如下图所示:

在这里插入图片描述
在这里插入图片描述
到这里,大家也就可以理解卷积核数量是如何使用了。换句话说就是,你在下一层想有多少featuer map,那么你只需要使用多少个卷积核就可以了。
好了,我们继续讨论卷积核的深度,因为这个很重要。
其实卷积核的深度也是随便大家如何设置的。即使是在输入层的第一层输入的是RGB图像,大家也可以设置深度为1的卷积核。为了可以这样设计呢?首先,大家把RGB图像的三个通道的图像层看成是三个featuer map就可以了。这个时候,有时候我们目标的一些颜色信息。比如我们曾经写的一个关于零样本识别的论文。我们通过提取目标的语义信息判断目标的名称。比如身上五颜六色的鸟,我们需要提取他们的颜色,因此,我们在每个通道逐个使用 卷积核提取特征。
还有一点就是,在其它层的卷积核,以LeNet-5为例,在第二个卷积层时,作者想同时提取多个feature map的特征。因此他们设置卷积核的深度为4,图下图所示“
在这里插入图片描述
所以,说到这里。对卷积核的设置基本是可以根据大家的需求随意设置。

2.2 feature map

所谓的feature map,就是经过卷积核或者说是filtr处理后的图像。
feather map 是怎么生成的?
输入层:在输入层,如果是灰度图片,那就只有一个feature map;如果是彩色图片,一般就是3个feature map(红绿蓝)。
其它层:层与层之间会有若干个卷积核(kernel)(也称为过滤器),上一层每个feature map跟每个卷积核做卷积,都会产生下一层的一个feature map,有N个卷积核,下层就会产生N个feather map。

3 LeNet-5的网络结构

大家可以根据下面的文字介绍,逐层或者逐个神经元的去看那个网页。

3.1 C1层是一个卷积层

输入图片:32*32

卷积核大小:5*5

卷积核种类:6

输出featuremap大小:28*28 (32-5+1)

神经元数量:28286

可训练参数:(5*5+1)6(每个滤波器55=25个unit参数和一个bias参数,一共6个滤波器)

连接数:(55+1)62828

3.2 S2层是一个下采样层

输入:28*28

采样区域:2*2

采样方式:4个输入相加,乘以一个可训练参数,再加上一个可训练偏置。结果通过sigmoid

采样种类:6

输出featureMap大小:14*14(28/2)

神经元数量:14146

可训练参数:2*6(和的权+偏置)

连接数:(22+1)61414

S2中每个特征图的大小是C1中特征图大小的1/4

3.3 C3层也是一个卷积层

输入:S2中所有6个或者几个特征map组合

卷积核大小:5*5

卷积核种类:16

输出featureMap大小:10*10

C3中的每个特征map是连接到S2中的所有6个或者几个特征map的,表示本层的特征map是上一层提取到的特征map的不同组合

存在的一个方式是:C3的前6个特征图以S2中3个相邻的特征图子集为输入。接下来6个特征图以S2中4个相邻特征图子集为输入。然后的3个以不相邻的4个特征图子集为输入。最后一个将S2中所有特征图为输入。

则:可训练参数:6*(325+1)+6(425+1)+3(425+1)+(256+1)=1516

连接数:10101516=151600

3.4 S4层是一个下采样层

输入:10*10

采样区域:2*2

采样方式:4个输入相加,乘以一个可训练参数,再加上一个可训练偏置。结果通过sigmoid

采样种类:16

输出featureMap大小:5*5(10/2)

神经元数量:5516=400

可训练参数:2*16=32(和的权+偏置)

连接数:16*(2*2+1)55=2000

S4中每个特征图的大小是C3中特征图大小的1/4�

3.5 C5层是一个卷积层

输入:S4层的全部16个单元特征map(与s4全相连)

卷积核大小:5*5

卷积核种类:120

输出featureMap大小:1*1(5-5+1)

可训练参数/连接:120*(1655+1)=48120

3.6. F6层全连接层

输入:c5 120维向量

计算方式:计算输入向量和权重向量之间的点积,再加上一个偏置,结果通过sigmoid函数

可训练参数:84*(120+1)=10164

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值