探索特征图如何成为卷积神经网络的视觉中枢。了解Ultralytics 利用这些内部表征detect ,从而驱动计算机视觉技术。
特征图是卷积滤波器处理输入图像或神经网络前一层时产生的基础输出。在计算机视觉(CV)领域,这些图作为数据的内部表示形式,突显出模型已学会识别的特定模式,如边缘、纹理或复杂几何形状。 本质上,特征图如同卷积神经网络(CNN)的"眼睛",将原始像素值转化为具有实际意义的抽象表征,从而支持物体检测与分类等任务的实现。
特征图的生成由称为卷积的数学运算驱动。在此过程中,一个称为核或滤波器的小型可学习参数矩阵在输入数据上滑动。在每个位置,该核执行元素级乘法与求和运算,最终在输出网格中生成单一数值。
特征图是现代人工智能应用的引擎室,使系统能够以类人理解力解读视觉数据。
虽然特征图是内部结构,但在设计架构时理解其维度至关重要。 以下 PyTorch 示例展示了单个卷积层如何将输入图像转换为特征图。
import torch
import torch.nn as nn
# Define a convolution layer: 1 input channel, 1 output filter, 3x3 kernel
conv_layer = nn.Conv2d(in_channels=1, out_channels=1, kernel_size=3, bias=False)
# Create a random dummy image (Batch Size=1, Channels=1, Height=5, Width=5)
input_image = torch.randn(1, 1, 5, 5)
# Pass the image through the layer to generate the feature map
feature_map = conv_layer(input_image)
print(f"Input shape: {input_image.shape}")
# The output shape will be smaller (3x3) due to the kernel size and no padding
print(f"Feature Map shape: {feature_map.shape}")
区分特征图与类似术语有助于避免在模型训练过程中产生混淆:
在YOLO26等先进架构中,特征图在模型的"骨干"和"头部"中发挥着关键作用。骨干网络提取不同尺度(特征金字塔)的特征,确保模型能有效detect 物体。 用户Ultralytics 进行训练时,可直观呈现模型性能表现,并借助准确率、召回率等指标间接评估底层特征图的有效性。优化这些特征图的过程需要基于标注数据集进行大量训练,通常采用特征提取等技术将预训练模型的知识迁移至新任务。