自然语言处理: 第五章Attention注意力机制
理论基础
Attention(来自2017年google发表的[1706.03762] Attention Is All You Need (arxiv.org) ),顾名思义是注意力机制,字面意思就是你所关注的东西,比如我们看到一个非常非常的故事的时候,但是其实我们一般能用5W2H就能很好的归纳这个故事,所以我们在复述或者归纳一段文字的时候,我们肯定有我们所关注的点,这些关注的点就是我们的注意力,而类似How 或者when 这种不同的形式就成为了Attention里的多头的机制。 下图是引自GPT3.5对注意力的一种直观的解释,简而言之其实就是各种不同(多头)我们关注的点(注意力)构成了注意力机制,这个奠定现代人工智能基石的基础。

那么注意力机制的优点是什么呢? (下面的对比是相对于上一节的Seq2Seq模型)
- 解决了长距离依赖问题,由于Seq2Seq模型一般是以时序模型eg RNN / Lstm / GRU 作为基础, 所以就会必然导致模型更倾向新的输入 – 多头注意力机制允许模型在解码阶段关注输入序列中的不同部分
- 信息损失:很难将所有信息压缩到一个固定长度的向量中(encorder 输出是一个定长的向量) – 注意力机制动态地选择输入序列的关键部分
- 复杂度和计算成本:顺序处理序列的每个时间步 – 全部网络都是以全连接层或者点积操作,没有时序模型
- 对齐问题:源序列和目标序列可能存在不对齐的情况 – 注意力机制能够为模型提供更精细的词汇级别对齐信
注意力可以拆解成下面6个部分,下面会在代码实现部分逐个解释
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-npjJuAYN-1689687821801)(image/06_attention/1689603947092.png)]](https://i-blog.csdnimg.cn/blog_migrate/dbfb4671e4fcc9b8aa9c12ec4d109a12.png)
- 缩放点积注意力
两个向量相乘可以得到其相似度, 一般常用的是直接点积也比较简单,原论文里还提出里还提出了下面两种计算相似度分数的方式, 也可以参考下图。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sAngeG15-1689687821802)(image/06_attention/1689604308442.png)]](https://i-blog.csdnimg.cn/blog_migrate/d77c8e1ff8030c4707a5459d15941a0b.png)
其实相似度分数,直观理解就是两个向量点积可以得到相似度的分数,加权求和得到输出。![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-so4FVaol-1689687821802)(image/06_attention/1689604224729.png)]](https://i-blog.csdnimg.cn/blog_migrate/a945d7125a7516c8180253a0b87303cd.png)

最低0.47元/天 解锁文章
638

被折叠的 条评论
为什么被折叠?



