了解特征图如何为Ultralytics YOLO 模型提供支持,从而实现精确的目标检测和高级人工智能应用(如自动驾驶)。
特征图是卷积滤波器对输入图像或 卷积滤波器作用于输入图像或 另一个特征图时产生的基本输出。 卷积神经网络 (CNN)。在计算机视觉(CV)中,这些图谱就像神经网络的 "眼睛 "一样。 图就像神经网络的 "眼睛 "一样,能突出显示所学特征的存在和位置,如边缘、纹理、褶皱、弧度、褶皱、弧度、弧度、弧度、弧度、弧度等。 特征的存在和位置,如边缘、纹理、角落或复杂的几何形状。通过将原始像素数据转化为 通过将原始像素数据转化为有意义的抽象概念,特征图使复杂的模型能够执行从图像分类到实时图像处理的各种任务。 图像分类到实时 物体检测等任务。
特征图的生成涉及一个数学过程,称为 卷积。一个专门的 称为内核或滤波器的可学习权重矩阵,在输入数据上滑动 在输入数据上滑动。在每个位置,内核都会执行一次元素乘法和求和,在输出矩阵中产生一个单一值。 输出矩阵中的单个值。
现代架构,如 许多系统中使用的ResNet 主干网、 利用特征图的层次性。随着数据在网络中的传输,抽象层 提高:
开发人员通常会将特征图可视化,以解释模型所学到的知识,这是可解释人工智能(XAI)的一个重要实践。 可解释的人工智能 (XAI) 的关键实践。像 TensorBoard等工具允许工程师检查这些 内部状态。如果用于detect 汽车的特征图在背景树上被激活,则表明模型 可能与噪声过度拟合。这种检查对于调试和提高 模型的鲁棒性至关重要。
下面的Python 代码演示了如何使用 ultralytics 库
在卷积层上注册一个钩子。
from ultralytics import YOLO
# Load the YOLO11 model (nano version)
model = YOLO("yolo11n.pt")
# Define a hook to print the shape of the feature map from the first layer
def hook_fn(module, input, output):
print(f"Feature Map Output Shape: {output.shape}")
# Register the hook to the first convolutional layer of the model
model.model.model[0].register_forward_hook(hook_fn)
# Run inference on a dummy image to trigger the hook
model("https://ultralytics.com/images/bus.jpg")
地物图是许多变革性技术背后的引擎:
要充分理解神经网络架构,将特征图与相关术语区分开来很有帮助:

