LeNet - 5神经网络是什么?如何理解?

LeNet - 5神经网络是什么?如何理解?

前言

LeNet - 5是一种可以基于TensorFlow搭建的神经网络。什么是LeNet-5?简单的进行解释:LeNet是一种典型的卷积神经网络的结构。而LeNet-5是在这种典型的结构下的一种七层(不包括输入层)的结构。其结构大致如下:

在这里插入图片描述

逐层解释:

下面对这八层(包括运算层)结构进行解读:

INPUT层:

这里是该神经网络的输入层。且图像的尺寸统一为32 x 32

C1层:

该层是一个卷积层,且使用6个卷积核大小为5 x 5的卷积进行卷积运算。从INPUT层输入的图片的尺寸为32 x 32,输出的6个Feature Map的尺寸大小均为28 x 28。

到这里可能又有读者开始懵了,这个输出的大小怎么计算?

​ 卷积中的特征图大小计算方式有两种,分别是‘VALID’和‘SAME’,卷积和池化都适用,当尺寸不被整除时,卷积向下取整,池化向上取整。

1.如果计算方式采用’VALID’,则:

img

​ 其中img为输出特征图的大小,img为输入特征图的大小,F为卷积核大小,stride为卷积步长。

2.如果计算方式采用’SAME’,输出特征图的大小与输入特征图的大小保持不变,

img

​ 其中padding为特征图填充的圈数。

带入1的公式即可得w(out) = (32 - 5)/(1) + 1 = 28

S2层:

该层是一个池化层(pooling,也称为下采样层)。这里采用max_pool(最大池化),池化的size定为2*2。经过池化后得到6个14 x 14的特征图,作为下一层的输入。

计算结果如此:w = (28 - 5 + 2*1)/2 + 1 = 13.5 池化向上取整得到14。

C3层:

该层仍然为卷积层。输入由池化层输入的图片尺寸14 x 14.通过由16个5 x 5的卷积核组成的卷积层进行卷积运算,输出16个10 x 10的特征图。运算过程为:w = (14 - 5)/1 + 1 = 10

S4层:

该层为一个池化层,输入上次输出的16个10 x 10的特征图,通过2 x 2的采样区进行采样。输出16个5 x 5的特征图。w = 10/5.

C5层:

继续使用5 x 5的卷积核进行卷积,但是卷积核的数量增加至120,这样C5层的输出就为:5-5+1=1的120个1 x 1的特征图,这样就实现了与S4的全连接。但仍将其标为卷积层,原因是如果LeNet-5的输入图片尺寸变大,其他保持不变,那该层特征图的维数也会大于1 x 1。

F6层:

通过全连接运算,输入120个1 x 1的特征图后输出84个1 x 1的特征图。

OUTPUT层:

OUTPUT层也是全连接层,输出长度为10的张量,代表所抽取的特征属于哪个类别。(例如手写体数字识别)

LeNet5 特征能够总结为如下几点:

  • 卷积神经网络使用 3 个层作为一个序列:卷积、池化、非线性
  • 使用卷积提取空间特征
  • 使用映射到空间均值下采样(subsample)
  • 双曲正切(tanh)或 S 型(sigmoid)形式的非线性
  • 多层神经网络(MLP)作为最后的分类器
  • 层与层之间的稀疏连接矩阵避免大的计算成本

总体来看,这个网络是最近大量架构的起点,并且也给这个领域的许多带来了灵感。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值