利用迁移学习的强大功能,通过预训练模型节省时间、提升 AI 性能,并以有限的数据应对新任务。
迁移学习是一种机器学习技术,在这种技术中,为一项任务开发的模型被重复使用,作为第二项相关任务模型的起点。 作为第二个相关任务模型的起点。从头开始训练一个模型需要大量的训练数据和计算资源。 训练数据和计算资源。 学习利用的是从源任务中学习到的知识,如特征图、权重和模式。这种方法 是现代深度学习的基石、 特别是在计算机视觉(CV)领域,使 开发人员能够以更少的数据和更短的训练时间 开发人员能够以更少的数据和更短的训练时间达到更高的精度。
这一过程依赖于 神经网络学习分层特征 表征的能力。在模型的初始层(通常称为 骨干层,网络学习通用的视觉特征 如边缘、纹理和形状。这些特征几乎适用于任何视觉任务。
迁移学习通常包括两个主要阶段:
如需更深入的理论探讨,斯坦福大学的 斯坦福 CS231n 关于迁移学习的笔记提供了极好的 极好的资源。
迁移学习解决了数据匮乏这一常见难题。通过从预先学习的特征开始,模型可以避免在小数据集上过度拟合,并以更快的速度收敛。 在小数据集上的过度拟合,而且收敛速度比用随机权重初始化的模型快得多。 比用随机权重初始化的模型收敛得更快。
迁移学习为各行各业广泛使用的人工智能解决方案提供动力 各行各业广泛使用的人工智能解决方案:
将迁移学习与类似术语区分开来很有帮助:
以下是 Python 示例演示了如何利用
的 ultralytics 库。我们加载了在COCO 上预先训练好的YOLO11 模型,并在样本数据集上对其进行了微调。
from ultralytics import YOLO
# Load a pre-trained model (weights derived from the COCO dataset)
# This acts as our starting point for transfer learning
model = YOLO("yolo11n.pt")
# Fine-tune the model on a new dataset (e.g., COCO8)
# The model adapts its pre-learned features to the specific data
model.train(data="coco8.yaml", epochs=5)
# The updated model can now be used for inference on the new task
model.predict("path/to/image.jpg")
有关实现的详细信息,请参阅官方的 PyTorch 移植学习教程 或《TensorFlow 移植学习指南》。

