了解持续学习如何使AI在不遗忘的情况下获取新技能。探索关键策略,并为边缘AI更新您的 Ultralytics YOLO26 模型。
持续学习 (CL),常被称为终身学习,描述了人工智能模型随着时间推移,在不忘记先前学习信息的情况下,顺序学习新任务或获取新知识的能力。与传统机器学习流程不同,传统流程中模型在静态数据集上训练一次后即部署,持续学习模仿了人类适应新环境并不断从新经验中学习的能力。该领域的主要挑战是克服灾难性遗忘,这种现象是指在新的数据上训练神经网络会导致其在旧任务上的性能急剧下降,因为为旧任务优化的权重被覆盖了。
在动态的现实世界环境中,数据分布很少保持静态。例如,自动驾驶汽车上的视觉感知系统必须适应不断变化的季节、新的交通法规或不同的城市布局,同时不失去识别其初始训练期间学习到的基本路标的能力。在累积数据集上进行传统的从头开始重新训练通常计算成本高昂且不切实际,因为存在存储限制或隐私问题。持续学习通过允许模型增量更新来解决这些问题,使它们对于资源有限的边缘 AI 应用更高效和可扩展。
为了减轻灾难性遗忘,研究人员采用了多种策略。正则化方法通过对损失函数施加约束,以防止对先前任务中识别出的重要权重进行显著更改。回放方法存储一小部分历史数据(或使用生成式AI生成合成样本),并在训练期间将其与新数据混合。最后,参数隔离将模型参数的特定子集分配给不同的任务,确保新任务的更新不会干扰为先前任务优化的参数。2024年和2025年的最新进展集中于使用视觉语言模型来更好地识别哪些特征是通用的,哪些是任务特定的。
区分持续学习与迁移学习至关重要。在迁移学习中,预训练模型作为解决新特定任务的起点,而其在原始任务上的性能通常无关紧要。目标是最大化在目标域上的性能。相比之下,持续学习的目标是在新任务和所有先前任务上都表现良好。同样,尽管主动学习侧重于选择最具信息量的数据点进行标注以供训练,但持续学习则侧重于随着时间的推移更新模型本身的过程。
尽管真正的持续学习需要专门的架构调整,但用户可以通过在新数据中混合旧数据缓冲区来微调模型,从而模拟此工作流程。Ultralytics Platform 简化了这些数据集的管理和模型版本控制。以下是使用 Python API 更新模型的示例:
from ultralytics import YOLO
# Load a model previously trained on 'dataset_v1.yaml'
model = YOLO("yolo26n-v1.pt")
# Train the model on a new dataset containing new and old samples
# This helps mitigate catastrophic forgetting by "replaying" old data
results = model.train(
data="dataset_v2_combined.yaml",
epochs=50,
imgsz=640,
lr0=0.001, # Lower learning rate for fine-tuning
)
尽管取得了进展,持续学习仍然是一个活跃的研究领域。确定最佳的可塑性-稳定性困境——平衡学习新事物的能力(可塑性)与保留旧事物的能力(稳定性)——是困难的。此外,评估这些系统需要强大的性能指标,以同时考虑前向迁移(在新任务上的学习速度)和后向迁移(对旧任务的影响)。随着基础模型变得越来越大,高效的持续适应方法(如低秩适应 (LoRA))对于在不完全重新训练的情况下定制大规模系统变得至关重要。
开启您的机器学习未来之旅