Loading... <div class="tip inlineBlock share"> 转载自: https://aws.amazon.com/cn/what-is/transfer-learning/ </div> ## 什么是迁移学习? 迁移学习(TL)是机器学习(ML)技术的一种,是指将针对一项任务预训练的模型进行微调以用于新的相关任务。训练新的机器学习模型是一个耗时且复杂的过程,需要大量的数据、计算能力和多次迭代才能投入生产。通过迁移学习,组织则可以使用新数据针对相关任务对现有模型进行重新训练。例如,如果机器学习模型可以识别狗的图像,则可以使用较小的图像集来训练其识别猫,该图像集需要突出狗和猫之间的特征差异。 预训练模型分类: * 有监督预训练: 比如使用ImageNet-1k数据集预训练的骨干网络, 如resnet * 自监督预训练: 在无标注的数据上通过选择合适的代理任务, 比如BERT/MAE上的内容补全(完形填空), 完成Encoder的训练 --- ## 迁移学习有哪些好处? TL 为创建 ML 应用程序的研究人员提供了以下几项好处。 ### **提高效率** 训练 ML 模型需要时间,因为它们可以构建知识和识别模式。它还需要一个大型数据集,而且计算成本很高。在 TL 中,预训练模型保留了任务、特征、权重和功能的基础知识,使其能够更快地适应新任务。您可以使用更小的数据集和更少的资源,同时获得更好的结果。 ### **提高可访问性** 构建深度学习神经网络需要大量数据、资源、计算能力和时间。TL 克服了这些创作障碍,允许组织在自定义使用案例中采用 ML。您可以调整现有模型以满足您的需求,而只需要支出一小部分成本。例如,使用预训练的图像识别模型,您可以创建用于医学成像分析、环境监测或面部识别的模型,而只需进行最少的调整。 ### **提高性能** 通过 TL 开发的模型通常在多样化和具有挑战性的环境中表现出更高的稳健性。他们在最初的训练中接触了各种场景,因此可以更好地应对现实世界中的可变性和噪音。它们可以提供更好的结果,并更灵活地适应不可预测的条件。 --- ## 有哪些不同的迁移学习策略? 您用于促进 TL 的策略将取决于您正在构建的模型的域、需要完成的任务以及训练数据的可用性。 ### **转导迁移学习** *转导迁移学习*涉及将知识从特定的源域转移到不同但相关的目标域,主要重点放在目标域。当目标域中标记的数据很少或根本没有时,它特别有用。 转导迁移学习要求模型使用先前获得的知识对目标数据进行预测。由于目标数据在数学上与源数据相似,因此模型可以更快地找到模式并执行。 例如,考虑采用经过产品评论训练的情感分析模型来分析电影评论。源域(产品评论)和目标域(电影评论)在上下文和细节上有所不同,但在结构和语言使用上有相似之处。该模型很快学会将其对情感的理解从产品域应用到电影域。 ### **归纳迁移学习** 归纳迁移学习是指源域和目标域相同,但模型必须完成的任务不同。预训练模型已经熟悉源数据,并且可以更快地训练新功能。 自然语言处理(NLP)就是归纳迁移学习的一个例子。模型在大量文本上进行预训练,然后使用归纳迁移学习对情感分析等特定功能进行微调。同样,像 VGG 这样的计算机视觉模型在大型图像数据集上进行预训练,然后进行微调以开发目标检测。 ### **无监督迁移学习** *无监督迁移学习*使用类似于归纳迁移学习的策略来开发新能力。但是,当源域和目标域中都只有未标记的数据时,可以使用这种形式的迁移学习。 当被要求执行目标任务时,该模型会学习未标记数据的共同特征,以便更准确地进行泛化。如果获取标记的源数据具有挑战性或成本高昂,则此方法非常有用。 例如,考虑在交通图像中识别不同类型的摩托车的任务。最初,该模型是根据大量未标记的车辆图像进行训练的。在这种情况下,模型独立确定不同类型的车辆(例如汽车、公共汽车和摩托车)之间的相似之处和区别特征。接下来,向模型介绍少量特定的摩托车图像。与以前相比,模型性能显著提高。 --- ## 迁移学习的步骤有哪些? 为新任务微调机器学习模型时,主要有三个步骤。 ### **选择预训练的模型** 首先,为相关任务选择具有先验知识或技能的预训练模型。选择合适模型的一个有用上下文是确定每个模型的源任务。如果您了解模型执行的原始任务,则可以找到更有效地过渡到新任务的任务。 ### **配置预训练模型** 选择源模型后,将其配置为将知识传递给模型以完成相关任务。有两种主要的方法可以做到这一点。 #### *****冻结预训练层***** 层是神经网络的构建基块。每一层由一组神经元组成,并对输入数据执行特定的转换。权重是网络用于决策的参数。最初设置为随机值,当模型从数据中学习时,权重会在训练过程中进行调整。 通过冻结预训练层的权重,可以使它们保持固定,从而保留深度学习模型从源任务中获得的知识。 #### *****移除最后一层***** 在某些使用案例中,您还可以移除预训练模型的最后一层。在大多数 ML 架构中,最后一层是特定于任务的。移除这些最后一层有助于您重新配置模型以满足新的任务要求。 #### *****引入新层***** 在预训练模型的基础上引入新层有助于适应新任务的特殊性质。新层使模型适应新要求的细微差别和功能。 ### **为目标域训练模型** 您可以根据目标任务数据训练模型,以开发其标准输出以与新任务保持一致。预训练模型产生的输出可能与所需的输出不同。在训练期间监控和评估模型的性能后,您可以调整超参数或基线神经网络架构以进一步提高输出。与权重不同,超参数不是从数据中学习的。它们是预先设置的,在确定培训过程的效率和有效性方面起着至关重要的作用。例如,您可以调整正则化参数或模型的学习率,以提高其与目标任务相关的能力。 --- ## 生成式人工智能中的迁移学习策略有哪些? 迁移学习策略对于各行各业采用生成式人工智能至关重要。组织可以自定义现有[基础模型](https://aws.amazon.com/what-is/foundation-models/),而无需大规模训练数十亿个数据参数的新模型。以下是生成式人工智能中使用的一些迁移学习策略。 ### **域对抗训练** *域对抗训练*涉及训练基础模型,以生成与目标域中的真实数据无法区分的数据。这种技术通常采用辨别者网络,如[生成对抗网络](https://aws.amazon.com/what-is/gan/)所示,试图区分真实数据和生成数据。生成器学习创建越来越真实的数据。 例如,在图像生成中,可以对经过照片训练的模型进行调整以生成图稿。辨别者有助于确保生成的图稿在风格上与目标域保持一致。 ### **师生学习** *师生学习*涉及更大、更复杂的“教师”模型,教授更小、更简单的“学生”模型。学生模型学习模仿教师模型的行为,从而有效地传授知识。这对于在资源受限的环境中部署大型生成模型非常有用。 例如,大型语言模型(LLM)可以作为小型模型的教师,传授其语言生成能力。这将允许较小的模型以更少的计算开销生成高质量的文本。 ### **特征解缠** 生成模型中的*特征解缠*涉及将数据的不同方面(例如内容和风格)分成不同的表现形式。这使模型能够在迁移学习过程中独立操作这些方面。 例如,在人脸生成任务中,模特可能会学习将面部特征与艺术风格区分开。这将使它能够在保持拍摄对象肖像的同时生成各种艺术风格的肖像。 ### **跨模态迁移学习** *跨模态迁移学习*涉及在不同模态(例如文本和图像)之间转移知识。生成模型可以学习适用于这些模式的表示形式。经过文本描述和相应图像训练的模型可能会学习从新的文本描述中生成相关图像,从而有效地将其理解从文本转移到图像。 ### **零样本和少样本学习** 在*零样本和少样本学习*中,生成模型经过训练,可以执行任务或生成数据,而这些任务或数据在训练过程中很少或根本没有看到任何示例。这是通过学习具有良好泛化的丰富表示形式来实现的。例如,可以训练生成模型来创建动物图像。通过少样本学习,它可以通过理解和组合其他动物的特征来生成鲜为人知的动物图像。 THE END 本文作者:将夜 本文链接:https://zoe.red/2024/402.html 版权声明:本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。 最后修改:2024 年 04 月 04 日 © 转载自他站 赞 如果觉得我的文章对你有用,请随意赞赏