公众号:Halo 咯咯,欢迎关注~
简介
很难说自然语言处理(NLP)的旅程是什么时候开始的。根据维基百科的文章《自然语言处理的历史》[1],它可能始于 17 世纪,当时莱布尼茨和笛卡尔试图理解不同语言中单词之间的关系,也可能是由艾伦·图灵的工作发起的,包括他的问题“机器能思考吗? ”以及他著名的模仿游戏[2]。
众所周知,计算机科学家不断突破 NLP 的界限,旨在创造真正理解人类语言的机器,从 1967 年开发 Eliza 等基于规则的基本聊天机器人,一直到发明更复杂的深度学习方法。 3]。图 1 展示了大型语言模型 (LLM) 的粗略时间表。 1967 年,第一个聊天机器人 Eliza 诞生。它使用模式匹配和关键字识别来模拟人类语言理解[3]。 1997年,长短期记忆(LSTM)网络被发明[4]。 LSTM 是一种深度学习方法,它考虑了语言的顺序性质,并具有记住或忘记信息以提高语言理解的能力。如今,LSTM 仍然是一种有价值的工具,也是涉及顺序数据的任务的不错选择。发展仍在继续,最大的突破发生在 2017 年,谷歌突破性的 Transformer 架构迎来了自然语言处理和理解的新时代[5]。
如今,LLM的进步正以闪电般的速度发生。激烈的竞争推动创新,每天都有新的突破出现。图 2 说明了LLM在现代世界的持续发展。如图所示,这个时代始于 BERT、GPT-2、GPT-3 和 PaLM 等模型。新版本的 LLM 模型具有更高的性能和更多的参数。我们现在可以自信地断言,这些努力已经取得了重大成就,谷歌的 Gemini 或 GPT-4 等模型所展示的功能就证明了这一点。
从Transformer到LLM
LLM代表了自然语言理解领域的重大进步,它建立在传统任务的基础上,而传统任务基本上是序列建模问题。在书面和口语中,单词按照特定的顺序排列来传达含义。这种顺序结构对于理解单词与句子或文本的整体上下文之间的关系至关重要。例如,在英语中,简单句子中的词序通常是主语-动词-宾语,例如:
“The cat (subject) chases (verb) the mouse (object).”
改变词序可以改变句子的意思。在更复杂的句子中,语言的顺序性质对于理解句子不同部分之间的关系变得更加重要。
在序列建模中,目标是以连贯且有意义的方式理解和生成标记序列(单词、字符等)。
以下是可被视为序列建模任务的 NLP 问题的一些示例:
- 机器翻译:在机器翻译中,目标是将单词序列从一种语言转换为另一种语言。
- 命名实体识别(NER):NER是对文本中的命名实体(如人名、组织名称等)进行识别和分类的任务。
- 词性 (POS) 标记:词性标记涉及为句子中的每个单词分配词性标记(例如名词、动词、形容词等)。
- 文本生成:文本生成任务涉及生成连贯且上下文相关的文本序列。
- 情感分析:情感分析涉及确定一段文本的情感(积极、消极、中立)。
在所有这些情况下,基本任务是对序列中元素(单词、字符等)之间的关系进行建模,以便理解文本的底层结构和含义。
在变形金刚时代之前,有几种最先进的方法可以解决这种顺序行为,例如循环神经网络 (RNN)、长短期记忆 (LSTM) 和门控循环单元 (GRU)。这些技术可以提高性能;然而,仍然存在一些挑战,例如:
- 并行计算困难:基于RNN的传统序列转导模型按顺序处理输入序列,限制了并行化并导致训练时间较长。
- 长序列的信息丢失:常用于序列转换任务的 RNN 由于梯度消失问题而难以捕获序列中的长程依赖性。这是因为,通过他们的机制,他们倾向于将较低的相关性分配给较长句子中较远的单词。
转换器使用注意力机制,使其能够并行捕获序列中单词之间的关系,从而显着减少计算时间。注意力机制还允许模型关注输入序列中的所有位置,使其能够更有效地捕获长期依赖关系。
Transformers
Transformer 是论文“Attention is All You Need” [7]中介绍的一类神经网络架构。顾名思义,Transformer 是一个完全依赖注意力机制来计算其输入和输出表示的模型,而不使用序列对齐的 RNN 或卷积。
什么是注意力机制?
顾名思义,注意力告诉模型要关注信息的哪些部分来创建语言的上下文表示。注意力机制是计算每条信息(语言模型上下文中的标记)重要性的函数。它需要两个输入:一个查询(问题)和一个以键值对表示的信息列表。输出是这些信息元素的加权组合,其中分配给每个信息元素的权重反映了其与查询的相关性。这种相关性由兼容性函数确定,该函数将查询与每个信息项进行比较。
这是一个有助于理解其工作原理的类比:想象一下使用搜索引擎。假设您想在 YouTube 上查找 LLM 内容。首先,输入您的查询,在本例中为“LLM”。然后 YouTube 会推荐可能与您的关键字相关的视频。这些视频有标题和内容。我们可以将标题视为键,将相应的内容视为值。最后,您根据搜索词与每个视频的标题和内容之间的关系,选择与您的查询最相关的视频标题(键)。您很可能会选择相关性最高的一项。在这种情况下,您可以选择图 3 中所示的第三个视频。
注意力机制有多种类型,每种都是为特定目的而设计的。例如,论文介绍了编码器-解码器转换器(图 4),其设计用于解决序列到序列的任务,例如机器翻译。这种 Transformer 利用三种类型的注意力:自注意力、编码器-解码器注意力和屏蔽自注意力。本文不会解释每种类型的注意力机制的设计。更多细节请参考原论文[7]。
编码器-解码器 Transformer
编码器-解码器变压器由 2 个主要部分组成:编码器块(图的左侧)和解码器块(图的右侧)。编码器块处理输入序列并使用自注意力提取其上下文表示。另一方面,解码器块负责使用编码器-解码器注意力,根据编码器学习的上下文表示生成输出序列。此外,解码器使用另一种称为屏蔽自注意力的注意力类型自回归处理输出序列,一次生成一个令牌,同时关注先前生成的令牌和编码器的输出。
变压器架构的设计可以根据具体应用而有所不同。例如,BERT(来自 Transformers 的双向编码器表示)仅由 Transformer 的编码器组件组成。编码器双向处理输入序列,使其能够从左右方向捕获上下文。另一方面,GPT 被设计为仅利用 Transformer 的解码器组件来自回归生成输出序列,这意味着它根据先前生成的标记一次预测一个标记。
LLMs
尽管有许多开源文本数据集可用,但 NLP 任务的主要挑战仍然是标记数据的短缺。传统上,大多数解决方案依赖于需要手动标记数据的监督学习方法。然而,OpenAI 在其题为“通过生成预训练提高语言理解”的工作中引入了半监督方法[8]。这种方法利用大量未标记数据来构建无监督预训练模型,然后使用带标记数据的监督学习针对特定任务进行微调。
Our goal is to learn a universal representation that transfers with little adaptation to a wide range of tasks. (Radford et al., 2018)
无监督预训练
首先,语言模型利用 Transformer 解码器利用大规模未标记数据来学习通用语言表示,如图 5 所示(左)。在此过程中,模型被训练为在给定前面的标记的情况下预测文本序列中的下一个标记。在训练期间,模型被输入标记序列,并且更新模型的参数以最大化预测每个序列中正确的下一个标记的可能性。
监督微调
这些预先训练的模型参数可以适用于各种下游任务,例如文本分类或问答。在这里,模型在标记数据集(表示为输入集 X 和输出集 y)上进行微调。输入从第一步开始就通过预先训练的模型进行输入。然后进一步训练模型以找到最佳参数来准确预测所需的输出 (y)。
微调的架构和输入标记数据的格式可能因任务而异(如图 5 右所示)。例如,由于预测输出的不同性质,与问答任务相比,文本分类任务可能需要不同的微调架构。
以下是微调架构和输入标记数据的相应格式的一些示例。
示例1:问答
输入输出的一般格式为:
问:澳大利亚的首都是哪座城市?
答:澳大利亚的首都是堪培拉。
由于预训练模型的训练目的是预测令牌序列中的下一个令牌,因此需要将数据的形式转换为所需的表示形式,例如:
<问题>澳大利亚的首都是哪座城市?<答>澳大利亚的首都是堪培拉<完>。
示例 2:语义文本相似度 (STS)
目标是衡量句子对之间的语义相似性或相关性程度。对于这个任务,有两个给定的句子:
句子一:太阳西沉,把天空染成橙色。
句子2:夕阳给天空染上橙色的色调。
对于此类任务,两个句子的比较不依赖于句子的特定顺序。因此,数据可以修改为:
<开始>太阳西沉,把天空染成橙色。<|>夕阳给天空染上了橙色的色调。<完>
<开始>夕阳将天空染成橙色。<|>太阳西沉,把天空染成橙色。<完>
每个文本序列都独立地输入到模型中,并产生两个最终的转换器块激活。然后,将组件连接起来,然后送入最终的线性层。
现阶段,LLM既具备普遍代表性,又具有适应下游任务的能力。然而,创建像 ChatGPT 或 Gemini 这样的聊天机器人需要通过强化学习、人类反馈集成和指令微调强化训练等技术进一步完善。这种微调涉及向模型呈现各种场景,并根据它们与所需对话结果(例如连贯性、相关性和适当性)的一致性来调整其响应。
LLMs未来展望
LLM是自然语言处理和理解研究漫长旅程的一项成就。它们生成类似人类文本的能力使它们能够充当有用的个人助理,帮助我们写作、回答问题,甚至起草创意。此外,与 RAG 和 LangChain 等外部工具的集成可将效率提升到一个新的水平,使他们能够利用外部知识源并利用 SQL、搜索引擎和计算器等工具。 Gemini 和 GPT-4 等多模式生成人工智能的兴起进一步突破了界限。这些模型不仅生成文本,还处理和创建多种数据格式,包括图像和语音。虽然生成式人工智能目前的能力令人印象深刻,但不可否认的是,其更大发展的潜力。然而,负责任的开发对于解决有关偏见、安全和透明度的担忧非常重要。通过鼓励公开对话和优先考虑负责任的实践,我们可以预见LLM将成为世界积极变革的强大力量。
参考
[1] History of natural language processing
[2] https://redirect.cs.umbc.edu/courses/471/papers/turing.pdf
[3] ELIZA
[4] https://deeplearning.cs.cmu.edu/F23/document/readings/LSTM.pdf
[5] BERT: Pre-training of Deep Bidirectional Transformers for Language…
[6] The Rise of Generative AI Large Language Models (LLMs) like ChatGPT — Information is Beautiful
[7] A. Vaswani, N. Shazeer, N. Paramr, J. Uszkoreit, L. Jones, A.N. Gomez, et al., “Attention is all you need,” Proceedings of 31st International Conference on Neural Information Processing Systems (NIPS 2017), 2017.
[8] Radford, Alec, et al. “Improving language understanding by generative pre-training.” (2018).
如果觉得文章对你有用,欢迎大家点赞+关注~