大模型微调(三)监督微调的步骤

监督微调步骤

本文重点介绍监督微调,其步骤包括:

  1. 选择微调任务(例如摘要、问答、文本分类)。
  2. 根据微调任务准备训练数据集,即创建 (100–10k) 输入输出对并预处理数据(即标记化、截断和填充文本)。
  3. 选择一个基础模型(试验不同的模型,然后选择一个在所需任务上表现最好的模型)。
  4. 通过监督学习微调模型。
  5. 评估模型性能。

这里重点讨论第4步:如何进行模型微调。

训练参数的3个可选项

在微调具有~100M-100B参数的模型时,需要考虑计算成本。为此,一个重要的问题是需要(重新)训练哪些参数?

选项 1:重新训练所有参数

第一种是训练所有内部模型参数(称为全参数调优,full parameter tuning)。这种调优方式计算成本最高。最重要的是,全参数调整的一个已知问题是「灾难性遗忘现象」,也就是模型“忘记”它在初始训练中“学到”的有用信息。

减轻选项1的缺点的一种方法是冻结大部分模型参数,这就引出了选项 2。

选项2:迁移学习

迁移学习(TL)的主要思想是在将模型应用于新任务时「保留模型从过去的训练中学到的有用表示/特征」(也就是微调的时候「权重不变」),只删除神经网络的“头部”并用新层替换(所谓的头部包括其最终层,这些层将模型的内部表示转换为输出值)。正是由于使用了新层替换,TL虽然保持大多数参数不变可以减轻训练LLM的巨大计算成本,但它「不一定能解决灾难性遗忘的问题」。

选项3:参数高效微调 (PEFT)

PEFT(Parameter Efficient Fine-tuning[7])使用相对较少的可训练参数来增强基础模型,其关键是一种微调方法,可通过使用一小部分计算和存储成本达到与全参数调优相当的性能。

PEFT封装了一系列技术,其中之一是流行的LoRA(Low-Rank Adaptation[8])方法。LoRA 背后的基本思想是在现有模型中 「选择一些层」(通常是Linear层和Conv1D层等),并根据以下一定的公式修改预训练模型中相应层的权重。


最后

给大家分享一本大模型入门书籍《从零开始大模型开发与微调:基于PyTorch与ChatGLM》,适合PyTorch深度学习初学者、大模型开发初学者、大模型开发人员学习。

有需要这本书籍PDF文档,可以微信扫描下方CSDN官方认证二维码,免费领取【保证100%免费】


《从零开始大模型开发与微调:基于PyTorch与ChatGLM》共18章,内容包括:

  1. 人工智能与大模型
  2. PyTorch 2.0深度学习环境搭建
  3. 从零开始学习PyTorch 2.0
  4. 深度学习基础算法详解
  5. 基于PyTorch卷积层的MNIST分类实战
  6. PyTorch数据处理与模型展示
  7. ResNet实战
  8. 有趣的词嵌入
  9. 基于PyTorch循环神经网络的中文情感分类实战
  10. 自然语言处理的编码器
  11. 预训练模型BERT
  12. 自然语言处理的解码器
  13. 强化学习实战
  14. 只具有解码器的GPT-2模型
  15. 实战训练自己的ChatGPT
  16. 开源大模型ChatGLM使用详解
  17. ChatGLM高级定制化应用实战
  18. 对ChatGLM进行高级微调

在这里插入图片描述
在这里插入图片描述

有需要《从零开始大模型开发与微调:基于PyTorch与ChatGLM》PDF文档,可以微信扫描下方CSDN官方认证二维码,免费领取【保证100%免费】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值