卷积神经网络(CNN)
层类型主要功能输出结构变化卷积层提取局部特征,保留空间结构变为多个 feature maps池化层降维,增强平移不变性,减少计算量降低 feature maps 的空间尺寸全连接层整合所有特征并用于最终分类或预测得到最终输出(如10类概率)
一、卷积层(Convolution Layer)
1. 功能和作用
- 提取局部特征(Local Features):图像的每个区域可能都有特征,比如边缘、纹理、角点等。卷积层通过滑动卷积核(Filter),在每个局部区域提取这些特征。
- 参数共享(Parameter Sharing):同一个卷积核在整个输入图像上滑动,因此卷积层大大减少了参数数量。
- 保持空间结构(Preserve Spatial Structure):不像全连接层那样打乱位置关系,卷积层保留了特征在图像中的空间位置信息。
2. 运作过程
卷积操作的数学公式如下:
Y(i,j)=∑m=0M−1∑n=0N−1X(i+m,j+n)⋅K(m,n)Y(i, j) = \sum_{m=0}^{M-1} \sum_{n=0}^{N-1} X(i+m, j+n) \cdot K(m,n)Y(i,j)=m=0∑M−1n=0∑N−1X(i+m,j+n)⋅K(m,n)
其中:
- XXX:输入图像(或上一层的特征图)
- KKK:卷积核(filter/kernel)
- YYY:输出特征图(feature map)
- MMM, NNN:卷积核尺寸
3. 举例
假设输入为 5×55 \times 55×5 图像,使用一个 3×33 \times 33×3 的卷积核,步长为 1,不使用 padding,则输出大小为:
(5−3+1)×(5−3+1)=3×3(5 - 3 + 1) \times (5 - 3 + 1) = 3 \times 3(5−3+1)×(5−3+1)=3×3
二、池化层(Pooling Layer)
1. 功能和作用
- 降采样(Downsampling):减小特征图的尺寸,从而减少计算量。
- 增强鲁棒性(Robustness):对输入中的**小幅度变化(如平移、旋转、缩放)**具有一定不变性。
- 防止过拟合(Overfitting):通过减少参数数量间接实现。
2. 常见类型
- 最大池化(Max Pooling):保留池化区域中最大的值。
- 平均池化(Average Pooling):计算池化区域中所有值的平均值。
3. 举例
假设输入为 4×44 \times 44×4 特征图,使用 2×22 \times 22×2 的最大池化,步长为 2:
输入:
[1324561287439521]\begin{bmatrix} 1 & 3 & 2 & 4 \\ 5 & 6 & 1 & 2 \\ 8 & 7 & 4 & 3 \\ 9 & 5 & 2 & 1 \\ \end{bmatrix}
1589367521424231
输出:
[6494]\begin{bmatrix} 6 & 4 \\ 9 & 4 \\ \end{bmatrix}[6944]
三、全连接层(Fully Connected Layer, FC)
1. 功能和作用
- 整合全局特征(Global Feature Integration):将前面卷积和池化层提取的“局部特征”整合起来,生成最终的分类/回归输出。
- 执行决策任务(Decision Making):通常放在CNN的尾部,类似传统神经网络的隐藏层,用于对分类结果进行计算。
2. 运作过程
每一个输入节点都与输出节点相连接,数学上等价于矩阵乘法加上偏置:
y=W⋅x+by = W \cdot x + by=W⋅x+b
其中:
- xxx:输入特征向量(通常是展平后的特征图)
- WWW:权重矩阵
- bbb:偏置
- yyy:输出向量
3. 举例
假设卷积和池化后得到一个大小为 7×7×647 \times 7 \times 647×7×64 的特征图,展平为一个 313631363136 维向量,然后传给一个 FC 层,如果最终输出是 10 类分类(如 CIFAR-10),则最终的输出维度是:
y=W10×3136⋅x3136+b10y = W_{10 \times 3136} \cdot x_{3136} + b_{10}y=W10×3136⋅x3136+b10
四、总结:三者的作用比较
| 层类型 | 主要功能 | 输出结构变化 |
|---|---|---|
| 卷积层 | 提取局部特征,保留空间结构 | 变为多个 feature maps |
| 池化层 | 降维,增强平移不变性,减少计算量 | 降低 feature maps 的空间尺寸 |
| 全连接层 | 整合所有特征并用于最终分类或预测 | 得到最终输出(如10类概率) |
更多推荐
所有评论(0)