全连接层是什么,有什么作用?

大家好啊,我是董董灿。

如果你是搞AI算法的同学,相信你在很多地方都见过全连接层。

无论是处理图片的卷积神经网络(CNN),还是处理文本的自然语言处理(NLP)网络,在网络的结尾做分类的时候,总是会出现一个全连接层。

那么到底什么是全连接层,这一层在神经网络中有什么作用,以及它和矩阵乘法、卷积运算有什么关系呢?

在阅读之前,建议先了解一个预备知识。

卷积也好,矩阵乘法也好,其目的都是为了完成神经网络中的特征融合,这是其本质。

神经网络的运算,也是为了更好的完成输入数据的特征提取和融合,从而识别一张图片、一个句子。

就好像我们记住一个人一样,记住的不是他的全部,而是他的特征。

1、什么是全连接层

全连接层(Fully Connected Layer),有时也被叫作密集层(Dense Layer)。

之所以这么叫,是因为这一层的每个神经元都与前一层的每个神经元连接在一起,形成了一个全连接的网络结构,如下所示,每个笑脸都与前一层的所有笑脸相连。

这种全连接的方式与卷积池化不同,卷积和池化是通过固定大小的卷积核或池化窗口在输入上移动,以便有效地捕捉局部特征。

因此,"全连接"强调了这一层中的神经元与前一层中的所有神经元之间的连接,与卷积和池化层的局部连接方式形成对比。

2、全连接有什么作用

既然是所有神经元的全部连接,说明它可以捕获到前面所有的特征,经过运算就可以更加有效、完备的融合所有特征。

使得神经网络最终看到的特征是个全局特征(一只猫),而不是局部特征(眼睛或者鼻子)。

有一个蚂蚁开会的比喻来比喻全连接层,比较形象。

假设你是一只蚂蚁,你的任务是找小面包。这时候你的视野比较窄,只能看到很小一片区域,也就只能看到一个大面包的部分。

当你找到一片面包之后,你根本不知道你找到的是不是全部的面包,所以你们所有的蚂蚁开了个会,互相把自己找到的面包的信息分享出来,通过开会分享,最终你们确认,哦,你们找到了一个大面包。

上面说的蚂蚁开会的过程,就是全连接,这也是为什么,全连接需要把所有的节点都连接起来,尽可能的完成所有节点的信息共享。

说到这,大概就能理解全连接的作用了吧,那就是可以完成全部特征的融合。

3、全连接和卷积以及矩阵乘的关系

单纯从数学运算上来看,全连接就是矩阵运算,关于矩阵运算的本质,这里说的更清晰一些:5分钟搞懂矩阵乘法的本质

全连接和卷积的区别,除了上面说的前者是全局视野,卷积是局部视野之外,还有一个很重要的联系,那就是如果卷积的卷积核变为1x1,那么相当于卷积核的每一个像素都与输入图片的每一个像素相关联,此时1x1的卷积,也就变成了矩阵乘了。

全连接一般放在一个神经网络的最后,用来做分类。

假设神经网络前面很多层学到了1000个特征,那么最后一层全连接就可以把这1000个特征进行全部融合,融合之后就可以知道这张图片是一只狗,或者这个句子说的是"我爱学习"了。

相关推荐
EQUINOX120 分钟前
3b1b线性代数基础
人工智能·线性代数·机器学习
Kacey Huang41 分钟前
YOLOv1、YOLOv2、YOLOv3目标检测算法原理与实战第十三天|YOLOv3实战、安装Typora
人工智能·算法·yolo·目标检测·计算机视觉
加德霍克42 分钟前
【机器学习】使用scikit-learn中的KNN包实现对鸢尾花数据集或者自定义数据集的的预测
人工智能·python·学习·机器学习·作业
漂亮_大男孩42 分钟前
深度学习|表示学习|卷积神经网络|局部链接是什么?|06
深度学习·学习·cnn
Light Gao1 小时前
AI赋能未来:Agent能力与AI中间件平台对行业的深远影响
人工智能·ai·中间件·大模型
骇客野人1 小时前
【人工智能】循环神经网络学习
人工智能·rnn·学习
lly_csdn1232 小时前
【Image Captioning】DynRefer
python·深度学习·ai·图像分类·多模态·字幕生成·属性识别
速融云2 小时前
汽车制造行业案例 | 发动机在制造品管理全解析(附解决方案模板)
大数据·人工智能·自动化·汽车·制造
AI明说3 小时前
什么是稀疏 MoE?Doubao-1.5-pro 如何以少胜多?
人工智能·大模型·moe·豆包
XianxinMao3 小时前
重构开源LLM分类:从二分到三分的转变
人工智能·语言模型·开源