未来之路:LLM 研究趋势及值得研究的重点方向
这里列出一些我个人认为比较重要的 LLM 研究领域,或值得深入探索的研究方向。
探索 LLM 模型的规模天花板
尽管继续推大 LLM 模型的规模,这事看似没有技术含量,但是其实这个事情异常重要。我个人判断,自从 Bert 出现以来,到 GPT 3,再到 ChatGPT,大概率这些给人印象深刻的关键技术突破,核心贡献都来自于 LLM 模型规模的增长,而非某项具体技术。说不定,揭开 AGI 真正的钥匙就是:超大规模及足够多样性的数据、超大规模的模型,以及充分的训练过程。再者,做超大规模的 LLM 模型,对技术团队的工程实现能力要求是非常高的,也不能认为这事情缺乏技术含量。
那么继续推大 LLM 模型规模,有什么研究意义呢?我觉得有两方面的价值。首先,如上所述,我们已知,对于知识密集型的任务,随着模型规模越大,各种任务的效果会越来越好;而对很多推理类型的有难度的任务,加上 CoT Prompting 后,其效果也呈现出遵循 Scaling law 的趋向。那么,很自然的一个问题就是:对于这些任务,LLM 的规模效应,能将这些任务解决到何种程度?这是包括我在内,很多人关心的问题。其次,考虑到 LLM 具备的神奇的 “涌现能力”,如果我们继续增加模型规模,它会解锁哪些让我们意想不到的新能力呢?这也是很有意思的问题。考虑到以上两点,我们仍然需要不断增大模型规模,看看模型规模对解决各类任务的天花板在哪里。
当然,这种事情也就只能说说,对 99.99% 的从业者来说,是没有机会和能力做这个事情的。要做这个事情,对研究机构的财力及投入意愿、工程能力、技术热情,都有极高的要求,缺一不可。能做这事情的机构,粗估下来,国外不超过 5 家,国内不超过 3 家。当然,考虑到成本问题,未来也许会出现 “股份制大模型”,就是有能力的几家机构合作,群策群力,一起来共建超级大模型的现象。
增强 LLM 的复杂推理能力
正如之前对 LLM 推理能力的叙述,尽管 LLM 在最近一年推理能力得到了很大的提升,但是很多研究(参考:Limitations of Language Models in Arithmetic and Symbolic Induction/Large Language Models Still Can’t Plan)表明,目前 LLM 能够解决得比较好的推理问题,往往都相对简单,LLM 的复杂推理能力仍然薄弱,比如即使是简单的字符拷贝推理或者加减乘除运算,当字符串或者数字非常长的时候,LLM 推理能力会极速下降,再比如行为规划能力等复杂推理能力很弱。总而言之,加强 LLM 的复杂推理能力,应该是 LLM 未来研究中最重要的环节之一。
前文有述,加入代码加入预训练,这是一种直接增强 LLM 推理能力的方向。这个方向目前研究尚显不足,更像是实践经验的总结,探索背后的原理,并进而引入更多类型除代码外的新型数据来增强 LLM 的推理能力,这可能是更本质提升推理能力的方向。
LLM 纳入 NLP 之外更多其它研究领域
目前的 ChatGPT 擅长 NLP 和 Code 任务,作为通向 AGI 的重要种子选手,将图像、视频、音频等图像与多模态集成进入 LLM,乃至 AI for Science、机器人控制等更多、差异化更明显的其它领域逐步纳入 LLM,是 LLM 通往 AGI 的必经之路。而这个方向才刚刚开始,因此具备很高的研究价值。
更易用的人和 LLM 的交互接口
如前所述,ChatGPT 的最大技术贡献即在此。但是很明显,目前的技术并不完美,肯定还有很多命令 LLM 理解不了。所以,沿着这个方向,寻找更好的技术,来让人类使用自己习惯的命令表达方式,而 LLM 又能听懂,这是个新的,且非常有前景的技术方向。
建设高难度的综合任务评测数据集
好的评测数据集,是引导技术不断进步的基石。随着 LLM 模型逐步增大,任务效果快速提升,导致很多标准测试集快速过时。也就是说,这些数据集合相对现有技术来说,太容易了,在没有难度的测试集合下,我们不知道目前技术的缺陷和盲点在哪里。所以构建高难度的测试集合,是促进 LLM 技术进步的关键所在。
目前行业应出现了一些新的测试集,有代表性的包括 BIGBench、OPT-IML 等。这些测试集合体现出一些特性,比如相对 LLM 现有技术具备一定的难度、综合了各种各样多种类型的任务等。
受到 ChatGPT 的启发,我觉得除此外应纳入另一考虑因素:体现真实用户需求。就是说,这些任务的表述由用户真实发起,这种方式构建出来的 LLM 模型,才能解决用户实际需求。
除此外,相信 LLM 会快速将能力溢出到 NLP 之外的领域,而如何融入更多其它领域的评测数据,也是需要提前去考虑。
高质量数据工程
对于预训练模型来说,数据是其根本,预训练过程可以理解为从数据中吸取其中所包含知识的过程。因此,我们需要进一步加强对高质量数据的挖掘、收集及清洗等工作。
关于数据,需要考虑两个方面:数据的质量和数量。而根据 T5 的对比实验,我们可以得出结论:在数量和质量两个因素里,质量优先,正确的道路应该是在保证数据质量的前提下,再去增大数据规模。
数据质量,包括数据的信息含量以及数据的多样性等多个衡量标准,比如 Wiki 明显就属于世界知识密度极高的高质量数据,这是从信息含量来说的;而增加数据类型的多样性,无疑是激发 LLM 各种新能力的根本,比如加入问答网站的数据,对于 LLM 的 QA 能力提升是有直接帮助的。多样化的数据赋予了 LLM 更好解决更多不同类型任务的能力,所以,这可能是数据质量里最关键的标准。
关于数据数量,原则上互联网上公开发布的数据都可以纳入 LLM 模型的预训练过程。那么,它的极限在哪里?“Will we run out of data? An analysis of the limits of scaling datasets in Machine Learning” 对此进行了估算,结论是到 2026 年左右,高质量的 NLP 数据将会用光,低质量 NLP 数据会在 2030 到 2050 年用光,而低质量图像数据会在 2030 到 2060 年用光。而这意味着:要么到时我们有新类型的数据源,要么我们必须增加 LLM 模型对数据的利用效率。否则,目前这种数据驱动的模型优化方式将会停止进步,或者收益减少。
超大 LLM 模型 Transformer 的稀疏化
目前规模最大的 LLM 中,有相当比例的模型采取了稀疏(Sparse)结构,比如 GPT 3、PaLM、GLaM 等,GPT 4 大概率也会走稀疏模型路线。之所以采用 Sparse 化的模型,主要好处是它可以极大减少 LLM 的训练时间和在线推理时间。Switch Transformer 论文里指出:在相同算力预算的前提下,使用稀疏化 Transformer,相对 Dense Transformer,LLM 模型的训练速度可以提升 4 倍到 7 倍。为何 Sparse 模型可以加快训练和推理时间呢?这是因为尽管模型参数巨大,但是对于某个训练实例,Sparse 模型通过路由机制,只使用整个参数中的一小部分,参与训练和推理的活跃参数量比较少,所以速度快。
我认为未来超大的 LLM 模型大概率会收敛到稀疏模型。主要有两个原因:一方面,现有研究表明(参考:Large Models are Parsimonious Learners: Activation Sparsity in Trained Transformers),标准的 Dense Transformer 在训练和推理时,它本身也是稀疏激活的,就是说只有部分参数会被激活,大部分参数没有参与训练和推理过程。既然这样,我们不如直接迁移到稀疏模型;另外,毫无疑问 LLM 模型的规模会继续推大,而高昂的训练成本是妨碍其进一步扩大模型的重要阻力,使用稀疏模型可以极大降低超大模型的训练成本,所以随着模型规模越大,稀疏模型带来的收益越明显。考虑到这两个方面,大概率未来更大的 LLM 模型会采用稀疏模型方案。
那为何目前其它大规模模型不走稀疏模型的路线呢?因为 Sparse 模型存在训练不稳定、容易过拟合等问题,不太容易训练好。所以,如何修正稀疏模型面临的问题,设计出更容易训练的稀疏模型,是很重要的未来研究方向。
取经之路:复刻 ChatGPT 时要注意些什么
如果希望能复刻类似 ChatGPT 这种效果令人惊艳的 LLM 模型,综合目前的各种研究结论,在做技术选型时需要重点权衡如下问题:
首先,在预训练模式上,我们有三种选择:GPT 这种自回归语言模型,Bert 这种双向语言模型,以及 T5 这种混合模式 (Encoder-Decoder 架构,在 Encoder 采取双向语言模型,Decoder 采取自回归语言模型,所以是一种混合结构,但其本质仍属于 Bert 模式)。我们应选择 GPT 这种自回归语言模型,其原因在本文范式转换部分有做分析。目前看,国内 LLM 在做这方面技术选型的时候,貌似很多都走了 Bert 双向语言模型或 T5 混合语言模型的技术路线,很可能方向走偏了。
第二,强大的推理能力是让用户认可 LLM 的重要心理基础,而如果希望 LLM 能够具备强大的推理能力,根据目前经验,最好在做预训练的时候,要引入大量代码和文本一起进行 LLM 训练。至于其中的道理,在本文前面相关部分有对应分析。
第三,如果希望模型参数规模不要那么巨大,但又希望效果仍然足够好,此时有两个技术选项可做配置:要么增强高质量数据收集、挖掘、清理等方面的工作,意思是我模型参数可以是 ChatGPT/GPT 4 的一半,但是要想达到类似的效果,那么高质量训练数据的数量就需要是 ChatGPT/GPT 4 模型的一倍(Chinchilla 的路子);另外一个可以有效减小模型规模的路线是采取文本检索(Retrieval based)模型 + LLM 的路线,这样也可以在效果相当的前提下,极大减少 LLM 模型的参数规模。这两个技术选型不互斥,反而是互补的,也即是说,可以同时采取这两个技术,在模型规模相对比较小的前提下,达到超级大模型类似的效果。
第四,超级大模型因为模型规模大,所以训练成本过高,导致很少有机构有能力去做这件事。而且由上文分析可见,继续不断推大 LLM 模型规模是肯定会发生、也应该去做的事情。于是,如何通过技术手段降低 LLM 的训练成本就很重要。LLM 的特征抽取器 Sparse 化是有效降低模型训练及推理成本的技术选择。由此可见,随着模型越来越大,LLM 模型 Sparse 化是一个应该考虑的选项。
第五,ChatGPT 是目前最接近理想 LLM 的技术方案,而理想中的 LLM 应该是以一个几乎无所不能的基础通用大模型作为依托,来支持各种各样的上层任务类型。目前看,支持越来越多的任务类型,主要是通过增加 LLM 预训练数据的多样性来达成的,数据多样性越好,LLM 能够支持的任务类型就越丰富。所以,应该重视通过增加数据多样性来增加 LLM 新能力的思路。
第六,易用的人机操作接口。人类用他们自己习惯的表达方式来描述任务,而 LLM 要能够理解这些 Instruct 的真实含义。另外,也要注意这些 Instruct 是符合人类真实需求的,就是说,要从最终用户那里收集任务表述方式,而不能靠研发人员自己的臆想或猜测。ChatGPT 给我最大的启发其实是这一点,至于是否用增强学习我倒觉得不重要,其它替代技术应该也能做类似的事情。
ChatGPT: 为什么是 OpenAI
为什么是 OpenAI 作出了 ChatGPT,而不是其它机构呢?我们在这里可以做个简单分析。
在本文开头,我们提到了 OpenAI 看待 LLM 的理念。OpenAI 是怎么看待 LLM 的呢?回顾它不断推出的技术,可以看出,它其实从 GPT 1.0 开始,基本就坚定地把 LLM 看做是通往 AGI 的一条必由之路。具体而言,在 OpenAI 眼中,未来的 AGI 应该长这个样子:有一个任务无关的超大型 LLM,用来从海量数据中学习各种知识,这个 LLM 以生成一切的方式,来解决各种各样的实际问题,而且它应该能听懂人类的命令,以便于人类使用。其实对 LLM 发展理念的理解,在前半部分,就是 “构建一个任务无关的超大型 LLM,让它从海量数据中学习各种知识”,这一点几乎是大家的共识,能体现出 OpenAI 眼光的其实是后半部分。
OpenAI 的理念比较超前,对自我定位从一开始就定得比较高,始终坚定不移地探索上述方式是否可以实现 AGI。OpenAI 之所以能作出 ChatGPT,胜在一个是定位比较高,另一个是不受外界干扰,态度上坚定不移。
我们可以回顾下它走的一些关键路程:GPT 1.0 走的是生成模式的自回归语言模型路线,比 Bert 出来的还早些。Bert 证明了:双向语言模型对于很多 NLP 理解类任务,效果比自回归这种单向语言模型效果更好。尽管如此,GPT 2.0 并没有因此切换到双向语言模型这条路上,仍然走文本生成的路,而且开始尝试零示例(zero shot)prompt 和少量示例(few shot)prompt。其实这时候, OpenAI 心目中的 AGI 已经开始浮出水面,逐渐显示出轮廓了。只是因为 zero shot/few shot 效果比 Bert+fine-tuning 差的比较远,所以大家都没太当回事,甚至不理解它为什么要始终坚持走单向语言模型的路线。这个时候,我估计即使是 OpenAI 自己,也不一定能确保这条路肯定能走通。
但是,这不妨碍它继续在这条路上往后走。GPT 3.0 已经展示出了比较强大的 zero shot/few shot prompt 能力,这时候 OpenAI 心目中的 AGI 已经完全漏出水面,轮廓清晰,而且它的效果也证明了这条路,是有较大可能走得通的。GPT 3.0 是一个决定 LLM 发展方向的叉路口和分水岭,与之对应的另外一条路是 “Bert+fine-tuning” 模式。在这个岔路口,不同的从业者选择走上了不同的道路,后面的技术差距也是从这里开始拉开的。很遗憾地是,国内很多从业者选择继续在 “Bert+fine-tuning” 这条路上往后走,这也是造成今天落后局面的一个关键时间节点。再往后,就是 InstructGPT 和 ChatGPT 了,OpenAI 通过 ChatGPT 证明了一点;虽然我们距离真正的 AGI,可能还有很长的路要走,但是通过超大 LLM 走向 AGI 这条路,目前看是可行的。