卷积神经网络(CNN)算法主要分为以下三大类:
1. 卷积层(Convolutional Layers)
基本卷积层:这是CNN的核心,用于提取输入数据中的部特征。 卷积层通过卷积核(也称为滤波器或特征图)在输入数据上滑动,并计算部区域的加权线性组合。 这种作可以捕捉到图像中的边缘、角点、纹理等基本特征。
深度可分离卷积:为了减少计算量和参数数量,深度可分离卷积将标准的卷积作分解为两个独立的步骤:深度卷积(逐通道卷积)和逐点卷积(逐元素卷积)。 这种结构可以在保性能的同时显著减少参数和计算量。
2. 池化层(Pooling Layers)
最大池化:通过取输入数据窗口中的最大值来降低数据的空间维度,减少计算量和参数数量,同时保特征的重要性。 最大池化常用于降低特征的空间分辨率。
平均池化:类似于最大池化,但它是通过取输入数据窗口中的平均值来降低数据的空间维度。
3. 全连接层(Fully Connected Layers)
全连接层:在CNN的末端,通常会有全连接层,它们将卷积层和池化层提取的特征映射到输出类别。 在全连接层中,每个输入元素都与每个输出元素相连接,因此得名。
输出层:全连接层的一个特例是输出层,它将特征映射到具体的类别标签。 在分类任务中,输出层通常是一个softmax层,用于输出每个类别的概率分布。
这三类层共同构成了卷积神经网络的基本结构,使得CNN能够高效地处理和识别图像中的复杂模式。