增量预训练阶段,是直接扔文本,还是扔指令数据集?

看到一个论文
Instruction Pre-Training: Language Models are Supervised Multitask Learners

它训练了一个LLM用于给预训练数据集生成指令QA,然后与训练的时候把这个QA粘到原始文本后面来预训练。

很多base模型都往预训练数据集里扔指令微调数据,应该是给SFT打基础,因为SFT阶段大家都不用input的loss,可能会让这块的语义理解能力打折,全靠预训练数据撑起来也不现实,所以指令微调数据也拿去预训练。

SFT阶段,期望把隐藏在预训练语料中的知识规整化到QA模板里。

而这篇论文把这个阶段提前了,拿到一个语料,不学这个语料的自回归,直接学与该语料相关的QA。

效果很好,对垂类应该很友好。

但是实验有些偷鸡了。这个论文相当于把FT提前做了,但是对比模型仍然是PT模型,你都偷跑了,凭什么还和人家一个赛道?不是该让大家都SFT一下再对比吗?

一些细节:

  1. 生成的QA由于预训练文本量极大,导致QA量也极大,超过一般instruction tuning时使用的QA数量。
  2. 训练时,QA是能看到文本的。只使用QA对的loss做预训练。
  3. 不是不能文本+QA都训练,而是为了公平对比,大伙的训练token量得一致,所以Instruct PT只训练QA不训练文本。
    ————————————————

感想:
是一个有用的工作,但是不一定有利于实际落地,因为QA训练基于raw data,而SFT时候没给你raw data,这是否是一种训练目标不一致?instruct PT 和 SFT是否会起冲突?不落地都不知道。
除非你这个系统是个RAG系统,可能会有大帮助,估计很有利于从脏数据中“大海捞针”到正确的知识。(吐槽一句,现在的大海捞针的海水是不是都是与针完全不相关的数据啊,纯纯考验的是长文本信息搬运能力吧,而不是海水里找淡水的能力。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值