卷积神经网络中的 “全连接层”

2023-11-11

一、什么是“全连接层”

对 n-1 层和 n 层而言,n-1 层的任意一个节点,都和第 n 层所有节点有连接(即第n层节点都和第n-1层节点相连接)。即第n层的每个节点在进行计算的时候,激活函数的输入是n-1层所有节点的加权。像下面的中间层就是全连接方式
在这里插入图片描述

二、详解

在这里插入图片描述
以上图为例,我们仔细看上图全连接层的结构,全连接层中的每一层是由许多神经元组成的(1x 4096)的平铺结构,上图不明显,我们看下图
在这里插入图片描述
当我第一次看到这个全连接层,我的第一个问题是:
它是怎么样把3x3x5的输出,转换成1x4096的形式
在这里插入图片描述
很简单,可以理解为在中间做了一个卷积
在这里插入图片描述
从上图我们可以看出,我们用一个 3x3x5 的 filter 去卷积激活函数的输出,得到的结果就是一个fully connected layer 的一个神经元的输出,这个输出就是一个值
因为我们有4096个神经元
我们实际就是用一个3x3x5x4096的卷积层去卷积激活函数的输出

以VGG-16再举个例子
再VGG-16全连接层中
对224x224x3的输入,最后一层卷积可得输出为7x7x512,如后层是一层含4096个神经元的FC,则可用卷积核为7x7x512x4096的全局卷积来实现这一全连接运算过程。

卷积一个非常重要的作用:就是把分布式特征representation映射到样本标记空间

就是它把特征representation整合到一起,输出为一个值

这样做,有一个什么好处?
就是大大减少特征位置对分类带来的影响
来,让我来举个简单的例子
在这里插入图片描述
从上图我们可以看出,猫在不同的位置,输出的feature值相同,但是位置不同

对于电脑来说,特征值相同,但是特征值位置不同,那分类结果也可能不一样

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

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

实际就是把 feature map 整合成一个值

这个值大,哦,有喵,这个值小,那就可能没喵,和这个喵在哪关系不大了有没有
因为空间结构特性被忽略了,所以全连接层不适合用于在方位上找Pattern的任务,比如segmentation
ok, 我们突然发现全连接层有两层1x4096fully connected layer平铺结构(有些网络结构有一层的,或者二层以上的)

好吧也不是突然发现,我只是想增加一点戏剧效果
在这里插入图片描述
但是大部分是两层以上呢

这是为啥子呢

泰勒公式都知道吧:意思就是用多项式函数去拟合光滑函数

我们这里的全连接层中一层的一个神经元就可以看成一个多项式

我们用许多神经元去拟合数据分布

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

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

说了这么多,我猜你应该懂的

听不懂?

那我换个方式给你讲

我们都知道,全连接层之前的作用是提取特征

全理解层的作用是分类

我们现在的任务是去区别一图片是不是猫
在这里插入图片描述
在这里插入图片描述
因为全连接层的作用主要就是实现分类(Classification)
在这里插入图片描述
红色的神经元表示这个特征被找到了(激活了)

同一层的其他神经元,要么猫的特征不明显,要么没找到

当我们把这些找到的特征组合在一起,发现最符合要求的是猫

ok,我认为这是猫了

那我们现在往前走一层

那们现在要对子特征分类,也就是对猫头,猫尾巴,猫腿等进行分类

比如我们现在要把猫头找出来
在这里插入图片描述
猫头有这么些个特征

于是我们下一步的任务

就是把猫头的这么些子特征找到,比如眼睛啊,耳朵啊
在这里插入图片描述
道理和区别猫一样

当我们找到这些特征,神经元就被激活了(上图红色圆圈)

这细节特征又是怎么来的?

就是从前面的卷积层,下采样层来的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

