函数原型
tf.keras.layers.Dense(
units,
activation=None,
use_bias=True,
kernel_initializer='glorot_uniform',
bias_initializer='zeros',
kernel_regularizer=None,
bias_regularizer=None,
activity_regularizer=None,
kernel_constraint=None,
bias_constraint=None, **kwargs
)
全连接层作用
全连接层在整个网络卷积神经网络中起到"特征提取器"的作用。如果说卷积层、池化层和激活函数等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的特征表示映射到样本的标记空间的作用。
一段来自知乎的通俗理解:
从卷积网络谈起,卷积网络在形式上有一点点像咱们正在召开的"人民代表大会"。卷积核的个数相当于候选人,图像中不同的特征会激活不同的"候选人"(卷积核)。池化层(仅指最大池化)起着类似于"合票"的作用,不同特征在对不同的"候选人"有着各自的喜好。
全连接相当于是"代表普选"。所有被各个区域选出的代表,对最终结果进行"投票",全连接保证了receiptive field 是整个图像,既图像中各个部分(所谓所有代表),都有对最终结果影响的权利。
全连接层原理
在卷积神经网络的末端,往往有一层或两层全连接层,它一般将卷积输出的二维特征图转换为一维向量。目的是什么?
[En]
At the end of the convolution neural network, there are often one or two layers of full connection layer, which generally converts the two-dimensional feature graph of the convolution output into an one-dimensional vector. What is the purpose?
最后的两列小圆球就是两个全连接层的输出,在最后一层卷积结束后,进行了最后一次池化,得到20个 12*12
的图像,经过全连接层变成了 1*100
的向量,再次经过一次全连接层变成的 1*10
的向量输出。
从第一步是如何到达第三步的呢,其实就是 有 20*100个12*12
的不同卷积核卷积出来的,我们也可以这样想,就是 每个神经元的输出是 12*12*20
个输入值与对应的权值乘积的和。对于输入的 每一张图,用了一个和图像一样大小的核卷积,这样整幅图就变成了一个数了,如果厚度是20就是那20个核卷积完了之后相加求和。这样就能 把一张图高度浓缩成一个数了。
; 代码实例
这里以mnist数字识别中构建的模型为例,完整代码可看这里:【深度学习-卷积神经网络(CNN)实现mnist数字识别】
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.Flatten())
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10))
model.summary()
经过Flatten层后得到一个 1*576
的向量,经过两层的全连接层后得到 1*10
的向量,分别对应数字1~10。
Original: https://blog.csdn.net/qq_38251616/article/details/115632249
Author: K同学啊
Title: 全连接层tf.keras.layers.Dense()介绍Original: https://blog.csdn.net/qq_38251616/article/details/115632249
Author: K同学啊
Title: 全连接层tf.keras.layers.Dense()介绍

AI超清修复出黄家驹眼里的光、LeCun大佬《深度学习》课程生还报告、绝美画作只需一行代码、AI最新论文 | ShowMeAI资讯日报

【TensorFlow】InternalError:Dst tensor is not initialized

python机器学习手写算法系列——DBSCAN聚类
![一文解锁华为云新技能-AIOT开发全流程【设备接入-ESP端侧数据收集[MQTT]-实时数据分析】(步步截图较详细)](https://www.itcode1024.com/wp-content/themes/begin/prune.php?src=https://www.itcode1024.com/wp-content/themes/begin/img/loading.png&w=280&h=210&a=&zc=1)
一文解锁华为云新技能-AIOT开发全流程【设备接入-ESP端侧数据收集[MQTT]-实时数据分析】(步步截图较详细)

深入浅出TensorFlow2函数——tf.data.Dataset.batch

P-tuning v1 v2

模拟二进制数据_模拟信号与数字信号转换

另一个角度看元宇宙与RPA:人工世界、平行员工与RPA

远场多阵列语音识别(Far-filed multi-array speech recognition)

python 图片倾斜校正

深度学习图像识别二次开发日志
![[tensorflow+pycharm]Skipping registering GPU devices...](https://www.itcode1024.com/wp-content/themes/begin/prune.php?src=https://www.itcode1024.com/wp-content/themes/begin/img/loading.png&w=280&h=210&a=&zc=1)
[tensorflow+pycharm]Skipping registering GPU devices…

惯性导航技术发展

对于代码复现学习的一些理解||计算机研究生学习笔记||经验分享||深度学习||pytorch||不定期长期更新
