介绍 我将以非常简单的方式向你解释转换器编码器。对于那些在学习转换器时遇到困难的人来说,可以通读本博客文章,如果你对在NLP领域工作感兴趣,你至少应该了解到转换器,因为大多数行业都在使用这些最先进的模型来完成各种任务。转换器是NLP任务中的最先进模型,超越了传统的RNN和LSTM模型。转换器通过依赖于自我注意力而不是循环来解决了捕捉长期依赖的挑战。它们彻底改变了NLP,并为BERT、GPT-3和T5等架构铺平了道路。 学习目标 在本文中,您将学到: 转换器为什么变得如此受欢迎? 自我注意机制在NLP领域的作用。 如何从自己的输入数据中创建键、查询和值矩阵。 如何使用键、查询和值矩阵计算注意力矩阵。 在机制中应用softmax函数的重要性。 本文是数据科学博客马拉松的一部分。 转换器为什么超越了RNN和LSTM模型? 在使用RNN和LSTM模型时,我们遇到了一个重要障碍,即这些递归模型仍然无法理解长期依赖,并且处理复杂数据时计算负荷越来越大。论文《Attention Is All You Need》提出了一种名为转换器的新设计,以克服传统序列网络的限制,现在它们是许多NLP应用的最先进模型。 在RNN和LSTM中,输入和标记逐个传递,而转换器同时传输完整的序列(并行传输数据)。 转换器模型完全消除了递归过程,完全依赖于注意机制,使用了一种独特的自我注意机制。 转换器由什么组成?它如何工作? 对于许多NLP任务,转换器模型目前是最先进的模型。转换器的引入在NLP领域取得了重大进展,为BERT、GPT-3、T5等先进系统铺平了道路。 让我们通过一个语言翻译任务来了解转换器和自我注意的工作原理。转换器由编码器-解码器架构组成。我们将输入句子(源句子)输入编码器。编码器学习输入句子的表示并将表示发送给解码器。解码器接收编码器学习到的表示作为输入,并生成输出句子(目标句子)。 假设我们想将一个短语从英语翻译成法语。如下图所示,我们需要将英语句子作为编码器的输入。编码器学习给定英语句子的表示并将表示传递给解码器。解码器将编码器的表示作为输入,并生成法语句子作为输出。 一切进行得很好,但是这里到底发生了什么?转换器的编码器和解码器是如何将英语句子(源句子)翻译成法语句子(目标句子)的?编码器和解码器内部到底发生了什么?因此,在本文中,我们只关注编码器网络,因为我们希望保持简洁,先专注于编码器。未来的文章中,我们肯定会涵盖解码器部分。在接下来的几节中,让我们找出答案。 理解转换器的编码器 编码器只是一个神经网络,用于接收输入并将其转换为机器可以理解的不同表示/形式。转换器由N个编码器堆叠而成。一个编码器的输出作为输入传递给它上面的另一个编码器。如下图所示,我们有一个由N个编码器组成的堆叠。每个编码器将其输出发送给上面的编码器。最后一个编码器将给定源句子的表示作为输出返回。我们将源句子作为输入传递给编码器,并获得源句子的表示作为输出:…
Leave a Comment