python attention机制_Transformer中的Attention机制,注意力分布概率是如何求得的?

题主的问题其实是没有弄明白transformer中的Attention机制,以及attention机制的作用点而导致的。那接下来我们介绍一下transformer中的注意力机制,题主自然就明白了。

Multi-Headed Attention

transformer采用的是多头注意力机制。每个输入被分割成了多个头,允许网络注意每个输入的不同子部分。多头注意力网络结构详情如图图1 多头注意力网络结构

V、 K和Q代表“key”、“value”和“query”。这些是注意功能中使用的术语,但老实说,我不认为解释这些术语对于理解模型特别重要。这个网络结构在transformer中会使用三次,encoder,decoder,以及将encoder和decoder信息联合起来。下一节会详细介绍。

举个栗子,在Encoder中,V、K和G是相同的,都是输入向量的映射,尺寸为:batch sizesequence lengthembedding size。然后在多头注意力机制中,将输入向量分成N个头,这样它们就有了尺寸batch_sizeNsequence_length*(embedding size/N)。

对于图一中的scaled dot-product attention的具体计算,是针对每个头,都会进行如图二中的计算。即将Q,K相乘之后,经过变换,再与V相乘,最终得到每个头的attention之后的值。最后,再将每个头的值连接起来,得到最终的attention值。图2 注意力机制的计算

以上就是transformer运用的多头注意力机制的细节。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值