卷积神经网络—全连接层

  1. 全连接层
  2. 全连接层与卷积层
  3. 全连接层与GAP(全局平均池化层)

[1] https://blog.csdn.net/Touch_Dream/article/details/79775786
[2] https://www.cnblogs.com/zongfa/p/9048680.html
[3] https://www.zhihu.com/question/41037974

全连接层

全连接层一般会把卷积输出的二维特征图转化为一维的一个向量,全连接层的每一个节点都与上一层的每个节点连接,是把前一层的输出特征都综合起来,所以该层的权值参数是最多的。

作用
全连接网络的作用就是将最后一层卷积得到的feature map stretch成向量,对这个向量做乘法,最终降低其维度,然后输入到softmax层中得到对应的每个类别的得分。

实现
以下图为例:

最后的两列小圆球就是两个全连接层
在经过若干卷积核池化之后,会输出20个12x12的矩阵,这代表用了20个神经元,每个神经元都对这张图进行了一次次卷积,并且每个神经元最后输出的12x12的矩阵都代表了这个神经元对该图片的一个特征的理解
接下来到了全连接层,输出一个1x100的矩阵,其实就是有100个20x12x12的卷积核卷积出来的,对于输入的每一张图,用了一个和图像一样大小尺寸的核卷积,这样整幅图就变成了一个数,因为厚度是20,所以对20个核卷积完了之后再相加求和得到一个数,一共是100个卷积核,所以得到100个数。每个数代表一个高度提纯的特征
最后在经过一个分类器(也是一个全连接层)对这些特征再进行一次计算(降维),将其中的某几个特征进行组合,得到属于各个类别的概率。

缺点
参数量过大,特别是与最有一个卷积层(池化层)相连的全连接层,如图就需要 100 * 20 * 12 * 12个参数。参数量过大会导致训练速度降低,容易过拟合。

全连接层与卷积层

全连接层实际上就是卷积核大小为上层特征大小的卷积运算,卷积的结果为一个节点,就对应全连接层的一个点。
从上面的分析已经看可以看出:
最后一层的卷积层(池化层)的输出为20x12x12,连接此层的卷积层为1x1x100
将全连接层转为卷积层就是:

  1. 共有100组滤波器
  2. 每组滤波器含有20个卷积核
  3. 每个卷积核大小为12x12
  4. 则输出为1x1x100

全连接层与GAP(全局平均池化层)

全连接层的作用就是将卷积层展开成向量之后对每个feature map进行分类,GAP就是将上述的两个过程合二为一。如下图所示。

主要思想
用 feature map 直接表示属于某个类的 confidence map,比如有10个类,就在最后输出10个 feature map,每个feature map中的值加起来求平均值,这十个数字就是对应的概率或者叫置信度。然后把得到的这些平均值直接作为属于某个类别的 confidence value,再输入softmax中进行分类。

优点

  1. 减少参数量
  2. 对整个网络从结构上做正则化防止过拟合
  3. 可以实现任意图像大小的输入

缺点
造成收敛速度减慢

