欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 注意力机制理解

注意力机制理解

2025/6/18 15:00:04 来源:https://blog.csdn.net/qq_45325217/article/details/148717421  浏览:    关键词:注意力机制理解

注意力机制理解

今天学习注意力的时候还是比较蒙,所以先把能想到的地方写出来方便理解

注意力机制的简单理解

注意力机制:就是一种方法,能够让模型在处理大量信息时,能集中注意力在最重要的部分,而不是平均对待所有信息。

翻译成人话:考试前划重点。

举例:
你在上课时,老师肯定讲了很多内容,但聪明的你发现有些内容特别重要,很像考试重点,所以在将这部分时,你偷偷的注意听并记了下来。

你挑出的这部分内容的过程,其实就是赋予了“注意力权重”来进行重点处理。

相关概念

相关性:计算每个词和其他词的关系

注意力分数:为每个词分配一个权重

注意力机制的关键向量

对于每个词,模型会生成三个向量

向量名称英文缩写作用
查询向量Query(Q)表示“我在找什么信息”
键向量Key(K)表示“我提供什么信息”
值向量Value(V)表示“我真正包含的信息”

每个词都有自己的Q、K、V

注意力分数计算公式

我们要计算某个词(Query)对所有其他词(Key)的关注程度。核心公式是:
在这里插入图片描述

第一步:计算相似度(打分)

在这里插入图片描述
这是 Query 向量Key 向量点积,表示第 i 个词对第 j 个词的关注程度。

为什么要表示表示第 i 个词对第 j 个词的关注程度?

因为在自然语言中,一个词的意义往往依赖于它上下文中其他的词。注意力机制通过计算第i个词对第j个词的关注程度,让模型能够动态的“理解“这个词在上下文中的真实含义。

例如:小明下课要去找小红,因为书还在她手里。
我们不能单独理解这句话里的"她",因为没有其他信息的情况下我们不知道"她"是谁。
所以,我们需要关注前面这个“小红”,让模型通过用"她"这个词更加关注小红“”这个词的信息,从而猜测出“她”指代的是“小红”。

第二步:缩放(防止数值过大)

在这里插入图片描述
其中 𝑑𝑘是 Key **向量的维度。**这样做可以避免在 softmax 前出现过大的值,使训练更稳定。

第三步:归一化(softmax)

在这里插入图片描述
这一步把所有词的注意力分数转换成概率(加起来为 1),这就是注意力权重。

softmax是做什么的?
就是把一组原始的分数(随便任意实数)转换成一个概率分布,要求值的总和为1,类似于概率。

例如:有三个注意力分数:[2.0,1.0,0.1]
1->对每个值取指数(e的幂):
在这里插入图片描述
2->求总和:

在这里插入图片描述
3->除以总和(归一化):
在这里插入图片描述
可以理解为:
第一个词被关注了66%;
第二个词被关注了24%;
第三个次被关注了10%

第四步:加权求和 Value 向量

在这里插入图片描述
最终输出是对所有 Value 向量的加权求和。权重越大说明该词对当前词越重要。

一句话:注意力机制 = 对所有词的 Value 进行加权平均,权重由 Query 和 Key 的相似度决定。

其他理解

一.valid_lens:表示每个序列中“有效词”的数量。也就是哪些词是真正有意义的,哪些是填充(padding)进来没用的词。

训练模型时,我们经常用统一长度的句子训练,因为长短不一的情况作为矩阵处理不了,所以会将短的句子用<“pad”>补齐,但我们并不希望在计算注意力时取关注这些**<“pad”>**。

例如:两个句子

1:[“北“,“京”,“欢”,“迎”,“您”]

2:[“天气”,“真”,“好”,<"pad”>,<“pad”>]

统一为5个词长度后,第二个句子用两个pad补齐。
那么此时valid_lens就是:[5,3],也就是每个句子里有效词的数量。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词