【重点】了解卷积神经网络
摘要:卷积神经网络通过卷积层提取图像特征,池化层下采样以减少计算量和过拟合风险。特征图的输出尺寸由卷积核、步幅和填充等参数决定。
1 卷积神经网络的计算方式
- 卷积层:输入图像通过卷积层,生成若干个特征图。
- 池化层:特征图经过池化层,缩小尺寸,保留重要特征。
- 展平层:将池化后的特征图展平成一个向量,输入到全连接层中。
- 输出层:输出层给出分类或回归的预测结果。
2 卷积层计算
- 输入
- 多维数组。
- 当处理彩色图像时,形状为三维张量
[高度, 宽度, 通道数]
, 其中通道数为3(对应 RGB 三个颜色通道)。
- 输出
- 若干个特征图。
- 计算
- 卷积运算:卷积层中有多个卷积核,每个卷积核在输入图像上滑动,对应位置的像素与卷积核的权重逐元素相乘并求和,得到一个输出值。
- 偏置和激活函数:对于每个卷积输出值,对齐加上偏置并应用一个激活函数,得到最终的输出值。
- 卷积核
3 池化层计算
- 输入
- 来自卷积层的特征图,形状为三维张量
[高度, 宽度, 通道数]
。
- 来自卷积层的特征图,形状为三维张量
- 输出
- 下采样后的特征图。
- 计算
- 池化核在输入特征图上滑动,执行最大池化或平均池化,得到一个输出值。
- 池化核
4 输出特征图尺寸计算
- 总述
- 卷积层和池化层的计算公式大致相同,分为 valid 和 same 两种模式。
- 卷积除不尽的结果都向下取整:卷积核的参数是共享的,卷积核完全覆盖区域才能执行有效的计算。
- 池化除不尽的结果都向上取整:池化核上没有参数,而且池化的目的是下采样的同时尽可能保留重要信息。
- valid
- 高度 = (输入高度-核尺寸) / 步幅 + 1
- 宽度 = (输入宽度-核尺寸) / 步幅 + 1
- 深度 = 核数量
- same:利用填充使输入输出特征图形状相同
- 高度 = (输入高度-核尺寸+填充*2) / 步幅 + 1
- 宽度 = (输入宽度-核尺寸+填充*2) / 步幅 + 1
- 深度 = 核数量
版权声明:
作者:Zhang, Hongxing
链接:http://zhx.info/archives/129
来源:张鸿兴的学习历程
文章版权归作者所有,未经允许请勿转载。
THE END
二维码