卷积神经网络(CNN)
卷积神经网络(CNN)是一类深度神经网络,主要用于处理图像等结构化网格数据。它们由 Yann LeCun、Léon Bottou、Yoshua Bengio 和 Patrick Haffner 于 1989 年发明。CNN 彻底改变了计算机视觉领域,在图像分类、目标检测和图像分割等方面取得了进步。
架构
典型的 CNN 架构包含多个层,包括卷积层、池化层和全连接层。
-
卷积层: 这些层将一组可学习的滤波器(核)应用于输入数据。每个滤波器在输入数据上进行卷积,生成一个特征图,用于检测边缘、纹理和图案等特定特征。这些滤波器的参数在训练过程中学习。
-
池化层: 池化层也称为子采样或下采样层,可减小特征图的空间维度。最常见的类型是最大池化,它选择特征图每个区域的最大值,从而减小其大小和计算需求,同时保留重要特征。
-
全连接层: 在经过几个卷积层和池化层后,输出被展平并馈送到一个或多个全连接层,这些层执行最终的分类或回归任务。这些层类似于传统神经网络中的层,将一个层中的每个神经元连接到下一个层中的每个神经元。
训练
CNN 使用反向传播和梯度下降进行训练。在训练过程中,网络学习最优的滤波器值,以最小化损失函数,通常是预测标签和实际标签之间差异的度量。训练过程通过迭代更新来调整滤波器和全连接层的权重。
应用
CNN 已成为计算机视觉领域许多最先进系统的基石。一些值得注意的应用包括:
-
图像分类: CNN 可以高精度地将图像分类到各种类别。它们已被用于 Google Photos 和 Facebook 的自动标记等系统中。
-
目标检测: CNN 可以检测和定位图像中的目标,这对于自动驾驶和面部识别等任务至关重要。
-
医学图像分析: CNN 通过分析 X 射线、MRI 和 CT 扫描等医学图像来辅助诊断疾病。
-
图像分割: CNN 用于将图像划分为有意义的段,这在场景理解和医学图像分析等应用中非常有用。
总而言之,CNN 在人工智能领域取得了显著进展,尤其是在涉及视觉数据的任务方面,并且仍然是积极研究和开发的一个领域。LeCun 及其同事的开创性工作为这些变革性技术奠定了基础,这些技术此后已成为现代计算机视觉系统的组成部分。