为什么 GPT-2 不包括 Transformer 编码器?

人工智能 自然语言处理 变压器 注意力 伯特 gpt
2021-11-03 05:28:44

在研究了转换器、BERT 和 GPT-2 之后,据我了解,GPT-2 本质上只使用了原始转换器架构的解码器部分,并使用了只能查看先前标记的掩码自注意力。

为什么 GPT-2 不需要原始变压器架构的编码器部分?

只有解码器层的 GPT-2 架构

在此处输入图像描述

2个回答

GPT-2是基本 Transformer 架构的近似副本

GPT-2不需要原始transformer架构的encoder部分,因为它是decoder-only,并且没有encoder attention blocks,所以decoder相当于encoder,除了multi-head attention block中的MASKING ,解码器只允许从句子中的先前单词中收集信息。它就像传统的语言模型一样工作,因为它以词向量作为输入,并产生对下一个词的概率的估计作为输出,但它是自回归的,因为句子中的每个标记都有前一个词的上下文。因此 GPT-2 一次只能使用一个令牌。

相比之下,BERT不是自回归的一次性使用整个周围的上下文。GPT-2 的上下文向量对于第一个词嵌入是零初始化的。

我们使用编码器-解码器架构的情况通常是当我们将一种类型的序列映射到另一种类型的序列时,例如将法语翻译成英语,或者在聊天机器人获取对话上下文并产生响应的情况下。在这些情况下,输入和输出之间存在质的差异,因此为它们使用不同的权重是有意义的。

在 GPT-2 的情况下,它是在 Wikipedia 文章等连续文本上训练的,如果我们想使用编码器-解码器架构,我们将不得不进行任意截断来确定编码器将处理哪个部分以及哪个部分部分由解码器。因此,在这些情况下,更常见的是单独使用解码器。