卷积神经网络的深入剖析
1. 输入层
输入层的输入为图像,通常以四维张量的形式批量输入。其中,第一维代表图像索引,第二、三维分别对应图像的高度和宽度,第四维对应不同的通道。对于彩色图像,一般有红(R)、绿(G)、蓝(B)三个通道;而灰度图像只有一个通道。批量中的图像数量由小批量随机梯度下降所选的小批量大小决定,随机梯度下降的批量大小为 1。输入通过小批量的方式被送入输入层。
2. 卷积层
卷积是任何卷积神经网络(CNN)的核心。TensorFlow 支持 2D 和 3D 卷积,但 2D 卷积更为常见,因为 3D 卷积在计算上对内存要求较高。输入图像或作为输出特征图形式的中间图像会与指定大小的 2D 滤波器进行 2D 卷积。2D 卷积沿空间维度进行,而图像体积的深度通道不进行卷积。对于每个深度通道,会生成相同数量的特征图,然后在通过 ReLU 激活函数之前,沿深度维度将它们相加。这些滤波器有助于检测图像中的特征,网络中的卷积层越深,它学习到的特征就越复杂。例如,初始卷积层可能学习检测图像中的边缘,而第二个卷积层可能学习连接边缘以形成圆形和矩形等几何形状。更深的卷积层可能学习检测更复杂的特征,如在猫与狗的分类中,它可能学习检测动物的眼睛、鼻子或其他身体部位。
在 CNN 中,仅指定滤波器的大小,权重在训练开始前被初始化为任意值。滤波器的权重通过 CNN 训练过程学习,因此它们可能不代表传统的图像处理滤波器,如 Sobel、高斯、均值、中值或其他类型的滤波器。相反,学习到的滤波器会使定义的总体损失函数最小化,或基于验证实现良好的泛化。尽管它可能无法学习传统的边缘检测滤波器,但由于边缘是图像的良好特征检测器,它会学习几种以某种形式检测边缘的滤波器。
<
超级会员免费看
订阅专栏 解锁全文
11万+

被折叠的 条评论
为什么被折叠?



