LLM 基础知识系列 3

发布于 2023-06-08  39 次阅读


原文:通向AGI之路:大型语言模型(LLM)技术精要

潮流之巅:NLP研究范式的转换

范式转换1.0:从深度学习到两阶段预训练模型

原因:具体任务的数据量限制;特征抽取器(LSTM+CNN)的能力限制。

影响 1:中间任务的消亡

按理说,“中间任务”就不应该出现,而之所以会存在,这是NLP技术发展水平不够高的一种体现。在技术发展早期阶段,因为当时的技术相对落后,很难一步做好有难度的最终任务。比如机器翻译,早期技术要做好机器翻译是很困难的,于是科研人员就把难题分而治之,分解成分词、词性标注、句法分析等各种中间阶段,先把每个中间阶段做好,然后再拼起来完成最终任务,这也是没办法的事情。

影响 2:不同研究方向技术路线的统一(Transformer)

范式转换2.0: 从预训练模型走向通用人工智能 (AGI, Artificial General Intelligence)

再者,当我们使用LLM解决某个具体领域问题的时候,应该用我们人类习惯的表达方式,就是说LLM应该理解人类的命令。这体现出让LLM适配人,而不是反过来,让人去适配LLM模型。人适配LLM的典型例子,比如绞尽脑汁去尝试各种不同的prompt,以试图找到好的提示语,才能很好地解决手头问题。关于这点,上图在人类和LLM交互的接口层,举了几个例子,说明什么是好的人使用LLM模型的接口形式。

影响 1:让LLM适配人的新型交互接口

影响 2:很多NLP子领域不再具备独立研究价值

影响 3:更多NLP之外的研究领域将被纳入LLM技术体系

如果站在AGI的视角,参照之前描述的理想LLM模型,它所能完成的任务,不应局限于NLP领域,或某一两个学科领域,理想中的LLM应该是领域无关的通用人工智能模型,它现在在某一两个领域做得好,不代表只能做这些任务。ChatGPT的出现,证明了现在这个时期,我们去追求AGI是有可行性的,而现在是抛开“领域学科”这个思维束缚的时候了。

除了图像与多模态,很明显,其它领域也会逐渐被纳入到理想LLM中来,这个方向方兴未艾,是具备高价值的研究主题。

学习者

求知之路:LLM学到了什么知识

在 Transformer 中

语言知识——浅层(语义、句法):低层、中层

语言知识——抽象(语义):中层、高层

世界知识——事实、常识:中层、高层

其实,你把LLM看作是一种以模型参数体现的隐式知识图谱,如果这么理解,我认为是一点问题也没有的。

记忆之地:LLM如何存取知识

而且这篇文章还指出,Transformer低层对句子的表层模式作出反应,高层对语义模式作出反应,就是说低层FFN存储词法、句法等表层知识,中层和高层存储语义及事实概念知识,这和其它研究结论是一致的。

知识涂改液:如何修正LLM里存储的知识

  • 方法 1:从训练数据的源头来修正知识(成本高)
  • 方法 2:通过一次 fine-tuning 来修正知识(易引发灾难遗忘)
  • 方法3:修改对应模型参数(如何定位?如何修改?)

规模效应:当LLM越来越大时会发生什么

一般我们的直觉是:如果LLM模型在预训练阶段的指标越好,自然它解决下游任务的能力就越强。然而,事实并非完全如此。现有研究已证明,预训练阶段的优化指标确实和下游任务表现出正相关关系,但是并非完全正相关。也就是说,只看预训练阶段的指标,来判断一个LLM模型是否够好,这是不够的。

独立增加训练数据量、模型参数或者训练时间,模型参数都会变好。但在维持总算力不变的情况下,增大其中一种或两种因素,就势必要减少另一种因素。

最终OpenAI选择了同时增加训练数据量和模型参数,但是采用早停策略(early stopping)来减少训练步数的方案。因为它证明了:对于训练数据量和模型参数这两个要素,如果只单独增加其中某一个,这不是最好的选择,最好能按照一定比例同时增加两者,它的结论是优先增加模型参数,然后才是训练数据量。假设用于训练LLM的算力总预算增加了10倍,那么应该增加5.5倍的模型参数量,1.8倍的训练数据量,此时模型效果最佳。

这带给我们如下启示:我们可以选择放大训练数据,并同比例地减少LLM模型参数,以达到在不降低模型效果的前提下,极大缩小模型规模的目的。缩小模型规模有很多好处,比如在应用的时候,推理速度会快很多等,无疑这是一个很有前途的LLM发展路线。

In Context Learning 和 Instruct

In Context Learning 指给出示例,要求回答。

Instruct 指更符合人类表达的方式,如“把这下面句话翻译成英文”。

智慧之光:如何增强LLM的推理能力

  • 基于 Prompt 的方法,通过合适的提示语、提示样本,激发 LLM 本身的推理能力

这侧面说明了一个道理,就是LLM本身是具备推理能力的,只是我们没有办法把它的这种能力激发出来而已,通过合适的提示语来进行两步提示,就在一定程度上可以释放出它的这种潜力。另外,对于中文,很可能存在另外一个黄金提示语,比如“详细解题思路如下”,类似这种,因为中文语料在讲解推理步骤的时候,经常用的引导句和“让我们一步一步来思考”应该是不同的,这是明显的西方说法,而探索出这个中文黄金提示语,其实也是很有必要的。

  • 在预训练过程中引入程序代码,与文本一起参与预训练,进一步增强推理能力

未来之路:LLM研究趋势及值得研究的重点方向

  • 探索LLM模型的规模天花板:各方面条件要求极高

再者,做超大规模的LLM模型,对技术团队的工程实现能力要求是非常高的,也不能认为这事情缺乏技术含量。

  • 增强LLM的复杂推理能力
  • LLM纳入NLP之外更多其它研究领域(多模态)
  • 更易用的人和LLM的交互接口
  • 建设高难度的综合任务评测数据集(体现用户需求;考虑其他领域)
  • 高质量数据工程(数量、质量)
  • 超大LLM模型Transformer的稀疏化

取经之路:复刻ChatGPT时要注意些什么

  1. 预训练模式选择:自回归、双向、混合
  2. 增强推理能力(加入代码)
  3. 要想减少模型参数,就必须有更多高质量数据
  4. 通过技术手段降低训练成本
  5. 重视通过增加数据多样性来增加LLM新能力的思路
  6. 易用的人机操作接口