CNN-LENET参数计算

news/2024/6/18 21:11:20 标签: 深度学习, tensorflow, 神经网络

cnn之LeNet5模型参数浅谈

鄙人最近一直在学习cnn,对于cnn基本流程,工作原理和简单的模型代码都比较熟练了,但是对于经典的cnn模型(如LeNet5,inception3)还是知之甚少。本文就先总结浅谈LeNet,下篇文章再论述Inception-3模型。话不多说,上正文

LeNet-5的背景

只需要记住LeNet模型是第一个应用于数字识别问题的卷积神经网络模型,在Mnist数据集上,正确率可达到99.2%
lenet模型使用tanh和sigmoid来获得非线性输出,一般在池化层之后引入非线性操作。

LeNet-5的结构

总论:Lenet一共有七层(输入层不计算在内),输入为32 * 32 * 1,即为长宽为32,深度为1(rgb = 1时,图片为黑白色),c代表convolution,卷积操作,s代表subsampling,池化操作。数字代表第几层,而不是第几层卷积或者第几层池化。w为权重(注意同一层的权重共享原则),b为偏置,每一层偏置相同。 p代表padding。轮廓填充。s代表stride,移动步长。
LENET lenet moxing

训练参数计算

C1层
输入:32 * 32 * 1
卷积核:5 * 5
卷积核种类:6(map:特征图)
padding=0
stride=1
本层输出:28 * 28((32-5+2p)/s+1 )= 28
下层神经元个数:28* 28* 6
可训练参数:(5* 5+1)* 6 = 156 (6个5*5的内核,每个内核有一个偏置)
连接数:(5 * 5+1)*6 *28 *28 (input 和C1之间的连接个数)

S2层
输入:28 * 28 * 6
卷积核种类:6
p = 0
s = 2(采样方式: 2*2区域的4个值相加,乘以一个可训练参数,再加上一个偏置参数,结果通过Sigmoid非线性化)
输出:14(28/2)
下层神经元个数:14 * 14 * 6
可训练参数:6 * (1+1)(采样的权重+偏置参数)
连接数:6 *(1+1)1414

C3层
输入:14 * 14 * 6
卷积核:5 * 5
卷积核种类:16
p= 0
s = 1
本层输出:1010
下层神经元个数:10
1016
可训练参数:由于S2和C3并不是全链接,因此有两种链接情况 1.c3中的所有map都和S2中的6个map链接2.C3和S2中的部分map链接,表示本层的map是由上层map提取得到的不同组合。Lenet中的组合方式是:C3的前面6个map以S2中相邻的3个map子集作为输入,接下来C3中的6个map以S2中相邻的4个map子集作为输入。然后的3个以不相邻的4个特征图子集为输入。最后一个将S2中所有特征图为输入。
则可训练参数为:6 * (3 * 5 * 5+1)+6 * (4 * 25+1)+3 * ( 4 * 25+1)+(25 * 6+1)=1516
S4层
输入:10 * 10 * 16
采样区域p:2
2
采样方式:4个输入相加,乘以一个可训练参数,再加上一个可训练偏置。结果通过sigmoid
卷积核种类:16
输出:5 * 5(10/2)
下层神经元个数:5 * 5 * 16
可训练参数:(1+1)16
连接数:(2 * 2+1)16 * 5 * 5
S4中每个特征图的大小是C3中特征图大小的1/4
C5层
输入:5
5
16(全连接,因为卷积核与输入尺寸相同)
卷积核:55
卷积种类:120
输出:1 * 1(单位特征图)
下层神经元个数:120
可训练参数:120
(5 * 5+1)* 16
连接数:120*(5*5+1)*16(全连接训练参数即为链接参数)
F6-full connettion层
输入:c5 120维向量

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

可训练参数/连接数 :84*(12011+1)=10164


http://www.niftyadmin.cn/n/1802228.html

相关文章

cnn之inception-v3模型结构与参数浅析

一:背景总论 接上篇,在对LeNet有一定理解之后,我们开始谈谈CNN里面另一个经典的模型--inception-v3笔者在勉强读完原文之后,不得不佩服原作者对cnn研究之深入,其对cnn整体架构,参数的调优,训练的…

经典卷积神经网络

总论 在计算机的cv领域,我们需要掌握的就是常见的经典卷积神经网络的cnn架构,这些架构在nLp ,图像分类,分割,目标检测等领域都举有重要作用。本文只对模型原理和架构进行简单的了解,过程及证明可参考该 从2012年的Ale…

CNN模型之MobileNet

引言 MobileNet–2017年谷歌提出的专注于移动端和嵌入式设备的轻量级cnn架构。 随着人工智能的发展,cnn架构已经在计算机视觉领域取得了长足的进步。例如在每年的imagenet分类问题上,可以看到为了追求更高的精准度,研究者们提出的模型越来越…

深度解析ResNet及其变体

一:前言(问题由来) 在讲resnet之前我们需要知道resnet的由来,以及到底在解决什么问题,然后才是如何解决问题,最终才是工业化实现。本篇文章需要一定的resnet基础,新手可以多看看基础再来。 1&a…

mysql 优化--从原理到实操

前言: 由于公司最近重构网站,将原先的.net框架全部推翻,采用springbootmysqlredises等系列框架进行重构。在重构构成中,出现了一个问题,就是数据库sql数据查询非常迅速,但当数据进入springboot 框架&#x…

LSTM的前向和反向传播

一:LSTM结构 复杂版: 简单版: (一)结构剖析 lstm结构:三个门的特殊结构。lstm靠一些门的结构,让信息有选择性的影响循环神经网络中每个 时刻的状态。所谓的门的结构,就是一个使用…

双向循环神经网络原理

一:背景 在经典的循环神经网络中,状态的传输,是从前往后的,但是在有些任务中,某些时刻的输出不仅和 之前状态有关,也与之后的状态有关。这就需要双向循环神经网络(Bidirectional rnn&#xff0…

RNN中的门控循环结构---lSTM和GRU

一:门控循环神经网络简介 门控循环神经网络是在经典RNN基础之上调整而出的网络结构,通过加入门控机制(非线性激活函数,通常是sigmoid), 用来控制神经网络中的信息传递。门控机制可以用来控制记忆单元中哪些…