AI大模型开发架构设计(4)——人人需要掌握的大模型微调

本文介绍了大模型微调的必要性,包括微调的三个关键能力(提示词工程、框架如LangChain),以及何时选择微调(资源有限、数据相似)、如何微调(全参数与参数高效方式)。还详细解析了LoRA原理,并提供了代码示例和训练过程中的数据集对比。
摘要由CSDN通过智能技术生成

人人需要掌握的大模型微调

1 大模型Fine-tuning(微调)

需要具备三个方面的能力
  • Prompt Engineer(提示词工程)
  • LangChain(一个框架的名字)
  • Fine-tuning(微调)

image.png

Fine-tuning(微调)
  • 何时 Fine-tuning(微调)
  • 什么情况下使用微调?
  • 不同微调方式
  • 基于LoRA微调
何为Fine-tuning(微调)

关于模型训练

  • From Scratch:从头训练
  • Fine-tune:微调/接着别人的训练
  • From Scratch:从头训练

    • 对于大模型而言,对一般的团队和个人:不行
      • 训练周期太长
      • 数据量要求太大
      • 成本太高

image.png

image.png

  • Fine-tune:微调/接着别人的训练
    • 对于大模型而言,这很有意义
      • 你要用什么,就训练什么,数据可以更精准,量可以更小
      • 拥有已训练好的大模型的特性优势
      • 成本极大降低
什么情况下使用微调?
  • 计算资源太少
  • 数据集相似,但数据集数量太少
  • 自己搭建或者使用的 CNN 模型正确率太低
  • 你要使用的数据集和预训练模型的数据集相似,如果不太相似,比如你用的预训练的参数是自然景物的图片,你却要做人脸的识别,效果可能就没有那么好了,因为人脸的特征和自然景物的特征提取是不同的,所以相应的参数训练后也是不同的
怎么微调?
  • 全参数 Fine-tune:比如针对 1700 亿参数进行微调
  • 小参数量 Fine-tune
    • Adapters
    • Prompt-tuning:提示词
    • LoRA:只需要万分之一参数

image.png

2 LoRA

原理浅析
  • 想要真正明白,需要先了解 Transformer 结构
  • 原始的 4096 × 4096 全连接方式 → 引入中间层 4096 × 4 + 4 × 4096 = 4096 × 8

image.png

代码准备
  • 常用代码:https://github.com/huggingface/peft
  • PEFT:parameter-efficient fine-tuning
  • Hugging face:一家初创公司(2016),最早做聊天机器人,现在集成并开源了很多大模型库/方法

image.png

生成新模型
  • 简单的代码调用,即可生成新模型:

image.png

训练模型
  • 训练代码:

image.png

数据集dataset

image.png

看看输出
  • Fine-tune 之前

image.png

  • Fine-tune 之后

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

讲文明的喜羊羊拒绝pua

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值