一文彻底搞懂Fine-tuning - 预训练和微调(Pre-training vs Fine-tuning)

Pre-training vs Fine-tuning
预训练(Pre-training)是预先在大量数据上训练模型以学习通用特征,而微调(Fine-tuning)是在特定任务的小数据集上微调预训练模型以优化性能。

Pre-training vs Fine-tuning
一、预训练(Pre-training)****
为什么需要预训练? 预训练是为了让模型在见到特定任务数据之前,先通过学习大量通用数据来捕获广泛有用的特征,从而提升模型在目标任务上的表现和泛化能力。

Pre-training
预训练技术通过从大规模未标记数据中学习通用特征和先验知识,减少对标记数据的依赖,加速并优化在有限数据集上的模型训练。

Pre-training
-
数据稀缺性:在现实世界的应用中,收集并标注大量数据往往是一项既耗时又昂贵的任务。 特别是在某些专业领域,如医学图像识别或特定领域的文本分类,标记数据的获取更是困难重重。预训练技术使得模型能够从未标记的大规模数据中学习通用特征,从而减少对标记数据的依赖。 这使得在有限的数据集上也能训练出性能良好的模型。
-
先验知识问题:在深度学习中,模型通常从随机初始化的参数开始学习。然而,对于许多任务来说,具备一些基本的先验知识或常识会更有帮助。 预训练模型通过在大规模数据集上进行训练,已经学习到了许多有用的先验知识,如语言的语法规则、视觉的底层特征等。 这些先验知识为模型在新任务上的学习提供了有力的支撑。

Pre-training
预训练的技术原理是什么?预训练利用大量无标签或弱标签的数据,通过某种算法模型进行训练,得到一个初步具备通用知识或能力的模型。

Pre-training
预训练是语言模型学习的初始阶段。在预训练期间,模型会接触大量未标记的文本数据,例如书籍、文章和网站。目标是捕获文本语料库中存在的底层模式、结构和语义知识。
-
无监督学习: 预训练通常是一个无监督学习过程,模型在没有明确指导或标签的情况下从未标记的文本数据中学习。
-
屏蔽语言建模: 模型经过训练可以预测句子中缺失或屏蔽的单词、学习上下文关系并捕获语言模式。
-
Transformer 架构: 预训练通常采用基于 Transformer 的架构,该架构擅长捕获远程依赖关系和上下文信息。

Pre-training
二、微调(Fine-tuning)
为什么需要微调? **尽管预训练模型已经在大规模数据集上学到了丰富的通用特征和先验知识,但这些特征和知识可能并不完全适用于特定的目标任务。**微调通过在新任务的少量标注数据上进一步训练预训练模型,使模型能够学习到与目标任务相关的特定特征和规律,从而更好地适应新任务。

Fine-tuning
模型微调可以更好地利用预训练模型的知识,加速和优化新任务的训练过程,同时减少对新数据的需求和降低训练成本。
-
减少对新数据的需求:从头开始训练一个大型神经网络通常需要大量的数据和计算资源,而在实际应用中,我们可能只有有限的数据集。通过微调预训练模型,我们可以利用预训练模型已经学到的知识, 减少对新数据的需求,从而在小数据集上获得更好的性能。
-
降低训练成本: 由于我们只需要调整预训练模型的部分参数,而不是从头开始训练整个模型,因此可以大大减少训练时间和所需的计算资源。这使得微调成为一种高效且经济的解决方案,尤其适用于资源有限的环境。

Fine-tuning
微调的技术原理是什么?在预训练模型的基础上,针对特定任务或数据领域,通过在新任务的小规模标注数据集上进一步训练和调整模型的部分或全部参数,使模型能够更好地适应新任务,提高在新任务上的性能。

Fine-tuning
微调如何分类? 微调分为在新任务数据集上全面或基于人类反馈的监督训练(SFT与RLHF),以及调整模型全部或部分参数以高效适应新任务(Full Fine-tuning与PEFT)。
1. 在新任务的小规模标注数据集上进一步训练
这种方式通常使用预训练模型作为基础,并在新任务的小规模标注数据集上进行进一步的训练。这种训练过程可以根据具体的训练方法和目标细分为不同的策略, 如监督微调(Supervised Fine-tuning, SFT)和基于人类反馈的强化学习微调(Reinforcement Learning with Human Feedback, RLHF)。

SFT or RLHF
-
定义: 在新任务的小规模标注数据集上,使用有监督学习的方法对预训练模型进行微调,以使其适应新任务。
-
步骤: 加载预训练模型 → 准备新任务的数据集 → 调整模型输出层 → 在新任务数据集上训练模型。
-
应用: 适用于那些有明确标注数据集的任务,如文本分类、命名实体识别等。
-
定义: 在SFT的基础上,通过强化学习和人类反馈来进一步微调模型,使其输出更加符合人类的偏好或期望。
-
步骤: 首先进行SFT → 收集人类反馈数据 → 训练奖励模型 → 使用奖励模型指导强化学习过程来微调模型。
-
应用:适用于那些需要高度人类判断或创造力的任务,如对话生成、文本摘要等。

SFT or RLHF
2. 调整模型的部分或全部参数
这种方式更加关注于模型参数层面的调整,根据是否调整全部参数,可以细分为全面微调(Full Fine-tuning)和部分/参数高效微调(Parameter-Efficient Fine-tuning, PEFT)。

Full Fine-tuning or PEFT
-
定义:在新任务上调整模型的全部参数,以使其完全适应新任务。
-
步骤:加载预训练模型 → 在新任务数据集上训练模型,调整所有参数。
-
应用:当新任务与预训练任务差异较大,或者想要充分利用新任务数据集时,可以选择全面微调。
-
定义: 仅调整模型的部分参数,如添加一些可训练的适配器(adapters)、前缀(prefixes)或微调少量的参数,以保持模型大部分参数不变的同时,实现对新任务的适应。
-
步骤: 加载预训练模型 → 在模型中添加可训练的组件或选择部分参数 → 在新任务数据集上训练这些组件或参数。
-
应用:当计算资源有限,或者想要快速适应新任务而不影响模型在其他任务上的性能时,PEFT是一个很好的选择。

最后的最后
感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你。
因为这个行业不同于其他行业,知识体系实在是过于庞大,知识更新也非常快。作为一个普通人,无法全部学完,所以我们在提升技术的时候,首先需要明确一个目标,然后制定好完整的计划,同时找到好的学习方法,这样才能更快的提升自己。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
大模型知识脑图
为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

经典书籍阅读
阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。

实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

面试资料
我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下

640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
更多推荐
所有评论(0)