Attention,Multi-head Attention--注意力,多头注意力详解

Attention

首先谈一谈attention

注意力函数其实就是把一个query,一个key-value的集合映射成一个输出。

其中query,key,value,output(Attention Value)都是向量。

输出是values的加权求和,是query与当前key的相关程度。

Attention 函数的本质可以被描述为:

		一个查询(query)到一个系列(键key-值value)对的映射。

例如:计算A与B的attention,就是用A的Q与B的K-V来计算。
在这里插入图片描述

Scaled Dot-Product Attention(缩放点乘积注意力)(常用)

在这里插入图片描述

微观下的Attention

什么是Q(查询向量)、K(键向量)和V(值向量)?

每一个词向量,都有自己的QKV。通过矩阵变换而来,矩阵可以学习得到。

这里Thinking为词向量X1,Machine为词向量X2。

分别经过矩阵变换得到自己的QKV。

在这里插入图片描述

多头注意力机制

多头 Attention(Multi-head Attention)结构如下图。
在这里插入图片描述

微观下的多头Attention

在这里插入图片描述

这里说一下我的理解

八个头相当于八个不同的表征子空间,类似于apple拥有水果的含义,同时也有商标的含义,不同的含义由不同的表征子空间学习。

让其他词的Q来和apple这个词不同组的K-V进行attention。

再把所有的attention结果拼接起来,通过一个全连接层(矩阵变换)得到最终结果。

在这里插入图片描述

参考博客:
图解Transfomer
NLP中的attention

  • 43
    点赞
  • 155
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值