Transfer Learning
探索迁移学习以使用更少数据训练高精度 AI。学习如何利用 Ultralytics YOLO26 预训练权重来加速你的计算机视觉项目。
迁移学习是机器学习 (ML)中的一项强大技术,它将针对特定任务开发的模型重用为第二个相关任务模型的起点。开发者不需要从头开始训练神经网络(这需要庞大的数据集和巨大的计算能力),而是利用人工智能已经获得的知识。这种方法模仿了人类的学习方式;例如,懂得弹钢琴会让人更容易学会管风琴,因为音乐理论和手指灵活度的基础理解可以迁移过来。在深度学习的背景下,这意味着模型可以用明显更少的数据和时间在新问题上取得高准确率。
迁移学习的工作原理#
迁移学习的有效性在于特征提取的分层特性。深度学习模型,尤其是计算机视觉中使用的模型,通过分层来学习识别模式。主干网络的初始层可以检测出边缘、曲线和纹理等简单、通用的特征。这些低级特征几乎适用于任何视觉任务。
该过程通常包含两个主要阶段:
-
预训练: 在大规模基准数据集(如ImageNet)上对模型进行训练,以学习通用的视觉表征。这会产生一组已经理解视觉结构的模型权重。
-
适应: 然后将预训练模型适应特定的细分任务。这通常通过“冻结”早期层(保持其权重固定)并仅在较小的数据集上重新训练最后几层或检测头来实现。
实际应用#
迁移学习通过允许在没有科技巨头资源的情况下构建专业解决方案,使人工智能实现了民主化。
- 医疗人工智能: 为每种特定疾病收集数百万张带注释的医学图像是很困难的。然而,研究人员可以采用在日常物体上预训练的模型并将其应用于医学图像分析。该模型将其检测形状和异常的能力迁移过来,从而以高精度识别X射线或MRI扫描中的肿瘤。
- 制造人工智能: 在工业环境中,视觉检测系统必须快速适应新的产品线。通过利用智能制造工作流来最大程度地减少停机时间,可以快速更新广义缺陷检测模型,以发现特定新组件(例如微芯片)中的瑕疵。
与其他概念的关系#
将迁移学习与相关术语进行区分很有帮助:
- 与微调对比: 微调是实现迁移学习的具体方法。迁移学习是重用知识的整体概念,而微调则是指解冻部分模型并在较低学习率的新数据上对其进行训练的机械过程。
- 与零样本学习对比: 迁移学习需要一个包含新任务部分标注数据的训练阶段。相比之下,零样本学习试图对模型从未见过的对象进行分类,通常依赖于语义描述而不是视觉示例。
实践示例#
以下Python代码片段演示了使用 ultralytics 库的迁移学习。我们加载了带有源自COCO数据集的预训练权重的YOLO26模型。当我们开始在新数据集上进行训练时,模型会自动将其预先学习到的特征迁移到新任务中。
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 平台等工具简化了整个流程,使团队能够高效地合作标注数据并部署经过迁移学习的模型。
想要深入了解学术理论,斯坦福 CS231n 笔记提供了极佳的概述,而PyTorch 迁移学习教程则提供了大量的实现技术细节。