卷积神经网络—全连接层相关推荐

  1. 卷积神经网络 全连接层(稠密层)是什么?(全连接层就是每一个结点都与上一层的所有结点相连的网络层)

    对 n-1 层和 n 层而言,n-1 层的任意一个节点,都和第 n 层所有节点有连接(即第n层节点都和第n-1层节点相连接).即第n层的每个节点在进行计算的时候,激活函数的输入是n-1层所有节点的加权 ...

  2. 卷积神经网络--全连接层

    在卷积神经网络尚未火热的年代,人们使用haar/lbp + adaboost级连的组合方式检测人脸,hog+svm的组合方式检测行人.这种传统的目标检测方法一个认知上的优势就是: 模块的功能明确,划分 ...

  3. 卷积神经网络全连接层转换为卷积层获得heatmap

    理论部分 转自 http://blog.csdn.net/u010668083/article/details/46650877 实验部分 全连接层换卷积层的出处大约是yahoo的一篇论文" ...

  4. 全连接层 时间复杂度_神经网络全连接层(3)

    CNN网络基础结构 神经网络-全连接层(3) 上一回我们聊完了算法,这回我们正式开始写代码.上回在做公式推导的时候,我们实际上只是针对一个数据样本进行推导,而实际中,计算和训练都是一批一批完成的.大多 ...

  5. 神经网络-全连接层(1)

    写在前面:感谢@夏龙对本文的审阅并提出了宝贵的意见. 接下来聊一聊现在大热的神经网络.最近这几年深度学习发展十分迅速,感觉已经占据了整个机器学习的"半壁江山".各大会议也是被深度学 ...

  6. 卷积神经网络CNN-全连接层

    全连接层(Fully Connected layer,FC) 全连接层在整个卷积神经网络中起到了分类器的作用.如果说卷积层.池化层和激活函数等操作是将原始数据映射到隐层特征空间的话,全连接层则是起到了 ...

  7. 神经网络全连接层详解

    全连接层即:每一个节点都与上一层的节点相连,每个节点都视为一个特征点,当产生一个输入源后会对全连接层做卷积操作,卷积核多大取决于你的全连接层每层数据表有多大,全连接层里每一层都是一组数据,这组数据里包 ...

  8. 神经网络的全连接层_深度神经网络全连接层

    一.概念 全连接层一般在网络的最后部分做分类输出,全连接层的有m个输入和n个输出,每一个输出都和所有的输入相连,相连的权重w都是不一样的,同时每一个输出还有一个bias. 二.前向全连接 假设输入是4 ...

  9. 机器学习入门(15)— 全连接层与卷积层的区别、卷积神经网络结构、卷积运算、填充、卷积步幅、三维数据卷积、多维卷积核运算以及批处理

    卷积神经网络(Convolutional Neural Network,CNN)CNN 被用于图像识别.语音识别等各种场合,在图像识别的比赛中,基于深度学习的方法几乎都以 CNN 为基础. 1. 全连 ...

最新文章

  1. oracle rac 磁盘重建,Oracle RAC环境下重建ASM磁盘组 Re-create ASM diskgroup with Oracle RAC...
  2. 构建高性能J2EE应用的五种核心策略
  3. cms系统与dreamweaver建站
  4. 树莓派AI视觉云台——2、树莓派系统镜像的下载和烧写
  5. InstallShield 2012 Spring评估试用(1): 支持Windows 8和Windows Server 2012操作系统
  6. python窗口显示表格_pyqt 调用tablewidget窗口时无法显示窗口内容
  7. deepin下Clion连接mysql_CLion如何添加依赖库 ? 需要把mysql/Connector c++放入 用cpp连接数据库...
  8. Qt使用qss文件管理stylesheet
  9. java线上调试小结
  10. 关闭笔记本显示器指定组合键才能打开_八大品牌笔记本Fn组合键大全
  11. 如何把不同尺寸ico格式图标_iConvert Icons——图标创建转换工具
  12. 新概念51单片机c语言教程doc,新概念51单片机C语言教程实例代码.doc
  13. IE缓存文件提取器 视频,音频,图片一网打尽
  14. 如何使用速问速答求解一元二次方程
  15. 非IE内核浏览器如何支持activex插件
  16. 计算机光驱故障分析,光驱故障示例解决
  17. php智能文章相关性匹配,PHP中的Pearson相关性
  18. BestSync多终端文件资料同步利器
  19. worldmap matlab,[转载]转:matlab画地图的工具:worldmap和m_map
  20. 自动生成带昵称的头像(仿照钉钉头像)

热门文章

  1. js截取数组slice() 和 splice() 的用法
  2. 【Java】虚拟机JVM
  3. 解决一个JAVA小问题
  4. perlembed - 在 C 程序中嵌入 perl
  5. Android ListView优化之局部刷新(更新)(非notifyDataSetChanged)
  6. 当程序崩溃的时候怎么办 part-1 Iven 本文由 大侠自来也
  7. PHP定时任务 - PHP自动定时循环执行任务实例代码
  8. 3.1递归实现逆序输出整数
  9. Gram矩阵与卷积网络中的卷积的直观理解
  10. 无线电视服务器主机名,电视服务器主机名怎么填