第五课第四周笔记3:Multi-Head Attention多头注意力

Multi-Head Attention多头注意力

让我们进入并了解多头注意力机制。 符号变得有点复杂,但要记住的事情基本上只是你在上一个视频中学到的自我注意机制的四个大循环。 让我们看一下每次计算自我注意力的序列时,称为头部。

因此,多头注意力这个名称指的是你是否按照上一个视频中看到的方式进行操作,但有很多次让我们来看看它是如何工作的。请记住,您通过将每个输入项乘以几个矩阵 WQ WK 和 WV 得到了每个输入项的向量 Q K 和 V使用多头注意力,您将同一组query key 和 value向量作为输入。所以q,k,v值写在这里,并计算多个self attention。

  1. 所以第一个,你将 k、q、v 矩阵与权重矩阵相乘,w1q、w1k 和 w1v。所以这三个值为你提供了一组新的第一个query key 和 value向量字。你对其他每个词都做同样的事情。为直观起见,您可能会发现将w1q、w1k 和 w1v对于提问和回答问题what's happening?这个问题的学习方法是有用的。所以这或多或少是我们在上一个视频中前面介绍的自我注意示例。完成后你可能会想,我们有wq,w1q、w1k 和 w1v,我学习希望你问和回答这个问题:what's happening?

  2. 因此,通过这种计算,单词 [FOREIGN] 给出了正在发生的事情的最佳答案,这就是为什么我在这里用蓝色箭头突出显示以表示 [FOREIGN] 键之间的内积具有最高值[FOREIGN] 的q,这是我们要问的第一个问题。所以这就是你如何得到 [FOREIGN] 的表示,你对 Jane、[FOREIGN] 和其他词 [FOREIGN] [FOREIGN] 做同样的事情。所以你最终*用五个向量来表示序列中的五个单词。

所以这是你在多头注意力中使用的几个头中的第一个执行的计算。

因此,您将逐步执行我们刚才对 [FOREIGN] 和其他单词进行的完全相同的计算,并最终得到相同的注意力值,即我们在上一个视频中使用的从 1 到 5。但现在我们将不止一次这样做,而是几次。所以我们现在可能有八个头,而不是一个头,这意味着整个计算可能执行八次。

  1. 到目前为止,我们已经用这些矩阵中的第一个头部表示的第一个头部计算了这个注意力量。注意力方程就是这个,你之前在上一个视频中也看到过。
  2. 现在,让我们用第二个头来做这个计算。第二个头将有一组新的矩阵。我将编写 WQ2、WK2 和 WV2,以允许此机制提出和回答第二个问题。所以第一个问题是发生了什么?也许第二个问题是什么时候发生的事情?因此,在一般情况下,这里不是 W1,而是 Wi,我现在将第一个头后面的第二个头放在红色显示的第二个头上。所以你重复一个与第一个完全相同的计算,但用这组新矩阵代替。在这种情况下,您最终可能会得到 september 键和 [FOREIGN] 查询之间的内积将具有最高的内积。因此,我将突出显示这个红色箭头,以表明 9 月的值将在 [FOREIGN] 表示的第二部分中发挥重要作用。
  3. 或许我们现在要问的第三个问题,以WQ3、WK3和WV3为代表,是谁,谁与非洲有关系?在这种情况下,当您第三次执行此计算时,可能 Jane 的键向量和 [FOREIGN] 查询向量之间的内积将是最高的,并且在此处自我突出显示此黑色箭头。这样 Jane 的值在我现在放在后面的这个表示中将具有最大的权重。在文献中,正面的数量通常用小写字母H表示。因此H等于正面的数量。

您可以将这些head中的每一个视为不同的特征。 当你将这些特征传递给一个新的网络时,你可以计算出非常丰富的句子表示。 计算三个head或八个head或任何数字的这些计算,这三个值或 A 值的串联用于计算多头注意力的输出。 所以最终值是所有这些 h 头的串联

然后最后乘以矩阵 W。 现在还有一个值得记住的细节是,在多头注意力的描述中,我描述了为不同的头计算这些不同的值,就好像你会在一个四大循环中做它们一样。从概念上讲,这样想是可以的。但在实践中,您实际上可以并行计算这些不同头的值,因为没有一个值取决于任何其他头的值。因此,就其实现方式而言,您实际上可以并行而不是顺序计算所有头。然后将它们连接起来乘以 W 零。还有你的多头注意力。现在,幻灯片上有很多事情要做。感谢您一直陪伴我直到本视频结束。在下一个视频中,我将使用简化的图标。我们将在这里使用这个小图来表示这个多头计算。所以它需要输入矩阵 Q、K 和 V。所以这些值在此处并在此处输出此值。所以在下一个视频中,当我们将其放入完整的 Transformer 网络时,我将使用这张小图片来表示幻灯片上表示的所有这些计算。那么,恭喜。在上一个视频中,您了解了自我注意。通过多次这样做,您现在了解了多头注意力机制,它可以让您对每个单词提出多个问题,并为每个单词学习更丰富、更好的表示。现在让我们把所有这些放在一起来构建变压器网络。让我们转到下一个视频来看看。

posted @ 2021-09-17 15:03  xingye_z  阅读(2975)  评论(0编辑  收藏  举报