少样本学习和迁移学习都是在数据有限的情况下改进机器学习模型的技术,但它们解决问题的方式不同。少样本学习侧重于训练模型,使其能够使用极少的示例(通常每个类别只有一到五个样本)来识别新的类别或任务。相比之下,迁移学习涉及将预先在大型源数据集上训练的模型调整到新的目标任务,方法是用较小的、特定于任务的数据集对其进行微调。关键区别在于它们的数据需求以及它们如何利用先验知识:迁移学习假设存在一个中等大小的目标数据集用于微调,而少样本学习旨在从几乎没有标记数据的情况下进行泛化。
在迁移学习中,模型首先从大型、多样化的数据集(例如,用于视觉的 ImageNet 或用于语言模型的 Wikipedia 文本)中学习通用特征。然后,在较小的数据集上对这个预训练模型进行微调,以完成特定的任务,例如对医疗图像进行分类或分析客户评论。例如,通过在数千张医学图像上重新训练 ResNet 模型的最终层,可以将其调整为检测 X 射线中的肺炎。然而,少样本学习跳过了微调步骤或将其最小化。相反,该模型被设计为直接从其预先存在的知识中推断出新的任务。例如,GPT-3 只需在提示中提供几个示例即可执行文本分类,它依赖于预训练期间学习的模式,而不是显式的重新训练。像度量学习(例如,Siamese 网络)或元学习(例如,模型无关的元学习)这样的技术通常被用来教模型比较或快速适应新任务。
两者之间的选择取决于数据的可用性和任务的特殊性。当您拥有目标任务的至少数百个标记示例时,迁移学习是实用的,就像使用特定领域的数数据集定制 BERT 进行情感分析一样。当标记数据成本高昂或不切实际时,少样本学习就会大放异彩,例如只用少数图像对稀有动物物种进行分类。一个实际的例子是使用像 CLIP 这样的预训练视觉模型,它可以通过将未见过的物体与文本描述进行比较来对其进行分类,而无需额外的训练。虽然迁移学习需要微调的基础设施,但少样本学习优先考虑即时适应性,但通常以在高度专业化的任务上降低性能为代价。开发人员应该评估他们的数据约束,以及目标任务是否与预训练领域对齐,以确定哪种方法最适合。