了解骨干网在深度学习中的作用,探索 ResNet 和 ViT 等顶级架构,并学习它们在现实世界中的人工智能应用。
在深度学习领域,尤其是计算机视觉领域,"骨干 "一词指的是神经网络中负责特征提取的关键部分。可以将其视为构建网络其余部分的基础。骨干网接收原始输入数据(如图像),并将其转换为结构化格式(即特征图),以便网络的后续部分有效利用。这些特征图可以捕捉输入数据的基本信息,如边缘、纹理和形状,从而使模型能够理解和解释复杂的视觉数据。对于熟悉机器学习基本概念的用户来说,骨干网可以理解为神经网络的初始层,用于学习输入数据的分层表示。
骨干层在决定深度学习模型的整体性能和效率方面起着至关重要的作用。它通常由多层卷积操作、池化和激活组成。卷积层负责从输入数据中提取特征,而池化层则降低特征图的空间维度,使模型的计算效率更高。激活函数将非线性引入网络,使其能够学习复杂的模式。骨干层的输出,即特征图,会被输送到网络的后续部分,如用于物体检测的检测头或用于图像分割的分割模块。主干网提取的特征质量直接影响到模型准确执行预期任务的能力。
有几种骨干架构因其在各种任务中的有效性而在计算机视觉领域大受欢迎。一些著名的例子包括
骨干网是现实世界中各种人工智能应用的基础,它能让机器以类似于人类的方式 "看到 "和解释视觉数据。下面是两个具体的例子:
在自动驾驶汽车中,骨干网用于处理来自摄像头和其他传感器的视觉数据,使车辆能够感知周围环境。例如 Ultralytics YOLO模型利用高效的骨干网实时检测行人、其他车辆和交通标志等物体。这些信息对于汽车导航系统做出明智决策和确保安全驾驶至关重要。
在医学图像分析中,骨干被用来从 X 光、核磁共振成像和 CT 扫描等医学图像中提取特征。这些特征可用于疾病诊断、异常检测和解剖结构分割等任务。例如,可以在脑肿瘤图像数据集(如脑肿瘤检测数据集)上对骨干进行训练,以学习有助于识别和定位肿瘤的相关特征。
为特定应用选择合适的骨干网取决于多个因素,包括任务的复杂性、可用的计算资源和所需的精度。对于资源有限的环境,如移动设备或边缘人工智能应用,可以选择参数较少的轻型骨干网。另一方面,对于要求高精度的任务,可能需要更深、更复杂的骨干网。
将主干网与神经网络的其他组成部分区分开来非常重要。骨干网提取特征,而网络的其他部分,如检测头或分割模块,则负责根据这些特征进行预测。主干就像网络的眼睛,提供原始的视觉信息,而其他组件就像大脑,解释这些信息以执行特定的任务。此外,迁移学习的概念经常被应用于骨干网络,即把在 ImageNet 等大型数据集上预先训练好的骨干网络作为新任务训练的起点。这样,模型就能利用从预训练数据集中学到的知识,提高性能并缩短训练时间。Ultralytics HUB 等工具简化了试验不同骨干网和训练自定义模型的过程。