Redian新闻
>
揭秘编码器与解码器语言模型

揭秘编码器与解码器语言模型

公众号新闻

来源 | OSCHINA 社区

作者 | OneFlow深度学习框架

原文链接:https://my.oschina.net/oneflow/blog/10109514

Transformer 架构的问世标志着现代语言大模型时代的开启。自 2018 年以来,各类语言大模型层出不穷

通过 LLM 进化树(github.com/Mooler0410/LLMsPracticalGuide)来看,这些语言模型主要分为三类:一是 “仅编码器”,该类语言模型擅长文本理解,因为它们允许信息在文本的两个方向上流动;二是 “仅解码器”,该类语言模型擅长文本生成,因为信息只能从文本的左侧向右侧流动,并以自回归方式有效生成新词汇;三 “编码器 - 解码器” 组,该类语言模型对上述两种模型进行了结合,用于完成需要理解输入并生成输出的任务,例如翻译。

本文作者 Sebastian Raschka 对这三类语言模型的工作原理进行了详细解读。他是人工智能平台 Lightning AI 的 LLM 研究员,也是《Machine Learning Q and AI》的作者。

(以下内容由 OneFlow 编译发布,转载请联系授权。原文:https://magazine.sebastianraschka.com/p/understanding-encoder-and-decoder)


来源 | Ahead of AI

OneFlow 编译

翻译|杨婷、宛子琳


有人希望我能深入介绍一下语言大模型(LLM)的相关术语,并解释我们现在认为理所当然的一些技术性更强的术语,包括 “编码器式” 和 “解码器式” LLM 等。这些术语是什么意思?


编码器和解码器架构基本上都使用了相同的自注意力层对单词词元(token)进行编码,然而,不同的是:编码器被设计为学习可以用于各种预测建模任务(如分类)的嵌入;解码器被设计用于生成新的文本,例如回答用户的查询等。


1

原始 Transformer

 

原始 Transformer 架构("Attention Is All You Need",2017 年)是为英法和英德语言翻译而开发的,它同时使用了编码器和解码器,如下图所示。


上图中,输入文本(即要翻译的句子)首先被分词为单独的单词词元,然后通过嵌入层对这些词元进行编码,完成后进入编码器部分。接下来,在每个嵌入的单词上添加位置编码向量,之后,这些嵌入会通过多头自注意力层。多头注意力层之后会进行残差与层归一化(Add & normalize),它进行了一层标准化操作,并通过跳跃连接(skip connection,也称为残差连接或快捷连接)添加原始嵌入。最后,进入 “全连接层”(它是由两个全连接层(全连接层之间有一个非线性激活函数)组成的小型多层感知器)之后,输出会被再次 " 残差与层归一化 ",然后再将输出传递到解码器模块的多头自注意力层。

上图的解码器部分与编码器部分的整体结构十分相似,关键区别是它们的输入和输出内容。编码器要接收进行翻译的输入文本,而解码器则负责生成翻译后的文本。


2

编码器

 

上图展示的原始 Transformer 架构中的编码器部分负责理解和提取输入文本中的相关信息,它输出的是输入文本的一个连续表示(嵌入),然后将其传递给解码器。最终,解码器根据从编码器接收到的连续表示生成翻译后的文本(目标语言)。

 

多年来,基于原始 Transformer 模型中的编码器模块开发了多种仅编码器架构。其中两个最具代表性的例子是 BERT( 用于语言理解的深度双向 Transformer 预训练 2018)和 RoBERTa(鲁棒优化的 BERT 预训练方法,2018)。

 

BERT(Bidirectional Encoder Representations from Transformers)是一种基于 Transformer 编码器模块的仅编码器架构,它使用掩码语言建模(如下图所示)和下一个句子预测任务,在大型文本语料库上进行预训练。

 BERT 式 Transformer 中使用的掩码语言建模预训练目标图示。



掩码语言建模的主要思路是在输入序列中随机掩码(或替换)一些单词词元,并训练模型根据上下文来预测原始的掩码词元。

 

除上图所示的掩码语言建模预训练任务之外,下一个句子预测任务要求模型去预测两个随机排列的句子在原始文档中的语句顺序是否正确。例如,两个用 [SEP] 标记分隔开的随机句子:


  • [CLS] Toast is a simple yet delicious food [SEP] It’s often served with butter, jam, or honey.

  • [CLS] It’s often served with butter, jam, or honey. [SEP] Toast is a simple yet delicious food.

 

其中,[CLS] 词元是模型的占位符,提示模型返回一个 True 或 False 标签,用来表示句子顺序是否正确。

 

掩码语言和下一个句子预训练目标使得 BERT 可以大量学习输入文本的上下文表示,然后可以针对各种下游任务(如情感分析、问答和命名实体识别)对这些表示进行微调。

 

RoBERTa(Robustly optimized BERT approach)是 BERT 的优化版本。它与 BERT 保持了相同的整体架构,但进行了一些训练和优化改进,例如更大的 batch 尺寸,更多的训练数据,并去除了下一个句子预测任务。这些改进使得 RoBERTa 拥有更好的性能,相比 BERT,RoBERTa 能更好地处理各种自然语言理解任务。


3

解码器

 

回到本节开头的原始 Transformer 架构,解码器中的多头自注意机制与编码器中的类似,但经过掩码处理,以防模型关注到未来位置,确保对位置 i 的预测仅基于已知的小于 i 的输出位置。下图为解码器逐词生成输出的过程。

原始 Transformer 中的下一个句子预测任务示意图。


这种掩码操作(在上图中可明确看到,但实际上在解码器的多头自注意机制内部发生)对于在训练和推理过程中保持 Transformer 模型的自回归特性至关重要。自回归特性能确保模型逐个生成输出词元,并使用先前生成的词元作为上下文,以生成下一个词元。

 

多年来,研究人员在原始编码器 - 解码器 Transformer 架构的基础上进行扩展,开发出了几种仅解码器模型,这些模型能高效处理各种自然语言任务,其中最著名的是 GPT(Generative Pre-trained Transformer)系列模型。

 

GPT 系列模型为仅解码器模型,它们在大规模无监督文本数据上进行预训练,然后针对特定任务进行微调,如文本分类、情感分析、问答和摘要生成等。GPT 模型包括 GPT-2、GPT-3(GPT-3 于 2020 年发布,具备少样本学习能力)以及最新的 GPT-4,这些模型在各种基准测试中展现出了卓越性能,是目前最受欢迎的自然语言处理架构。


GPT 模型最引人注目的特性之一是涌现特性。涌现特性指的是模型在下一个词预测的预训练中发展出来的能力和技能。尽管这些模型只是被训练预测下一个词,但预训练后的模型却能够执行各种任务,如文本摘要生成、翻译、问答和分类等。此外,这些模型可通过上下文学习来完成新任务,而无需更新模型参数。



4

编码器 - 解码器混合模型


  • BART (Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension, 2019)

  • and T5 (Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer, 2019).

 

除传统的编码器和解码器架构之外,新型编码器 - 解码器模型的发展取得了重大突破,充分发挥了编码器和解码器模型的优势。这些模型融合了新颖技术、预训练目标或架构修改,以提高在各种自然语言处理任务中的性能表现。下面是一些值得关注的新型编码器 - 解码器模型:

 

  • BART(用于自然语言生成、翻译和理解的去噪序列到序列预训练模型,2019 年发布)

 

  • T5(通过统一的文本到文本 Transformer 来探索迁移学习的极限,2019 年发布)。

 

编码器 - 解码器模型通常用于自然语言处理,这些任务涉及理解输入序列并生成相应的输出序列。这些序列往往具有不同的长度和结构。这种模型在需要复杂映射以及捕捉输入序列和输出序列之间的元素关系的任务中表现出色。编码器 - 解码器模型常用于文本翻译和摘要生成等任务。


5

术语和行话


这些模型(包括仅编码器、仅解码器和编码器 - 解码器模型)都属于序列到序列模型(通常简称为 “seq2seq”)。值得注意的是,虽然我们将 BERT 模型称为仅编码器模型,但 “仅编码器” 这个描述可能会引起误解,因为这些模型在预训练期间也会将嵌入解码为输出的词元或文本。

 

换句话说,仅编码器和仅解码器架构都在进行 “解码”。然而,与仅解码器和编码器 - 解码器架构不同,仅编码器架构不是以自回归的方式进行解码。自回归解码是指逐个词元地生成输出序列,其中每个词元都基于先前生成的词元。相比之下,仅编码器模型不会以这种方式生成连贯的输出序列。相反,它们专注于理解输入文本并生成特定任务的输出,如标签预测或词元预测。


6

结论


简而言之,编码器模型在学习用于分类任务的嵌入表示方面非常受欢迎,编码器 - 解码器模型用于生成任务,这些任务依赖输入,以生成输出(例如翻译和摘要生成),而仅解码器模型则用于其他类型的生成任务,包括问答。


自首个 Transformer 架构问世以来,已经开发出数百种编码器、解码器和编码器 - 解码器混合模型,模型概览如下图所示:

 按架构类型和开发者分类的部分最受欢迎的大型语言 Transformer。


尽管仅编码器模型逐渐失去了关注度,但 GPT-3、ChatGPT 和 GPT-4 等仅解码器模型在文本生成方面取得了重大突破,并开始广泛流行。然而,仅编码器模型在基于文本嵌入进行预测模型训练方面仍然非常有用,相较于生成文本,它具备独特优势。


END



typescript的诞生



这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
解锁通用听觉人工智能!清华电子系联合火山语音,开源全新认知导向听觉大语言模型ACL2023 | 面向信息检索的结构感知语言模型训练方法文档字越多,模型越兴奋!KOSMOS-2.5:阅读「文本密集图像」的多模态大语言模型哈工大发布大模型思维链推理综述:200+文献全面解析大语言模型思维链推理最新进展语言模型战胜扩散模型!谷歌提出MAGVIT-v2:视频和图像生成上实现双SOTA!Time reversal​KDD 2023 | MaskGAE:图自编码器背后的掩码机理什么是编码器?有哪些类型?这篇你不能错过。MIT惊人证明:大语言模型就是「世界模型」?吴恩达观点再被证实,LLM竟能理解空间和时间大哥养成记冷知识|超市水果的神秘编码,竟能知道它的甜度​开源模型在竞赛数学MATH上首次突破50%,清华、微软联合推出工具集成推理语言模型大语言模型真能“理解”语言吗?视觉模型+大语言模型:首个支持10K+帧长视频理解任务的新型框架大模型+自动驾驶=?普渡大学等最新《自动驾驶领域多模态大型语言模型》综述七绝 重过老房子告别繁琐:SpringBoot 拦截器与统一功能处理【限时】10场大型语言模型前沿技术分享MetaMath:新数学推理语言模型,训练大模型的逆向思维机器会思考吗?图灵《计算机器与智能》经典回顾在图像、视频生成上,语言模型首次击败扩散模型,tokenizer是关键大语言模型击败扩散模型!视频图像生成双SOTA,谷歌CMU最新研究,一作北大校友ICCV 2023 | 基于预训练视觉语言模型和大语言模型的零样本图像到文本生成MetaMath:新数学推理数据集揭秘,让大语言模型突破逆转诅咒NeurIPS 2023 | 李飞飞团队提出SiamMAE:孪生掩码自编码器,刷榜视觉自监督方法!OpenAI救了Stable Diffusion!开源Dall·E3同款解码器,来自Ilya宋飏等阿根廷人有点意思MIT惊人再证大语言模型是世界模型!LLM能分清真理和谎言,还能被人类洗脑清华大学:2023大语言模型综合性能评估报告今晚直播 | ACL 2023原作解读:研究评测与提升大语言模型时间推理能力北京理工大学发布双语轻量级语言模型,明德大模型—MindLLM,看小模型如何比肩大模型不再是零和游戏,机器与人工谁是最后赢家?ICCV 2023 | 用“自编码器+多模态学习”更有效地解决3D物体可供性问题大语言模型之生成/推理:参数与解码策略原理及其代码实现战国故事《定风波》卷二(24):山鬼
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。