- +1
理解大语言模型——10篇论文的简明清单
原创 Raschka 集智俱乐部
导语
理解大语言模型的一份最短阅读清单,应该包含哪些论文?近日一位博主梳理了10篇里程碑式的论文。
关键词:语言模型,机器学习
Sebastian Raschka | 作者
范思雨 | 译者
邓一雪 | 编辑
大语言模型(Large language models,LLMs)如今已成为公众关注的焦点。在短短五年时间内,基于 Transformer结构的大语言模型几乎彻底改变了自然语言处理领域的研究。此外,这些模型也开始在计算机视觉和计算生物学等领域产生革命性影响。
考虑到大语言模型的出现对每个人的研究产生了如此大的影响,我想为正在入门机器学习的学界和业界朋友列出一份阅读清单。在下文中,我将会给出一份仅包含学术论文的阅读清单,并按照论文发表的时间顺序依次介绍。当然,还有很多其他有用的资源供各位读者参考,例如:
• Jay Alammar 解释 Transformer 模型的文章
http://jalammar.github.io/illustrated-transformer/
• Lilian Weng 更偏技术性的博客文章
https://lilianweng.github.io/posts/2020-04-07-the-transformer-family/
• Xavier Amatriain 关于 Transformer 系列模型的科普文章
https://amatriain.net/blog/transformer-models-an-introduction-and-catalog-2d1e9039f376/
• Andrej Karpathy(特斯拉前AI总监)训练中型GPT的开源代码库(nanoGPT)
https://github.com/karpathy/nanoGPT
• 以及由我自己授课的系列讲座视频和书籍章节
https://sebastianraschka.com/blog/2021/dl-course.html#l19-self-attention-and-transformer-networks
https://github.com/rasbt/machine-learning-book/tree/main/ch16
理解大语言模型的结构和任务
如果你是刚刚接触 Transformer 系列模型或者大语言模型,那么我们最好从头开始介绍。
(1)结合对齐和翻译的神经网络机器翻译模型
论文题目:Neural Machine Translation by Jointly Learning to Align and Translate (2014)
论文作者:Bahdanau, Cho, Bengio
论文地址:https://arxiv.org/abs/1409.0473
如果时间充足,我建议从这篇论文开始读起。这篇文章引入了一种注意力机制(attention mechanism),用于提升递归神经网络(RNN)的长序列建模能力。这使得 RNN 能够更准确地翻译更长的句子——这也是后来开发出原始 Transformer 模型的动机。
(2)注意力机制
论文题目:Attention Is All You Need (2017)
论文作者:Vaswani, Shazeer, Parmar, Uszkoreit, Jones, Gomez, Kaiser, and Polosukhin
论文地址:https://arxiv.org/abs/1706.03762
这篇论文介绍了原始 Transformer 模型的结构。该模型由编码器和解码器两部分组成,这两个部分在后续模型中分离成两个独立的模块。此外,该论文还引入了缩放点积注意力机制(Scaled Dot Product Attention Mechanism)、多头注意力机制(Multi-head Attention Blocks)和位置编码(Positional Input Encoding)等概念,这些概念仍然是现代 Transformer 系列模型的基础。
(3)BERT: 语言理解的深度双向 Transformer 预训练
论文题目:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (2018)
论文作者:Devlin, Chang, Lee, and Toutanova
论文地址:https://arxiv.org/abs/1810.04805
在原始的 Transformer 模型之后,大语言模型研究开始向两个方向分化:基于编码器结构的 Transformer 模型用于预测建模任务,例如文本分类;而基于解码器结构的 Transformer 模型用于生成建模任务,例如翻译、摘要和其他形式的文本内容生成。
上述 BERT 论文引入了掩码语言建模(Masked-language Modeling)概念,除此以外,下句预测(Next-Sentence Prediction)则是一种很重要的基于解码器结构的预训练任务。如果你对这一研究分支感兴趣,我建议你继续研究 RoBERTa 模型,它通过取消下句预测任务简化了预训练目标。
论文题目:RoBERTa: A Robustly Optimized BERT Pretraining Approach
论文地址:https://arxiv.org/abs/1907.11692
(4)通过生成预训练改进语言理解
论文题目:Improving Language Understanding by Generative Pre-Training (2018)
论文作者:Radford and Narasimhan
论文地址:https://www.semanticscholar.org/paper/Improving-Language-Understanding-by-Generative-Radford-Narasimhan/cd18800a0fe0b668a1cc19f2ec95b5003d0a5035
这篇关于生成式预训练模型(Generative Pre-Training,GPT)的文章介绍了基于解码器的模型结构和下句预测的预训练任务。BERT 可以被认为是双向 Transformer 模型,因为其采用了掩码语言建模,GPT 则是单向自回归模型。GPT 的嵌入也可用于分类任务,GPT 可被称为现在最具影响力的各类大语言模型的核心,例如 ChatGPT。
如果你对这个研究方向感兴趣,我建议你继续阅读 GPT-2 和 GPT-3 的相关论文。这两篇论文表明大语言模型能够进行零样本学习和少量样本学习,并强调了大型语言模型的涌现能力(Emergent Ability)。GPT-3 也是训练现代大语言模型的基准模型,例如 ChatGPT。我们将在后续单独介绍之后孕育出 ChatGPT 的模型—— InstructGPT。
GPT-3 论文
论文题目:Language Models are Few-Shot Learners
论文地址:https://arxiv.org/abs/2005.14165
GPT-2 论文
论文题目:Language Models are Unsupervised Multitask Learners
论文地址:https://www.semanticscholar.org/paper/Language-Models-are-Unsupervised-Multitask-Learners-Radford-Wu/9405cc0d6169988371b2755e573cc28650d14dfe
(5)BART:用于自然语言生成、翻译和理解的降噪序列对序列预训练
论文题目:BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension (2019)
论文作者:Lewis, Liu, Goyal, Ghazvininejad, Mohamed, Levy, Stoyanov, and Zettlemoyer
论文地址:https://arxiv.org/abs/1910.13461
如前所述,类似BERT这样基于编码器结构的大语言模型通常用于预测建模任务。而类似 GPT 这样基于解码器结构的大语言模型则更适合文本生成任务。为了兼顾两类模型的优点,这篇 BART 论文结合了编码器和解码器两个部分(类似于本清单中提到的第二篇论文)。
规模法则和模型效率提升
如果你想了解更多有关提升 Transformer 模型效率的方法,我推荐阅读2020年的 Efficient Transformers: A Survey 一文,然后再阅读2023年的 A Survey on Efficient Training of Transformers。此外,以下是我认为有趣且值得深入研究的两篇文章。
(6)Flash Attention:具有 IO 感知功能的快速高效的精确注意力机制
论文题目:Flash Attention: Fast and Memory-Efficient Exact Attention with IO-Awareness (2022)
论文作者:Dao, Fu, Ermon, Rudra, and Ré
论文地址:https://arxiv.org/abs/2205.14135
尽管大多数 Transformer 论文并不考虑用其他机制替换缩放点积机制来实现自注意力(Self-Attention),但 Flash Attention 是我最近看到的最常被引用的新机制之一。
(7)Cramming:利用单个 GPU 单日训练语言模型
论文题目:Cramming: Training a Language Model on a Single GPU in One Day (2022)
论文作者:Geiping and Goldstein
论文地址:https://arxiv.org/abs/2212.14034
在这篇论文中,研究者在单个GPU上对掩码语言模型/基于编码器的大语言模型(这里指BERT)进行了24小时的训练。相比之下,2018年的BERT论文使用了16个TPU进行了四天的训练。有趣的是,虽然较小的模型具有更高的吞吐量(throughput),但它们学习的效率也更低。因此,更大的模型不一定需要花费更多的训练时间就能达到特定的预测性能阈值。
(8)训练计算最优的大语言模型
论文题目:Training Compute-Optimal Large Language Models (2022)
论文作者:Hoffmann, Borgeaud, Mensch, Buchatskaya, Cai, Rutherford, de Las Casas, Hendricks, Welbl, Clark, Hennigan, Noland, Millican, van den Driessche, Damoc, Guy, Osindero, Simonyan, Elsen, Rae, Vinyals, and Sifre
论文地址:https://arxiv.org/abs/2203.15556
这篇论文介绍了 Chinchilla 模型,它包含 700 亿个参数。在生成建模任务中,该模型表现优于包含 1750 亿个参数的 GPT-3 模型。然而,这篇论文的主要论点是现代大语言模型存在“训练不足”的问题。
该论文定义了大语言模型训练的线性缩放律(Linear Scaling Law)。例如,虽然 Chinchilla 的参数量只有 GPT-3 的一半,但它的表现却优于 GPT-3。因为它是在 1.4 万亿个词语标记(而不仅仅是 3000 亿个)上进行训练的。换句话说,词语标记的数量与模型大小一样重要。
对齐——引导大语言模型完成训练目标
近年来,我们看到许多表现出色的大语言模型,它们可以生成非常贴近真实的文本内容(例如GPT-3和Chinchilla)。就常用的预训练范式而言,我们似乎已经达到了一个上限。
为了使语言模型发挥更大作用,减少错误信息和有害语言的生成,研究者设计了新的训练范式来对预训练的基础模型进行微调。
(9)使用人类反馈进行微调训练语言模型在各种任务上与用户意图保持一致
论文题目:Training Language Models to Follow Instructions with Human Feedback (2022)
论文作者:Ouyang, Wu, Jiang, Almeida, Wainwright, Mishkin, Zhang, Agarwal, Slama, Ray, Schulman, Hilton, Kelton, Miller, Simens, Askell, Welinder, Christiano, Leike, and Lowe
论文地址:https://arxiv.org/abs/2203.02155
在这篇被称为 InstructGPT 的论文中,研究者使用了一种利用人类反馈进行强化学习的机制(Reinforcement Learning with Human Feedback ,RLHF)。他们基于预训练的 GPT-3 模型,使用监督学习对人类生成的提示响应对( Prompt-Response Pairs)对模型进行进一步微调(步骤1)。接下来,他们要求人类对模型的输出进行排序以训练奖励模型(步骤2)。最后,他们使用奖励模型,通过近端策略优化(Proximal Policy Optimization)(步骤3)的强化学习方法,来调整经过预训练和微调的GPT-3模型。
顺便说一句,这篇论文也被称为阐述 ChatGPT 思想内核的论文——根据最近的说法,ChatGPT是InstructGPT的扩展版本,它实现了在更大的数据集上的微调。
(10)Constitutional AI:AI 反馈达成无害性
论文题目:Constitutional AI: Harmlessness from AI Feedback (2022)
论文作者:Yuntao, Saurav, Sandipan, Amanda, Jackson, Jones, Chen, Anna, Mirhoseini, McKinnon, Chen, Olsson, Olah, Hernandez, Drain, Ganguli, Li, Tran-Johnson, Perez, Kerr, Mueller, Ladish, Landau, Ndousse, Lukosuite, Lovitt, Sellitto, Elhage, Schiefer, Mercado, DasSarma, Lasenby, Larson, Ringer, Johnston, Kravec, El Showk, Fort, Lanham, Telleen-Lawton, Conerly, Henighan, Hume, Bowman, Hatfield-Dodds, Mann, Amodei, Joseph, McCandlish, Brown, Kaplan
论文地址:https://arxiv.org/abs/2212.08073
在这篇论文中,研究者将对齐思想(Alignment)又往前推了一步,提出了一种训练机制,用于创建一个“无害”的人工智能系统。研究者提出了一种自我训练机制,这种机制基于一系列规则(由人类提供),而不是直接人类监督。这篇文章与前文提到的 InstructGPT 一样采用了强化学习方法。
附加阅读清单:
基于人类反馈的强化学习(RLHF)
尽管 RLHF 可能无法解决大语言模型当前面临的所有问题,但它仍然被认为是最佳的选择,特别是与上一代大语言模型相比。未来,我们会有很大希望看到更多创造性的方法将 RLHF 应用到大语言模型的其他领域。
上面的两篇论文,InstructGPT 和 Constitutional AI,都使用了 RLHF。毋庸置疑,RLHF 代表了未来的研究趋势。如果你想了解 RLHF,本节提供了额外的参考资料。(从技术层面讲,Constitutional AI 这篇论文使用了 AI 而不是人类反馈,但它使用了类似 RL 的概念。)
(11)深度强化学习的异步方法
这篇文章引入了策略梯度算法,以替代作为基于深度学习的强化学习中的 Q-learning 方法。
论文题目:Asynchronous Methods for Deep Reinforcement Learning (2016)
论文作者:Mnih, Badia, Mirza, Graves, Lillicrap, Harley, Silver, and Kavukcuoglu
论文地址:https://arxiv.org/abs/1602.01783
(12)近端策略优化
这篇文章提出了一种改进的近端策略强化学习过程,该过程比上面的普通策略优化算法更具数据高效性和可扩展性。
论文题目:Proximal Policy Optimization Algorithms (2017)
论文作者:Schulman, Wolski, Dhariwal, Radford, Klimov
论文地址:https://arxiv.org/abs/1707.06347
(13)借助人类反馈学习总结
论文题目:Learning to Summarize from Human Feedback (2022)
论文作者:Stiennon, Ouyang, Wu, Ziegler, Lowe, Voss, Radford, Amodei, Christiano
论文地址:https://arxiv.org/abs/2009.01325
这篇文章介绍了实现 RLHF 的三步过程:
1. 预训练 GPT-3 模型
2. 对模型进行监督微调
3. 以有监督方法训练奖励模型,然后使用该奖励模型叠加近端策略优化方法以训练出微调模型。
这篇文章还表明,与常规的监督学习相比,使用近端策略优化的强化学习可以训练出更好的模型。
需要注意的是,前文中讨论的 InstructGPT 论文(9)对 RLHF 使用了类似的三步过程,但它不是总结文本,而是侧重于根据人工指令生成文本。此外,它还使用打标签的方法对模型输出进行从好到坏的排序(而不仅仅是人类和人工智能生成的文本之间的比较)。
结论以及延伸阅读
在本文中,我尝试提供一份简洁、有用的阅读清单,于是挑选了10篇核心文章(附加三篇RLHF的文章)来帮助各位了解大语言模型的设计、结构演变以及模型限制。
想要了解更多内容,我建议继续阅读上述论文的参考文献。或者,参考以下资源作为延伸阅读:
GPT 的开源替代品
BLOOM: A 176B-Parameter Open-Access Multilingual Language Model (2022), https://arxiv.org/abs/2211.05100
OPT: Open Pre-trained Transformer Language Models (2022), https://arxiv.org/abs/2205.01068
ChatGPT 的替代品
LaMDA: Language Models for Dialog Applications (2022), https://arxiv.org/abs/2201.08239
(Sparrow) Improving Alignment of Dialogue Agents via Targeted Human Judgements (2022), https://arxiv.org/abs/2209.14375
BlenderBot 3: A Deployed Conversational Agent that Continually Learns to Responsibly Rngage, https://arxiv.org/abs/2208.03188
大语言模型在计算生物学中的应用
ProtTrans: 通过自监督学习和高性能计算破解生命的代码语言
ProtTrans: Towards Cracking the Language of Life’s Code Through Self-Supervised Deep Learning and High Performance Computing (2021), https://arxiv.org/abs/2007.06225
使用 AlphaFold 进行高精度蛋白质结构预测
Highly Accurate Protein Structure Prediction with AlphaFold (2021), https://www.nature.com/articles/s41586-021-03819-2
利用大语言模型生成跨多个家族和功能的蛋白质序列
Large Language Models Generate Functional Protein Sequences Across Diverse Families (2023), https://www.nature.com/articles/s41587-022-01618-2
原文链接:
https://sebastianraschka.com/blog/2023/llm-reading-list.html
原标题:《理解大语言模型——10篇论文的简明清单》
本文为澎湃号作者或机构在澎湃新闻上传并发布,仅代表该作者或机构观点,不代表澎湃新闻的观点或立场,澎湃新闻仅提供信息发布平台。申请澎湃号请用电脑访问http://renzheng.thepaper.cn。
- 报料热线: 021-962866
- 报料邮箱: news@thepaper.cn
互联网新闻信息服务许可证:31120170006
增值电信业务经营许可证:沪B2-2017116
© 2014-2024 上海东方报业有限公司