当前位置:   article > 正文

nlp学习笔记——基于论文摘要的文本分类(topline)_chatglm文本分类

chatglm文本分类

本文为学习微调ChatGLM2-6b模型解决文本二分类任务视频基础总结感悟

前言:

本人自己根据手册上面的步骤跑了一遍,但是效果不理想只有0.7多,和其他群友交流得知,其他群友也有此现象,需调教prompt  参数才能获得更好的结果。

学习感悟:

通过跑chatglm2-6b学到了大模型的具体工作原理,以及通过怎样微调使模型更加精准(得到我们想要的结果)例如本次模型使用 LoRA微调(一种高效的融入学习算法。类似人类把新知识融入现有知识体系的学习过程)除此之外我们还可以使用。学习时无需新知识特别多的样本,学习后原有的庞大知识和能力可以基本不受影响。最大的收获就是知道了微调的几种方法。

1.AdaLoRA微调

我们演示了使用AdaLoRA算法,使用1条样本对ChatGLM2-6b实施微调。几分钟就成功注入了"梦中情炉"有关的知识。
summary:
(1) 只需要1条样本,很少的训练时间,就可以通过微调给LLM注入知识。
(2) LLM是一种类似Key-Value形式的知识数据库,支持增删改查。通过微调可以增删修改知识,通过条件生成可以查询提取知识。
(3) LoRA微调是一种高效的融入学习算法。类似人类把新知识融入现有知识体系的学习过程。学习时无需新知识特别多的样本,学习后原有的庞大知识和能力可以基本不受影响。

2.Prefix-tining

  1. 前缀微调(Prefix-tining)
  2. 思路:在输入token之前构造一段任务相关的virtual tokens作为Prefix,然后在接入下游任务进行训练时,PLM中的其他部分参数固定,只更新Prefix部分的参数。
  3. 缺点:
  4. 在每层都加了prompt的参数,改动较大
  5. 占用序列长度;有一定的额外计算开销;

3.Prompt-tuning

  1. 指示微调(Prompt-tuning)
  2. 思路:
  3. 将 prompt 扩展到连续空间,仅在 输入层 添加 prompt连续向量,通过反向传播更新参数来学习prompts,而不是人工设计prompts;
  4. 冻结模型原始权重,只训练prompts参数,训练完成后,只用同一个模型可以做多任务推理;
  5. 使用 LSTM 建模 prompt 向量间 关联性;
  6. 缺点:
  7. 不太好训练,省了显存,但不一定省时间
  8. 多个 prompt token 之间相互独立,可能会影响效果

4.P-tuning

  1. P-tuning
  2. 思路:设计了一种连续可微的virtual token(同Prefix-Tuning类似),将 Prompt 转换为可以学习的 Embedding层,并用 prompt encoder(由一个双向的LSTM+两层MLP组成) 的方式来对Prompt Embedding进行一层处理,建模伪token的相互依赖,并且可以提供一个更好的初始化。
  3. 缺点:
  4. 稍显复杂,看着不太像prompt了
  5. 伪token编码时是连续的,但在与输入结合时可能是不连续的,中间可能会插入输入

5.P-tuning v2

  1. 思路:
  2. Deep Prompt Encoding:采用 Prefix-tuning 的做法,在输入前面的每层加入可微调的 Prompts tokens作为输入;
  3. 移除了重参数化的编码器(prefix-tuning中可选的MLP、p-tuning中的LSTM)
  4. 针对不同任务采用不同的提示长度
  5. 引入多任务学习
  6. 抛弃了prompt learing中常用的verbalizer,回归到传统的CLS和token label分类范式
  7. 缺点:
  8. 摒弃了prompt learing中常用的verbalizer,回归到传统的CLS和token label分类范式,这其实某种程度上弱化了prompt的味道

一、大模型介绍

大模型是基于深度学习的自然语言处理模型,有很多参数(是大模型的主要特点),可以理解并生成人类的自然语言。现在市面上有很多的大模型,譬如最火的chatgpt4

OpenAI开发ChatGPT的三个主要步骤:大尺寸预训练+指令微调+RLHF

 

 

二、大模型微调

 

 

 官方视频:【官方教程】ChatGLM-6B 微调:P-Tuning,LoRA,Full parameter_哔哩哔哩_bilibili

三、建立数据集

 

 

四、跑代码过程

 

五、学习链接

以下为比较好的学习笔记链接,以备后续再次学习使用

微调介绍:chatglm2-6b微调手记 - 知乎 (zhihu.com)

chatGLM2-6b微调示例:ChatGLM2微调保姆级教程~ - 知乎 (zhihu.com)

【基于论文摘要的文本分类与关键词抽取挑战赛教程】Datawhale - 一个热爱学习的社区 (linklearner.com)
【体验竞赛全流程】
Docs (feishu.cn)
【优质资料&学习者分享&答疑手册】
优质资料&答疑手册 - 飞书云文档 (feishu.cn)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/484680
推荐阅读
相关标签
  

闽ICP备14008679号