网站大量收购独家精品文档,联系QQ:2885784924

大模型面试题-32-大模型(LLMs)增量预训练篇.pdf

大模型面试题-32-大模型(LLMs)增量预训练篇.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

大模型(LLMs)增量预训练篇

来自:AiGC面试宝典

宁静致远2024年01月27日20:47

•大模型(LLMs)增量预训练篇

•1.为什么要增量预训练?

•2.进行增量预训练需要做哪些准备工作?

•3.增量预训练所用训练框架?

•4.增量预训练训练流程是怎么样?

•5.增量预训练一般需要多大数据量?

•6.增量预训练过程中,loss上升正常么?

•7.增量预训练过程中,lr如何设置?

•8.增量预训练过程中,warmup_ratio如何设置?

•9.warmup的步数对大模型继续预训练是否有影响?

•10.学习率大小对大模型继续预训练后上下游任务影响?

•11.在初始预训练中使用Rewarmup对大模型继续预训练性能影响?

•致谢

1.为什么要增量预训练?

有一种观点,预训练学知识,指令微调学格式,强化学习对齐人类偏好,LIMA等论文算是这一观点的证据。

所以要想大模型有领域知识,得增量预训练。(靠指令微调记知识不靠谱,不是几十w条数据能做到的。)

2.进行增量预训练需要做哪些准备工作?

1.模型底座选型

主流是LLaMA,因为scaling法则,可能LLaMA做了充分预训练。(当然有版权问题)

这里备选BLOOM,感觉基座比LLaMA差,但是也有7B版本。

Falcon、CPM-bee、Aquila、Baichuan待实验,license友好,但生态和效果都是问题。其实,因为结构上都类

似LLaMA,未来估计会出现整合这些模型的项目。

(Falcon公布的训练语料中没有中文)

这里没列ChatGLM和ChatGLM2,因为有种说法在SFT模型上增量预训练效果比较差。(未证实)

1.数据收集

这里最经典的开源预训练数据还是wudao的200G和thepile这两个数据集(怀念一下Open-Llama)

加起来有1T的文本量,足够前期玩耍了。

其实,刚开始实践的时候,不需要太多样本,先收集GB量级的领域文本跑通流程即可。

1.数据清洗

当然这里数据治理可能是chatgpt魔法的最关键的部分,最基础的是把网页爬取数据中的广告清理掉。

Falcon论文里介绍了数据清洗的手段,对于我们很有参考意义。

3.增量预训练所用训练框架?

1.超大规模训练

如果是真大规模炼丹,那没什么好说的,直接3D并行。

Megatron-Deepspeed拥有多个成功案例,炼LLaMA可以参考LydiaXiaohongLi大佬的实现。(实在太强)

/microsoft/Megatron-DeepSpeed/pull/139

炼BLOOM可以直接找到Bigscience的git仓库。

然而,转checkpoint还是挺费劲的。

1.少量节点训练

小门小户一共就几台机器几张卡的话,3D并行有点屠龙术了。

张量并行只有在nvlink环境下才会起正向作用,但提升也不会太明显。

可以分2种情况:

•单节点或者多节点(节点间通信快):直接deepspeedZeRO吧。(笔者用了linly的增量预训练代码,但有

能力的最好用其他代码)比如,Open-Llama的fork版本。

/RapidAI/Open-Llama

•多节点(但节点间通信慢):考虑用流水线并行,参考另一个大佬的实现。

/HuangLK/transpeeder

1.少量卡训练

如果资源特别少,显存怎么也不够,可以上LoRA。

/shibing624/MedicalGPT

4.增量预训练训练流程是怎么样?

1.数据预处理

参考LLaMA的预训练长度,也把数据处理成2048长度(如果不够,做补全)

这里要吐槽,tencentpretrain数据处理脚本的默认长度竟然是128。

1.分词器

有很多工作加LLaMA中文词表,但是考虑到没有定论说加中文词表会更好,先用原版的吧,500k的

tokenizer.model。

/ymcui/Chinese-LLaMA-Alpaca

1.原始模型

可以使用一个中文增

文档评论(0)

189****7098 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档