【深度学习】全连接层

4.5 全连接层

全连接层是一个列向量(单个样本)。通常用于图像分类任务的深度神经网络的后期层。

全连接层是每个节点都连接到前一层的所有节点,用来合成前面提取的特征。由于其全连接的特性,全连接层的参数一般是最多的。

图1

全连接层(fully connected layers,FC)在整个卷积神经网络中起到“分类器”的作用。如果说卷积层、池化层和激活函数等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的“分布式特征表示”。映射到样本标记空间的作用。

全连接层将特征提取得到的高维特征图映射成一维特征向量,该向量包含所有特征信息,可以转化为最终分类到各个类别的概率。

转自:https://blog.csdn.net/qq_39521554/article/details/81385159

举个栗子:

现在全连接层得到一个3x3x5x4096的输出,经过全连接层后,输出一个1x1x4096x1的一维向量

【深度学习】全连接层

那它是怎么样把3x3x5x4096的输出,转换成1x1x4096x1的形式?很简单,可以理解为在中间做了一个卷积。

【深度学习】全连接层

从上图我们可以看出,我们用一个3x3x5的filter 去卷积激活函数的输出,得到的结果就是一个fully connected layer 的一个神经元的输出,这个输出就是一个值。因为我们有4096个神经元。我们实际就是用一个3x3x5x4096的卷积层去卷积激活函数的输出。

再比如:我们想找出图片中是否有猫,可以使用训练好的卷积核对原图进行卷积,根据输出进行判断。

【深度学习】全连接层

从上图我们可以看出,猫在不同的位置,输出的feature值相同,但是位置不同。

对于计算机来说,如果特征值相同,但特征值位置不同,分类结果也可能不同。

这时全连接层filter的作用就相当于

喵在哪我不管,我只要喵,于是我让filter去把这个喵找到,

实际就是把feature map 整合成一个值,这个值大,有喵,这个值小,那就可能没喵

和这只猫在哪里关系不大,鲁棒性大大增强。

因为空间结构特性被忽略了,所以全连接层不适合用于在方位上找Pattern的任务,比如segmentation。

全连接层的一层神经元可以看成是一个多项式(类似于加权平均),我们使用很多神经元来拟合数据分布

但是只用一层fully connected layer 有时候没法解决非线性问题,

而如果有两层或以上fully connected layer就可以很好地解决非线性问题了

转载自:https://zhuanlan.zhihu.com/p/33841176

在实际使用中,全连接层可以通过卷积操作来实现:

  • 对前层是全连接的全连接层可以转化为卷积核为1×1的卷积;
  • 而前层是卷积层的全连接层可以转化为卷积核为 h*w 的全局卷积, h*w 分别为前层卷积结果的高和宽。

全连接的核心操作就是矩阵向量乘积 y = Wx

图1

其中,x1、x2、x3为全连接层的输入,a1、a2、a3为输出,

【深度学习】全连接层

注:本文内容来自书籍和网络,仅供个人学习笔记使用

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2022年3月28日 下午12:52
下一篇 2022年3月28日 下午1:04

相关推荐