前言
当对一个垂直领域进行继续预训练完后,大模型的通用能力会被遗忘,为此惯用的技巧是混一些通用能力+领域内的数据一起训练,这样的话既能学习新领域知识又能维持住通用能力。
但是混合的比例该是多少呢?混太多领域内数据势必会造成通用能力下降,相反又会造成领域内知识学习不充分,同时不同参数量大小的模型对混合比例的感知可能也是不一样的以及混合比例也要考虑你手上已有的可用数据量级供你源源不断的使用(因为不可能有无限的数据)等等。
那么这些所有因素之间的关系(或者业界的专业术语叫Scaling Law曲线)到底是什么样的?今天就给大家带来一篇最新的paper,作者花了大量实验绘出了这条宝贵的Scaling Law。让我们对这些现象能够一睹为快。
论文链接:https://arxiv.org/pdf/2407.17467
方法
方法比较朴实:基于loss来说明一切。
过去已有一些工作证明了预训练的loss和下游的效果有着高度密切相关性。再说的直白点就是_预训练loss的高低可以衡量模型的性能。作者所有的实验也是基于这个基础理论进行的即loss低了就认为模型性能被训练的还不错,反之亦然。注意这里说的loss是在验证集上的loss_
关于这个理论笔者觉得是相对的,也就是你用的数据必须是高质量的,如果你的数据比较差模型拟合的越好反而不好。
因此作者通过观察领域(Domain)loss和通用能力(General)loss的变化来看两者能力的变化曲线。
数据方面作者先从百科全书、书籍、新闻、报纸和社交媒体网站收集了一个220B token的预训练数据(中文、英文、代码的占比分别是44%、36%、20%.)作为通用能力的训练数据。然后又收集了金融和学术paper(来自Arxiv)作为两个领域domain的预训练数据来实验。
训练方面作者先用220B预训练一个base模型,然后基于其热启进行本文的研究。
实验结论
论文中为了规范,给了大量的数学化定义,为了简单笔者这里就不一一说了(其实都很好理解,愿感兴趣的直接看原论文),直接给大家看关键结论。作者通过实验想回答两个核心问题:
(1)最好的混合比例是否存在?
(2)存在的话,这个混合比例是否可以被预测(这个问题有着重大意义,因为一旦可被预测就意味着我们可以天然的知道现有条件下我们最好的混合确切是多少?)
下面我们一个一个看实验曲线。
- 混合比例是否存在
答案是存在。
∆Domain Loss指的是继续预训练后domain loss-没训练domain loss。因为domain训练后的loss后肯定比没训练的低,所以看到图中都是负数且愈来愈大。∆General Loss指的是继续预训练后通用能力loss-没训练通用能力loss。可以看到大部分变化趋势是先不变,然后开始上升最后趋于稳定。然后不同颜色种类代表不同规模的模型。不同颜色深度代表的是不同混合比例(domain数据的占比)
我们的目标是通过一个混合的比例训练后,domain的loss在不断降低且通用能力general loss保持不变或者稍微升一点(在一个可接受的∆区间内,具体公式见论文3.1节)
通过上图实验结果我们可以看到_各个size的模型都存在多个混合比例可以满足上述目标(黄色箭头)且越大的模型存在的满足混合比例集合越多。_
那么在这么多满足的混合比例集合中,哪一个最好呢?这里作者进一步定了一个概念也即这篇论文的核心_CMR:最大的那个临界比例就是最好的。_因为超过这个临界值,∆General Loss就不会收敛,小于这个临界值∆Domain Loss就不会下降的更好(领域知识学的不好)。所以这个值是最好的。
同时可以看到在混合比例是1/4的时候,四个不同size的模型在_有限的训练数据集下都可以达到上述目标(出现了拐点),但是当混合比例上升到1/3时,460M的模型在当前的有限训练数据下没有出现拐点,也就是说更大的模型可容纳更高的混合比例。_这其实也符合直觉,因为当模型小了后没有那么多容量来存放新的知识,只能以遗忘掉老知识为代价来存放新的知识。而更大的模型有更多的空余存储空间来记新的知识。
- CMR是否存在可以被预先预测
答案是可以预测。即在给定一个规模size和最大可训练的步数(其实是取决于你手里有的最大数据是多少)下预测CMR是多少?
作者在上诉的两个领域都做了实验来证明结论的可靠性。
最关键的一张图来了也即混合比例的Scaling Law
这种图非常直观的给出了不同size以及不同数据量级下CMR的预测图。比如当T=100下对于460M、940M、1.6B、3.1B规模的模型其CMR分别是29.8%、34.9%、41.4%、47.8%。
同时作者也直观的给出了不同混合比例下General Loss在不同数据量级下训练的变化
上诉结果都是在为了进一步说明金融domain领域实验的,为了验证Scaling Law的普适性,作者进一步在第二个domain领域即学术paper进行了实验,发现同样存在可预测的Scaling Law(在460M下CMR是是36.69%)
不过论文也指出的不足就是没有在更大的模型规模上验证Scaling Law。后续工作可能会加上这方面的实验。
总结
论文的核心结论和实验图标就算给大家展示完了,更多图表和细节可以看原论文的正文和附录。
那么返回头来看,这篇paper的结论怎么指导我们在实际工作中落地呢?
这篇论文的更多价值在于给了我们一个定心丸即告诉我们_最好的混合比例是存在的且是可以被预测的_。但是具体是多少是没有一个定论的,不同domain的具体Scaling Law是不一样的,也就是说看完这篇paper不等于你直接就能得到一个确切的混合比例用在你的domain。它只是给了定性的结论和一些趋势(比如更大的模型通常会咋样等等)。
所以说当我们真的想实践得到自己的Scaling Law,那么大概率我们需要去做实验,画出几个关键点,然后拟合出曲线进而预测。
最后总结一下通过论文的实验我们大致可以得到几个比较有趣的定性结论:
(1)最好的混合比例是存在的且是可以被预测的。
(2)领域loss随着训练一版来说都是一直下降的,但是通用领域的loss是先保持不变然后开始下降。
(3)可训练的数据量以及模型规模和CMR都是呈现正相关的,比如更大的模型通常可以容纳更高的混合比例(当模型足够大数据足够多,那么理论上CMR可以是1),当拥有的domain数据量不是那么多的时候,CMR要低一些。
进而我们从论文中的实际数值得到的一些_小经验_是(不考虑不同领域带来的显著不同)在规模是3.1B时CMR就可以是47.8%左右,那么按照趋势当上升到7b以上这个比例可能达到50%也即1:1混合。当训练更大的模型时,还可以更高。同时这个比例是在可训练数据量达到20B左右的情况下的,当我们的训练数据没有这么大的情况下,按照Scaling Law,我们的混合比例还得进一步指数降低,之前笔者看做sft的话通用能力的数据最好占比不超过1/3。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。