从毫无存在感到无人不谈,大型语言模型(LLM)的江湖地位在这几年发生了巨变。这个领域的发展令人目不暇接,但也正因如此,人们难以了解还有什么难题有待解决以及哪些领域已有成熟应用。
为了帮助机器学习研究者更快理解 LLM 领域的当前现状并提升他们的生产力,来自伦敦大学学院等多家机构的研究团队不畏繁琐,系统性地总结了 LLM 领域的艰难挑战和成功应用。
LLM 研究大热的现状也在这篇综述论文的参考文献中得到了体现 —— 总共 22 页参考文献,引用了 688 篇论文!
机器之心对这篇综述论文的大致框架进行了整理,以便读者能快速了解 LLM 的挑战和应用,更详细的论述和具体文献请参阅原论文。
论文:https://arxiv.org/abs/2307.10169
整体而言,这篇综述论文聚焦于两大主题:(1) 挑战:哪些问题仍未解决?(2) 应用:LLM 当前的应用以及这些应用面临哪些挑战?对于主题 (1),研究者将 LLM 面临的挑战分成了三个大类:设计、行为和科学。对于主题 (2),研究者探索了聊天机器人、计算生物学、计算生物学、计算机编程、创意工作、知识工作、法律、医学、推理、机器人和社会科学等领域。
图 1:LLM 挑战概况。LLM 的设计与部署前做出的决策有关。LLM 行为方面的挑战发生在部署阶段。科学方面的挑战会阻碍学术进步。
研究者声明,这篇论文梳理的内容带有个人倾向性,并且假定读者已经熟悉 LLM 的工作方式。此外,他们更关注基于文本数据训练的模型。他们的综述论文也专注于技术方面,不会讨论 LLM 在政治、哲学或道德方面的议题。
挑战
难以理解的数据集
对于 LLM 而言,其预训练数据集的规模非常大,任何个人都无法彻底阅读其中的文档或评估这些文档的质量。这方面涉及的问题包括:
- 有许多非常相近几乎算是重复的数据;
- 基准数据遭受污染;
- 某些信息可用于识别个人的身份;
- 预训练的数据域混在一起;
- 微调任务混在一起的情况难以处理。
表 1:所选预训练数据集概况
这些年来,预训练数据集变得更加难以理解了:它们的规模和多样性都在迅速增长,并且不是所有数据集都是公开可用的。
依赖 token 化器
token 化器带来了一些挑战,比如计算开销、语言依赖性、对新词的处理、固定词汇量、信息丢失和人类可解释性低。
图 2:依赖 token 化器的典型缺点。(1) token 化器的训练步骤涉及到复杂繁琐的计算,比如多次遍历整个预训练数据集,并且还会导致对预训练数据集的依赖,这在多语言环境中是个尤其麻烦的问题。(2) LLM 的嵌入层 E 和输出层 W 与词汇量有关,比如在 T5 模型中词汇占到了模型参数数量的 66% 左右。
预训练成本高
通过增加计算预算可以提升模型的性能表现,但如果模型或数据集大小固定,则增长比率会降低,呈现收益递减的幂律趋势。
图 3:掩码策略。每一行表示一个特定输出 y_i(行)可以考虑哪些输入 x_i(列)(红色表示单向,蓝色表示双向)。
图 4:根据预训练目标进行自监督式的数据构建,来自 Tay et al.
微调开销
需要大量内存:对整个 LLM 进行微调时需要预训练时一样大的内存,但很多从业者无法办到。
存储和加载微调 LLM 的开销:当通过全模型微调让 LLM 适应当前任务时,必须存储模型的一个副本(这需要数据存储空间),用于任务时还需要进行加载(需要为此分配内存)。
图 5:针对下游具体任务对 LLM 进行微调。(a) 展示了简单普通的微调,这需要更新整个模型,从而为每个任务生成一个新模型。(b) 展示了 PEFT 方法,其为每个任务学习一个模型参数子集,然后配合固定的基础 LLM 使用。针对不同任务执行推理时,可以复用同一个基础模型。
全矩阵乘法:若要对 LLM 实现参数高效的微调,就需要在整个网络中执行完整的前向 / 后向通过。
推理延迟高
LLM 的推理延迟依然很高,原因包括并行性低和内存足迹大。
上下文长度有限
上下文长度有限使得 LLM 难以很好地处理长输入,让 LLM 不能很好地助力小说或教科书写作或总结等应用。
prompt 不稳定
prompt 句法的变化导致的结果变化对人类来说并不直观,有时候输入一点小变化就会导致输出大变样。
图 6:所选的 prompt 设计方法概况,分为单轮和多轮 prompt 设计。
幻觉问题
幻觉问题是指生成的文本虽然流畅又自然,但却不忠实于内容来源(内在问题)和 / 或不确定(外在问题)。
图 7:GPT-4 的幻觉问题示例,访问日期:02/06/2023。
图 8:用户与 LLM 互动时的 a) 内在和 b) 外在幻觉示例。示例 a) 中,LLM 给出的答案与给定上下文相矛盾,而在 b) 中,上下文没有提供足够信息,无法知道生成的答案是否相矛盾。
图 9:检索增强型 GPT-4 示例,这是幻觉问题的一种潜在解决方法,访问日期:02/06/2023。
行为不对齐
LLM 常会生成与人类价值或意图不对齐的输出,这可能导致意想不到的负面后果。
图 10:对齐。这里将对齐方面的现有研究工作分为两类:检测未对齐的行为和实现模型对齐的方法。
过时的知识
LLM 在预训练期间学到的事实信息可能不准确或随着时间的推移而变得过时。但是,使用更新的预训练数据重新训练模型的成本不低,而试图在微调阶段忘记过时事实并学习新知识的难度也不小。
图 11:知识过时问题的解决方法有:S.1) 通过对基础检索索引使用热交换,使其获得最新知识,从而增强检索能力;S.2) 通过应用模型编辑技术。
评估方法不稳定
对基础 prompt 或评估协议进行少量修改就可能导致结果出现巨大变化。
基于静态的、人工编写的 Ground Truth 来执行评估
随着时间的推移,静态基准的实用性越来越低,因为模型的能力在变化,而更新这些基准需要人类来编写 Ground Truth。
难以分辨生成的文本和人类编写的文本
随着 LLM 的发展,人们越来越难以区分文本是来自 LLM 还是人类。
而就算文本已经被发现是 LLM 生成的,还能通过所谓的转述攻打(Paraphrasing Attacks)绕开,即用另一个 LLM 重写生成的文本,使结果保留大致一样的意思,但改变词或句子架构。
无法通过模型或数据扩展解决的任务
某些任务似乎无法通过进一步扩展数据或模型来解决,比如一些组合任务(Compositional tasks)。
缺乏实验设计
表 2 列出了涉及这方面的一些学术论文。许多研究工作都没有做控制变量实验,如果模型的设计空间很大,那么这个问题就显得尤为严重。研究者认为这会阻碍对 LLM 的科学理解和技术进步。
表 2:所选 LLM 概况。N/A 表示细节缺失。对于研究了多种模型大小的论文,这里仅给出了最大的模型。对于 Tokenizer 项为 SP 的论文,研究者表示无法从相应论文中得知使用的是 BPE 还是 Unigram token 化方法。
对照实验:介绍新 LLM 的论文通常缺乏对照实验,这可能是由于训练足够多模型的成本过高。
(设计)维度诅咒:通常而言,LLM 实验的设计空间的维度很高。
难以复现
不可重复的训练流程:一般来说,现在常用的训练策略是并行化的,即会将训练过程分散到许多加速器上,而这个过程是非确定性的,这会使得我们难以复现 LLM 的训练过程。
不可重现的 API:以推理 API 的形式提供服务的模型通常是不可重现的。
应用
下面将聚焦于 LLM 的应用领域,其中重点关注各领域常见的应用架构。
此外还会强调每个应用领域所面临的关键局限。
图 12:LLM 应用概况。不同颜色表示不同的模型适应程度,包括预训练、微调、提示策略、评估。
聊天机器人
通用型聊天机器人(对话智能体)包含多种任务,如信息检索、多轮交互和文本生成(包括代码)。
保持连贯性:多轮交互使聊天机器人很容易「忘记」对话中更早的部分或重复自己说过的话。
推理延迟高:推理延迟高的话,用户体验会大打折扣,尤其是要和聊天机器人进行多轮对话时。
计算生物学
计算生物学关注的是表示相似序列建模和预测挑战的非文本数据。
难以迁移到下游任务:蛋白质语言模型的最终目标是将它们部署到药物设计等现实项目中。评估通常针对较小和 / 或专门的数据集,而不考虑模型如何有助于生体外或生体内的蛋白质设计。
上下文窗口有限:最大的基因组的 DNA 序列远远长于现有基因组 LLM 的上下文窗口,这会让研究者难以使用这些 LLM 建模某些基因组类型。
计算机编程
LLM 最先进和广泛采用的一大应用是用各种编程语言生成和补完计算机程序。
长程依赖:由于上下文长度有限,LLM 通常无法考虑跨代码库的长程依赖关系。
图 13:API 定义框架。这张示意图展示了一个 API 定义框架:为了解决特定任务,可以在 prompt 中提供一个通用的 API 定义,从而让 LLM 可以使用外部代码或工具。这种方法的扩展包括要求 LLM 实现 API 定义中的功能(红色),以及提示 LLM 自己去调试任何不执行的 API 代码(绿色)。
创意工作
在创意工作方面,LLM 主要被用于生成故事和剧本。
上下文窗口有限:由于上下文窗口有限,当前的 LLM 无法完整地生成长作品,这会限制它们在长作品方面的应用,也催生了对模块化 prompt 设计的需求。
图 14:模块化 prompt 设计。通过一系列分立的 prompt 和处理步骤,LLM 可以执行无法放入单个上下文窗口中的任务以及解决无法通过单一 prompt 步骤解决的任务。
知识工作
随着 LLM 在特定领域的知识任务(比如法律或医学)上的能力逐渐得到证明,人们也越来越有兴趣将 LLM 用于更广泛的知识工作。这些潜在应用的范围非常广泛,据 Eloundou et al. 估计,美国 80% 的劳动力所从事的工作中至少有 10% 的任务会受到 LLM 的影响。
数值推理:LLM 通常在涉及数量的任务上表现更差,这可能会限制它们在金融服务或会计等知识工作领域的应用。
法律
LLM 在法律领域的应用与在医学领域的有许多相似之处,包括法律问答和法律信息提取。但也有人提出过其它特定领域的应用,比如案件结果预测、法律研究和法律文本生成。
信息过时问题:由于法律会不断更新,新的判例也会不断出现,因此训练 / 检索数据经常会遇到过时的问题。
医学
医学领域已经提出了许多 LLM 应用,包括医学问答、临床信息提取、索引、分诊、和健康记录管理。
幻觉和偏见:医疗领域的安全性是至关重要的,这意味着出现幻觉的可能性会极大地限制当前的用例。此外,为了降低 LLM 延续现有临床数据集中的偏见的风险,还需要进一步的研究工作。
推理
数学和算法任务往往需要不同于传统 NLP 任务的能力集合,比如理解数学运算、复杂的多步推理和更长期的规划。因此,现在人们也在努力研究如何将 LLM 用于这些任务以及如何提升 LLM 的能力。
性能表现不及人类:在推理基准任务上,现有的 LLM 难以比肩人类。
机器人和具身智能体
LLM 也已经开始被集成到机器人应用中,以为机器人提供高层规划和语境知识能力。
单一模态问题:尽管 LLM 可以帮助机器人或智能体理解指令和增添高层规划能力,但它们却无法直接学习图像、音频或其它感官模态,这就限制了它们的应用。
社会科学和心理学
快速发展的 LLM 也在心理学和行为科学领域找到了潜在的应用场景。研究者分析了已有的文献,找到了 LLM 在心理学和行为科学领域得到使用的三个主要方向:使用 LLM 来模拟人类行为实验、分析 LLM 的人格特质、使用 LLM 作为建模社会关系的人工智能体。如图 15 所示。
图 15:LLM 在社会科学和心理学领域的用例。
社会偏见:由于 LLM 的训练数据中存在不平衡的观点和意见,因此会使其倾向有偏见的人类行为。
生成合成数据
LLM 具备在上下文中学习的能力,因此可以通过 prompt 让其生成合成数据集,用于训练更小型的特定领域的模型。
带幻觉的分布:由于我们现在还无法验证生成的合成数据是否能否代表对应的真实世界数据的分布,因此目前还难以使用 LLM 生成完整的合成数据集。