功能地图
了解特征图如何为 Ultralytics YOLO 模型提供支持,从而实现精确的目标检测和高级人工智能应用(如自动驾驶)。
特征图是应用于卷积神经网络 (CNN) 输入层的卷积滤波器(也称为核 )的输出。本质上,它是在图像特定区域检测到的边缘、纹理或复杂形状等学习特征的表示。卷积层中的每个滤波器都旨在检测单一的特定特征。由此产生的特征图可以突出显示输入数据中存在该特定特征的位置,从而为广泛的计算机视觉(CV)任务提供基本的构建模块。
功能地图的工作原理
当一个 CNN 在输入图像或上一层的特征图上应用一个滤波器--一个可学习权重的小矩阵--时,特征图的生成就开始了。滤波器在输入图像上滑动,并在每个位置执行卷积操作。这一滑动操作的输出会产生一个新的二维数组,即特征图。图中的激活值表示每个位置检测到的特征的强度。例如,一个经过训练可以检测垂直边缘的过滤器会在垂直边缘对应位置的特征图中产生较高的激活值。PyTorch和TensorFlow等现代深度学习框架会自动处理这些操作。
分层特征表示
CNN 最强大的功能之一是建立特征层次结构的能力。
- 早期层:网络骨干网初始层中的特征图可以捕捉到简单的基本特征,如边缘、角落和颜色梯度。这些骨干层通常是功能强大的预训练网络,如ResNet。
- 中层:随着数据在网络中的传输,后续层会将这些简单的特征组合成更复杂的模式,如纹理、物体的一部分(如车轮或眼睛)或简单的形状。
- 深层:深层特征图代表高度抽象和复杂的概念,如整个物体。这种分层过程使Ultralytics YOLO等模型能够执行物体检测、图像分割和图像分类等复杂任务。
地物图与相关概念
将地物图与密切相关的术语区分开来很有帮助:
- 特征提取:这是从原始数据中识别和提取有意义模式的过程。特征图是 CNN 图层中特征提取的输出或有形结果。特征提取是一个宽泛的概念,而特征图则是以空间组织方式保存这些学习特征的特定数据结构。
- 嵌入:特征图通常是多维数组,保留了特征出现位置的空间信息。相比之下,嵌入通常是密集的一维向量,在压缩的语义空间中代表整个图像或对象。它们通常是通过对网络的最终特征图进行扁平化处理而创建的,目的是为语义搜索或分类等任务捕捉高层次的含义,而牺牲空间细节以用于矢量数据库。
实际应用
特征图是无数人工智能(AI)和机器学习(ML)应用不可或缺的一部分:
- 自动驾驶:在自动驾驶汽车中,CNN 处理摄像头和传感器数据,为世界导航。不同层生成的特征图有助于识别行人、其他车辆、车道标记和交通标志。早期层检测边缘和纹理,深层则结合这些特征来识别复杂物体。这对安全导航至关重要,Waymo等公司的自动驾驶汽车在很大程度上依赖于此类人工智能技术。
- 医学图像分析:CNN 分析医学扫描图像(X 光、CT、核磁共振成像)以协助诊断。特征图会突出显示潜在的异常情况。例如,在使用脑肿瘤数据集等数据集检测肿瘤时,早期特征图可能会识别出异常纹理或边缘。然后,更深层次的地图会学习识别肿瘤特有的形状和结构,从而协助放射科医生的工作。这项研究经常发表在权威期刊上,如 放射学人工智能.
可视化和解读
通过可视化特征图,可以深入了解 CNN 学习到了什么以及它是如何做出决策的。通过研究图像的哪些部分会强烈激活特定的特征图,开发人员可以了解模型是否专注于相关信息。这一过程是可解释人工智能(XAI)的关键组成部分,有助于提高模型的整体可解释性。可以使用TensorBoard等工具或其他高级可视化技术来实现。了解特征图有助于调试模型,提高其准确性和可靠性,并通过Ultralytics HUB 等平台管理整个生命周期。