卷积神经网络中的 “全连接层” 的相关文章

  • vue-amap生成地图遮罩层、点标记和弹窗

  • vmware 安装window server 2012 完只有命令窗口

    原因是 解决办法 输入 Dism online enable feature all featurename Server Gui Mgmt featurename Server Gui Shell featurename ServerCo
  • signature=27dcc93dc9d59db77c2d43c8888c8f5d,ftv-20201027

    0001659166 20 000184 txt 20201027 0001659166 20 000184 hdr sgml 20201027 20201027162536 ACCESSION NUMBER 0001659166 20 0
  • TypeError: Argument ‘bb’ has incorrect type (expected numpy.ndarray, got list)

    问题说明 这个问题是在mmdetect中使用使用自己做的coco数据集用maskrcnn做目标检测时遇到的 主要原因是你的json文件里面的segmentation中的数据不符合要求 正常来说这里面是类似于 x y x y x y x y
  • C++中placement new操作符(经典)

    C 中placement new操作符 经典 placement new是重载operator new的一个标准 全局的版本 它不能被自定义的版本代替 不像普通的operator new和operator delete能够被替换成用户自定义
  • static和final、抽象类使用详解

    这里写目录标题 static 静态导入包 final 抽象类 abstract 接口interface 这里是引用 static 放在方法上就是静态方法 放在属性上的就是静态属性 可以通过类名直接调用属性 用在方法上 同理 另外我们可以在非
  • 使用jQuery实现返回顶部功能

  • JS 树(数组存储)进行递归遍历获取路径

    JS 树 数组存储 进行递归遍历获取路径 实现功能 通过叶子节点 id 寻找包含该叶子节点的整条路径 树的数据以数组形式保存 直接上代码 const getPathByKey curKey data gt let result 记录路径结果
  • python 使用sphinx 快速生成说明文档

    目录 python 使用sphinx 快速生成说明文档 1 安装sphinx 2 文件结构 3 修改配置文件 4 生成html文档 生成markdown文档 1 安装依赖 2 修改配置文件 3 生成markdown文档 python 使用s
  • 矩阵论—凯莱-哈密顿定理

    凯莱 哈密顿定理内容 凯莱 哈密顿定理典型例题 典型例题 我们先来观察这个题目 题目要求 若直接将矩阵A 代入计算 则会非常复杂 因此 这条路是走不通的 我们试着引入我们今天介绍的凯莱 哈密顿定理来解这个题目 令 我们要求 即求即可 接下来
  • C++ 友元

    友元一般存在于不同类之间 在一个类中 可以用全局函数作友元函数 而在不同类中 类成员函数作友元函数 友元可以是一个函数 该函数被称为友元函数 函数既可以是全局也可以是类的成员 友元也可以是一个类 该类被称为友元类 同类对象间无私处 异类对象
  • C语言实现惯导系统的间接粗对准

    C语言实现惯导系统的间接粗对准 惯导系统是一种常见的导航系统 用于测量和跟踪飞行器的位置 速度和方向 其中的粗对准是指通过传感器测量的数据进行校准 以提高系统的准确性和稳定性 本文将介绍如何使用C语言实现惯导系统的间接粗对准算法 并提供相应
  • json文件解析出现异常

    今天在尝试用自带的NSJSONSerialization方法来解析本地json文件的时候碰到了系统异常 app自动终止 问题如下 代码
  • [机器学习与scikit-learn-32]:算法-回归-普通线性模型拟合非线性分布数据-分箱

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 123562666 目录 前言 第1章
  • 求兔子繁殖后的数量?

    有一对兔子 从出生后第3个月起每个月都生一对兔子 小兔子长到第三个月后每个月又生一对兔子 假如兔子都不死 问每 个月的兔子总数为多少 程序分析 兔子的规律为数列1 1 2 3 5 8 13 21 include
  • 暑期作息时间表模板_人民日报给孩子的暑假作息时间表,太详细!太及时了!(可打印)...

    希望每天都收到我们的文章吗 点上面蓝色文 语文日刊 关注就可以了 2019年8月高考优秀作文专辑8月出炉 买买买 高考第一品牌语文月刊代码46 88每月一本定价12元 其中每年8月高考优秀作文点评专辑 9月高考试题分析专辑 12月最新高考分
  • vue配置vue.config.js

    现在的 vue config js const defineConfig require vue cli service module exports defineConfig transpileDependencies true 关闭es
  • Visual Studio 2019 从依赖包开始手动编译opencv

    windows opencv compile document 本文主要是教你如何从源码编译软件包 建议你通过vcpkg安装完整版本的OpenCV4 含gpu功能 来安装使用 1 依赖项目编译安装 在开始之前必须先安装vcpkg 1 1 准
  • [C/C++]基础 %md,%0md是什么意思

    1 d就是普通的整型输出 2 2d是将数字按宽度为2 采用右对齐方式输出 若数据位数不到2位 则左边补空格 3 02d和 2d差不多 只不过是左边补0 修饰符 格式说明 意义 1 m md 以宽度为m输出整型数 输出不足m位时 左补空格 2

