神经网络中的迁移学习是一种技术,其中为一项任务开发的模型被重新用作另一项相关任务的起点。您不是从头开始训练一个新模型,而是采用一个预训练模型(通常是在大型数据集上训练的)并将其调整为您的特定问题。 这种方法节省了计算资源,减少了训练时间,并且通常可以提高性能,尤其是在处理有限数据时。核心思想是将从解决原始任务(如识别图像中的对象)中获得的知识转移到新任务(如检测 X 射线中的医疗异常),从而利用模型已经学习的模式。
一个常见的例子是使用预训练的图像分类模型,如 ResNet 或 VGG16,它们是在 ImageNet 等数据集上训练的。 开发人员可以删除这些模型的最终分类层,并将其替换为针对其特定任务量身定制的新层。 例如,可以在一般图像上训练的模型可以通过仅在新层上重新训练一小组鸟类照片数据集来适应对鸟类物种进行分类。 较早的层(检测边缘或纹理等基本特征)基本保持不变,因为这些低级特征在许多视觉任务中都很有用。 这一过程称为微调,允许模型建立在现有知识的基础上,而不是重新学习基础知识,从而使其对于专门应用有效。
当原始任务和新任务共享底层模式时,迁移学习效果最佳。 例如,像 BERT 这样的自然语言处理模型通常通过在特定领域的文本数据上重新训练顶层来重新用于情感分析或文本分类。 但是,如果任务过于不同(例如,使用图像模型进行音频处理),则收益会减少。 开发人员还应考虑在重新训练期间冻结某些层,以防止过度拟合,尤其是在小型数据集上。 虽然迁移学习不是一个通用的解决方案,但它是一个利用现有模型有效解决新问题的实用工具,可以在定制和资源约束之间取得平衡。