NLP中的Attention总结

Attention是模拟人脑的注意力机制。人在看到一些东西,往往只关注重要的信息,而忽略其他信息。自然语言处理中的attention是对文本分配注意力权重,Attention的本质就是从关注全部变为关注重点。

1 Attention的原理

在这里插入图片描述
Attention的计算过程:

  • query和key向量进行相似度计算,得到权重。
  • 将得到的权值进行归一化,得到每个key的归一化权重。
  • 根据权重,对value进行加权求和。
2 Attention的类型

在这里插入图片描述

如上图,按不同的方式,可将attention分为不同类型。

在这里插入图片描述

3 attention计算方式

attention通俗来讲是用两个向量(query,key)计算得到一个得分score。从数学角度看,就是两个向量得到一个数值。一般有以下计算方式:

(1)点乘: s ( q , k ) = q ⋅ k s(q,k)=q\cdot k s(q,k)=qk

(2)余弦相似度: s ( q , k ) = q ⋅ k ∣ q ∣ ∣ k ∣ s(q,k)=\frac{q\cdot k}{|q||k|} s(q,k)=qkqk

还有引入学习参数的方式

(3)矩阵相乘: s ( q , k ) = q T W k s(q,k)=q^TWk s(q,k)=qTWk

(4)小网络学习(多层感知机):输入两个向量,输出一个数值

4 attention的使用场景
4.1 长文本任务

如篇章级别的任务,这类型任务输入的信息过多,使用attention捕获关键信息。

4.2 涉及两端相关文本

可能需要对两端内容进行对齐,如机器翻译,翻译时当前词与原文的信息对齐。阅读理解,问题与原文信息的对齐。

4.3 任务只依赖某些特征

某些任务只依赖与部分强特征词。

引用自:

[1]Attention用于NLP的一些小结

[2]一文看懂attention

自然语言处理attention机制是一种用于模型关注输入序列不同位置的信息的方法。它可以帮助模型在处理自然语言任务时更加准确地捕捉到关键信息。有几种常见的attention机制,包括强制前向attention、Soft attention、global attention、动态attention、Hard attention和local attention。 Soft attention是一种常用的attention机制,它为输入序列的每个单词计算一个单词匹配概率。这样可以使模型关注到每个单词的重要性,并根据这些概率对输入和输出进行对齐。 相比之下,Hard attention则是一种更为直接的方法。它通过从输入序列直接选择某个特定的单词,并将其与目标序列的单词对齐。其他输入序列的单词则被认为与之没有对齐关系。通常情况下,Hard attention主要应用于图像处理,当图像的某个区域被选时,权重为1,其余区域则为0。 另外,还有一种称为local attention的机制,它可以看作是半软半硬attention。在local attention,模型会关注输入序列的局部区域,并根据局部信息进行对齐。 总的来说,attention机制在自然语言处理起着重要的作用,它能够帮助模型更好地理解和利用输入序列的信息,从而提高模型的性能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [自然语言处理Attention机制总结](https://blog.csdn.net/hahajinbu/article/details/81940355)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [自然语言处理之Attention大详解(Attention is all you need)](https://blog.csdn.net/wuzhongqiang/article/details/104414239)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值