什么是编码器和解码器?

您所在的位置:网站首页 ENCODER是什么牌子编码器 什么是编码器和解码器?

什么是编码器和解码器?

2024-07-13 06:36| 来源: 网络整理| 查看: 265

什么是编码器和解码器?

一般来说,编码器和解码器Transformers都使用相同的自注意力层来编码token。主要区别在于编码器旨在学习可用于各种预测类任务(如分类)的嵌入,而解码器则设计用于生成新文本,例如回答用户查询。

原始Transformer

原始的Transformer架构(《Attention Is All You Need, 2017》)主要用于英语到法语和英语到德语的语言翻译,它利用了编码器和解码器,如下图所示。

在这里插入图片描述

图示:《Attention Is All You Need, 2017》中提出的原始变换器架构

在上图中,输入文本(即要翻译的文本句子)首先被分词器分成单独的单词标记,然后通过嵌入层进行编码,之后进入编码器部分。接着,对每个嵌入单词添加位置编码向量,这些嵌入会通过一个多头自注意力层。多头注意力层后是“加&归一化”步骤,该步骤执行层归一化并通过跳跃连接(也称为残差或快捷连接)添加原始嵌入。最后,经过一个“全连接层”后(这是一个小型的多层感知机,由两个全连接层组成,中间有非线性激活函数),输出再次被相加和归一化,然后传递给解码器部分的多头自注意力层。

解码器部分在图中具有与编码器部分类似的整体结构。关键区别在于输入和输出不同。编码器接收要翻译的输入文本,而解码器生成翻译后的文本。

编码器

原始Transformer中的编码器部分,如前图所示,负责理解和提取输入文本中的相关信息。然后它输出输入文本的连续表示(嵌入),该嵌入传递给解码器。最后,解码器基于从编码器接收到的连续表示生成翻译文本(目标语言)。

近年来,基于上述原始Transforme模型的编码器模块,开发了各种仅编码器架构。其中包括BERT(《Pre-training of Deep Bidirectional Transformers for Language Understanding, 2018》)和RoBERTa(《A Robustly Optimized BERT Pretraining Approach, 2018》)。

BERT是一种基于变换器的编码器模块的仅编码器架构。BERT模型在大型文本语料库上预训练,使用掩码语言模型(MLM)(下图所示)和下一句预测任务。

在这里插入图片描述

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

掩码语言建模的主要思想是掩盖(或替换)输入序列中的随机单词标记,然后训练模型根据周围的上下文预测原始掩码标记。

下一句预测任务要求模型预测两个随机打乱的句子在原始文档中的语序是否正确。例如,两个句子以随机顺序分开,由[SEP]标记分隔:

[CLS]吐司是一种简单却美味的食物[SEP]它通常与黄油、果酱或蜂蜜一起食用。[CLS]它通常与黄油、果酱或蜂蜜一起食用[SEP]吐司是一种简单却美味的食物。

[CLS]标记是一个占位符标记,它提示模型返回一个表示句子顺序正确与否的True或False标签。

掩码语言和下一句预测任务(这是一种自监督学习)允许BERT学习丰富的输入文本的上下文表示,然后可以用于各种下游任务,如情感分析、问答和命名实体识别。

RoBERTa是BERT的一个优化版本。它保持与BERT相同的整体架构,但采用了几项培训和优化改进,如更大的批量、更多的训练数据,以及消除了下一句预测任务。这些改变使得RoBERTa在各种自然语言理解任务上的表现超过了BERT。

解码器

回到本节开头概述的原始transformer架构,解码器中的多头自注意力机制与编码器中的类似,但它被掩码掩盖以防止模型预测位置之后的信息,确保位置i的预测只能依赖于小于i的位置的已知输出。如下图所示,解码器逐字生成输词。在这里插入图片描述

图示:原始Transformer中使用的下一句预测任务

这种掩码(如上图所示)是维持变换器模型在训练和推理期间自回归属性的关键。自回归属性确保模型一次生成一个输出标记,并使用之前生成的标记作为生成下一个词标记的上下文。

近年来,研究人员在原始编码器-解码器Transformer架构的基础上,开发了几种解码器模型,这些模型在各种自然语言处理任务中被证明是非常有效的。最著名的模型包括GPT系列。

GPT系列是解码器模型,它们在大规模无监督文本数据上进行预训练,并针对特定任务进行微调,如文本分类、情感分析、问答和总结。GPT模型,包括GPT-2、GPT-3,以及更近的GPT-4,已经在各种基准测试中展现出了显著的性能,目前是自然语言处理中最流行的架构。

GPT模型的一个最引人注目的方面是它们的涌现属性。涌现属性指的是模型由于其下一个词预测训练而发展出的能力和技能。尽管这些模型只被训练预测下一个词,但预训练模型能够执行文本总结、翻译、问答、分类等任务。

编码器-解码器混合体

除了传统的编码器和解码器架构外,还出现了利用两者优势的新型编码器-解码器模型。这些模型通常结合了新颖的技术、预训练目标或架构修改,以增强它们在各种自然语言处理任务中的表现。

BART(《Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension, 2019》)T5(《Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer, 2019》)。

编码器-解码器模型通常用于自然语言处理任务,涉及理解输入序列和生成输出序列,这些序列通常长度和结构不同。它们特别适合于输入和输出序列之间存在复杂映射关系的任务,且需要捕捉两个序列中元素之间的关系。一些常见的应用案例包括文本翻译和总结。

结论

总之,编码器式模型因其在分类任务中用于学习嵌入而受到青睐,编码器-解码器式模型用于生成任务,其中输出严重依赖于输入(例如,翻译和总结),而仅解码器模型用于其他类型的生成任务,包括问答。自Transformer架构首次出现以来,已经开发了数百种编码器、解码器和编码器-解码器混合体,如下图所示。

在这里插入图片描述

图示:按架构类型和开发者组织的一些最流行的大型语言变换器概览

虽然编码器模型的受欢迎程度逐渐减少,像GPT这样的仅码器模型因其在文本生成方面的突破(如GPT-3、ChatGPT和GPT-4)而受到广泛关注。然而,编码器模型仍然非常有用,用于基于文本嵌入训练预测模型,而不是生成文本。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3