1

我已经阅读了很多关于转换器和自我关注的内容,并且看到 BERT 和 GPT-2 都是仅使用编码器转换器 (BERT) 和解码器转换器 (GPT-2) 的较新版本。我一直在尝试为自己构建一个仅用于下一个序列预测的解码器模型,但我被一件事弄糊涂了。我正在使用 PyTorch 并查看了Seq2Seq 教程,然后查看了由Transformer Decoder Layers组成的Transformer Decoder Block. 我的困惑来自这些也需要传递的记忆。在文档中,他们说内存是编码器块的最后一层,这对于 Seq2Seq 模型是有意义的,但我只想制作一个解码器模型。所以我的问题是,如果你没有编码器,你会通过像 GPT-2 这样的仅限解码器的模型来获取内存吗?

4

1 回答 1

0

经过进一步调查,我相信我现在可以自己回答这个问题。仅解码器的转换器实际上并不使用任何内存,因为其中没有编码器-解码器自注意力,就像在编码器-解码器转换器中一样。仅解码器转换器看起来很像仅编码器转换器,而是在自注意力层上使用了掩码自注意力层。为了做到这一点,您可以传递一个方形的后续掩码(上三角形),这样模型就无法实现像 GPT-2/GPT-3 中那样的仅解码器模型。

于 2021-01-15T12:10:32.963 回答