2024-01-06-AI 大模型全栈工程师 - 基于 ChatGLM2的 Fine-tuning 实战

摘要

2024-01-06 周六 杭州 晴

本章内容:

  1. Hugging Face 是什么?
    答: 相当于 NLP 的 github ; 基于 transformer 的开源模型非常全;
  2. ChatGLM2 基础使用

课程内容

1. Hugging Face 安装

pip install transformers
pip install transformers == 4.30
# conda 安装
conda install -c huggingface transformers

2. 小参数量微调

a. Prompt Tuning
a.1 在输入序列前,额外加入一组伪 Embedding 向量
a.2 仅训练这组伪 Embedding ,从而达到参数微调效果

b. P-Tuning
b.1 只用一个生成器生成上述伪 Embedding
b.2 只有生成器的参数是可训练的

c. Prefix-Tuning

c.1 伪造前面的 Hidden States
c.2 仅训练伪造的这个 Prefix

d. LORA

d.1 在 Transformer 的参数矩阵上加一个低秩矩阵(A*B)
d.2 只训练 A,B
d.3 理论上可以把上述方法应用于 Transformer 中的任意参数矩阵,包括 Embedding 矩阵
d.4 通常应用于 Query,Value 两个参数矩阵

e. AdaLORA

e.1 不预先指定可训练矩阵的秩
e.2 根据参数矩阵的重要性得分,在参数矩阵之间适当的分配参数预算

3. 实战1: 基于 Prefix-Tuning 微调 ChatGLM-6B

a. 数据准备
法律领域阅读理解: xxxx

b. ChatGLM 数据加载方式分析
实验本地完成

c. 数据预测

4. 实战2: 基于 LORA 微调 ChatGLM-6B

a. 编写训练代码
b. 训练效果
c. 大模型训练过程

5. 实战3: 训练自己的模型

本地自己独立完成

总结

小记: 学会训练自己的大语言模型,进行微调从而满足自己业务的相关需求,这个在特定的业务领域将会大有裨益。杭州的冬天还是有点冷的,所以对于健身的活动就减少了,我要寻找一个暖和的城市,开始自己下一段旅途。

posted @ 2024-01-06 15:29  流雨声  阅读(17)  评论(0编辑  收藏  举报