随机推荐

  • 首发

    译者 Linstancy 责编 Jane 出品 AI科技大本营 公众号id rgznai100 回顾 CVPR 2018 旷视科技有 8 篇论文被收录 如高效的移动端卷积神经网络 ShuffleNet 语义分割的判别特征网络 DFN 优化解
  • 我的世界java版如何看坐标_我的世界中怎么查看坐标,坐标系统详解

    本篇教程将通过图文的形式一步步教你在我的世界中查看理解坐标系统 XYZ 坐标系统解释 我的世界地图有XYZ3个坐标 通过XYZ来显示你所处地图的区域 下面是每个坐标的详解 X 显示你在地图上的 东 西 位置 正数表示东 负数表示西 Y 显示
  • 什么是域名? 什么是DNS?

    域名 关于域名 百度百科是这样介绍的 百度百科 https baike baidu com item E5 9F 9F E5 90 8D 86062 域名 英语 Domain Name 又称网域 是由一串用点分隔的名字组成的Internet
  • 深入理解数据结构—简单链表

    一 简单链表结构 include
  • python异步requests_Python asyncio requests 异步爬虫

    python asyncio requests async await crawler 一 情景 抓取大量URL 每个URL内信息量较少 任务清单 发送URL请求N次 接受并处理URL响应N次 二 分析 如果每个页面依次抓取的话 任务流程
  • Unity脚本设置Animator单个状态的speed

    Unity脚本设置Animator单个状态的speed 直接上代码 private Animator anim private AnimatorController animController private void Awake ani
  • KMP算法详解

    什么是KMP算法 有句话可以这么形容KMP 一个人能走的多远不在于他在顺境时能走的多快 而在于 他在逆境时多久能找到曾经的自己 KMP算法是一个字符串匹配算法 取得是三个发明人的名字首字母 KMP算法的作用 是在一个已知字符串中查找子串的位
  • ide sonar代码审查问题总结

    格式 问题名字 问题出现的次数 Resources should be closed2 资源未关闭 打开发现有两处用到的IO流没有关闭 Conditions should not unconditionally evaluate to TR
  • php mail函数详解,php中mail()函数用法和SMTP工作原理详解

    一个发送E MAIL的脚本也许是你能够在Web 站点上找到的最普通的脚本之一了 虽然它很简单 一个邮件脚本有时会令程序员非常沮丧 PHP中有一个叫做mail 的函数 它只需要知道接收方的地址 和信件主体就可以发送邮件 但是要让mail 按你
  • 【SQLServer】查询SQLServer执行过的SQL记录

    直接贴代码 SELECT TOP 1000 创建时间 QS creation time 查询语句 SUBSTRING ST text QS statement start offset 2 1 CASE QS statement end o
  • Error in mounted hook: “TypeError: Cannot read properties of undefined (reading ‘split‘)“

    我在用vue写页面的时候 其中附件功能是写成组件模式的 然后在调用后 把数据渲染上去的时候 就会报错 具体错误如下图所示 到后面虽然数据确实是渲染出来了 但是控制台会报Error in mounted hook TypeError Cann
  • 100天精通Python(爬虫篇)——第43天:爬虫入门知识大总结

    文章目录 一 爬虫概述 1 为什么要学习爬虫 2 爬虫与Python 3 爬虫合法吗 4 爬虫的矛与盾 5 爬虫原理图 and 流程图 二 相关技术介绍 1 HTML 与 CSS 2 URL网址解释 3 HTTP 与 HTT S 1 常见请
  • Knights of the Round Table【点双连通分量与二分图】

    题目链接 POJ 2942 题意 亚瑟王要给骑士们开会啦 有N个骑士 其中有M对骑士相互之间会吵架 亚瑟王不允许相互吵架的骑士坐在一起 但是他们可以一同坐在餐桌上 只要隔开就可以了 还有就是 出席会议的骑士数必须是奇数 这是为了让投票表决议
  • 海伯利安:开放地图生态的未来与机遇

    本文选自海伯利安CTO邹光先大会演讲 全文如下 前两天有朋友问了我一个问题 他说谷歌地图在全世界覆盖那么广 用户量也非常大 用户体验也很好 在地图这个赛道上 海伯利安的创新和机会在哪里 这是个好问题 值得反复思考 深入思考 结合我们对地图行
  • Maven的配置、安装及测试可用

    1 配置环境变量的话 配置用户变量和系统变量也没差 反正电脑都是一个人使用 先配置M2 HOME 配置MAVEN HOME也可以 我放置Maven的路径是D Program Files x86 apache maven 3 2 2 具体要看
  • 程序的几种结构

    目录 顺序结构 选择结构 循环结构 break和continue的区别 顺序结构 选择结构 表达式 单选结构 if boolean表达式 执行语句 表达式为true执行相应的语句 否则不执行 双选结构 if boolean表达式 执行语句1
  • 小程序语音识别用户体验优化

    文章由来 这里通过简单的对话形式来描述接下来要讲的bug 相关界面在文章中都有展示 可以结合相关图片更好的理解问题 测试小伙伴 界面一直停留在 语音识别中 我 都到识别这一步了 应该是测试环境下后台不稳定吧 你再多试几次 测试小伙伴 我去问
  • 爬虫的操作

    目录 爬虫基本 re etree beautifulsoup 保存本地 连接数据库 基本 re lxml etree beautifulsoup 保存到本地 传入数据库 大致分为 爬虫基本 re etree beautifulsoup 保存
  • 分布式思维

    说在前面的话 Java编程里有两座大山 高可用 高并发 而分布式无疑是翻越这两座大山最好的方式 本篇文章讲的是分布式思维 目的是为了帮助大家在学习分布式之前对某些分布式领域里的一些概念做了解 在脑海里对分布式有个整体的认识 不会针对某一项技
  • 卷积神经网络中的 “全连接层”

    文章目录 一 什么是 全连接层 二 详解 一 什么是 全连接层 对 n 1 层和 n 层而言 n 1 层的任意一个节点 都和第 n 层所有节点有连接 即第n层节点都和第n 1层节点相连接 即第n层的每个节点在进行计算的时候 激活函数的输入是