Transfer Learning
探索迁移学习以使用更少数据训练高精度 AI。学习如何利用 Ultralytics YOLO26 预训练权重来加速你的计算机视觉项目。
迁移学习是机器学习 (ML) 中一种强大的技术,它将为一个特定任务开发的模型作为起点,并将其重用于第二个相关任务。开发者无需从零开始训练神经网络(这通常需要海量数据集和巨大的计算能力),而是利用人工智能已经获得的知识。这种方法模仿了人类的学习方式;例如,如果你会弹钢琴,学习管风琴就会容易得多,因为关于音乐理论和手指灵活性的基础理解是可以迁移的。在深度学习领域,这意味着模型可以在更少的数据和时间内,在新的问题上实现高精度。
Link to this section迁移学习的工作原理#
迁移学习的有效性在于特征提取的分层特性。深度学习模型,特别是那些用于计算机视觉的模型,会学习识别层级中的模式。主干 (backbone) 的初始层负责检测简单的通用特征,如边缘、曲线和纹理。这些底层特征几乎适用于任何视觉任务。
该过程通常包含两个主要阶段:
-
预训练:模型在大型基准数据集(如 ImageNet)上进行训练,以学习通用的视觉表示。这会产生一组已经具备视觉结构理解能力的模型权重。
-
适配:随后将预训练好的模型适配到特定的细分任务中。这通常通过“冻结”早期层(保持其权重不变),并仅在较小的自定义数据集上重新训练最后几层,即检测头 (detection head) 来完成。
Link to this section实际应用#
迁移学习通过允许在没有科技巨头资源的情况下构建专业解决方案,使人工智能实现了民主化。
- AI 医疗:为每一种特定疾病收集数百万张标注好的医学图像是非常困难的。然而,研究人员可以采用在日常物体上预训练的模型,并将其应用于医学图像分析。模型将其检测形状和异常的能力迁移过来,从而以高精度识别 X 光片或 MRI 扫描中的肿瘤。
- AI 制造业:在工业环境中,视觉检测系统必须快速适应新的产品线。通用的缺陷检测模型可以被迅速更新,利用智能制造工作流识别特定新组件(如微芯片)中的缺陷,从而最大程度减少停机时间。
Link to this section与其他概念的关系#
将迁移学习与相关术语进行区分很有帮助:
- vs. 微调 (Fine-Tuning):微调是实现迁移学习的一种具体方法。迁移学习是重用知识的统称,而微调是指解冻模型部分参数并使用较低学习率在新数据上进行训练的机械过程。
- vs. 零样本学习 (Zero-Shot Learning):迁移学习需要针对新任务进行包含部分标注数据的训练阶段。相比之下,零样本学习试图对模型从未见过的物体进行分类,通常依赖语义描述而非视觉示例。
Link to this section实践示例#
以下 Python 代码片段演示了如何使用 ultralytics 库进行迁移学习。我们加载了 YOLO26 模型,该模型自带源自 COCO 数据集的预训练权重。当我们开始在新数据集上进行训练时,模型会自动将其预先学到的特征迁移到新任务中。
from ultralytics import YOLO
# Load a pre-trained YOLO26 model (transferring weights from COCO)
model = YOLO("yolo26n.pt")
# Train the model on a new, smaller dataset to adapt its knowledge
# This leverages the pre-learned backbone for faster convergence
results = model.train(data="coco8.yaml", epochs=5)为了管理数据集并在云端执行这些训练任务,诸如 Ultralytics Platform 之类的工具简化了流程,使团队能够高效地协作标注数据并部署通过迁移学习得到的模型。
如需深入探讨学术理论,斯坦福 CS231n 笔记 提供了极佳的概述,而 PyTorch 迁移学习教程 则提供了详细的实现技术细节。






