但不论哪一种注意力,其实都是让你在某一时刻将注意力放到某些事物上,而忽略另外的一些事物,这就是注意力机制(Attention Mechanism)
注意力机制是一种在人工智能和机器学习中广泛使用的技术,用于模拟人类的视觉和认知系统中的注意力过程。这个概念源自生物学,描述了人类大脑在处理信息时如何选择性地关注某些输入,并忽略其他输入,以便更好地理解和处理信息。
一种常见的注意力机制是双向长短时记忆网络(Bidirectional Long Short-Term Memory,BiLSTM)和变种,以及自注意力机制(Self-Attention),后者在Transformer模型中得到了广泛应用。自注意力机制允许模型根据输入数据中不同位置的关联性自动计算权重,以便更好地捕获输入数据中的相关信息。
论文:https://arxiv.org/abs/1706.03762
参考:https://www.bilibili.com/video/BV1ih4y1J7rx/?spm_id_from=333.337.search-card.all.click&vd_source=3b2b7fb671161612d699f578850584a1
理解
输入的是三个不同的矩阵,一维度的编码经过三次线性变化(三次矩阵运算),生成查询向量(Q)、键向量(K)和数值向量(V)
- Q(Query):当前嵌入词向量和和特点矩阵 相乘,来确定当前单词之前的都是谁。,就是查询
-
- K(Key):回答者,表示我在那个单词之前
-
- V(Value):由输入序列通过线性变换得到,表示值向量。
缩放点积注意力(Scaled Dot-Product Attention)也是自注意力机制(Self-Attention)
定义:Scaled Dot-Product Attention 是自注意力机制(self-attention mechanism)的一种实现方式,点积”指的是计算序列中元素之间的点积(dot product),并对结果进行缩放,从而得到归一化的注意力权重
注意力分数Q⋅K⊤:MatMul(Matrix Multiplication):
这是矩阵乘法的缩写。
Scale(缩放):
在计算注意力分数时,通常会除以一个缩放因子,该因子通常是输入矩阵的维度的平方根。这有助于确保点积不会因为向量维度的增加而导致梯度变得过小,提高模型的训练稳定性。
Mask(遮罩):
掩码的作用是让模型只关注之前的内容,【用前面来预测后面】,掩码的部分设为负无穷,softmax之后就趋于0
softmax(归一化):将矩阵映射到0-1之间
value:
也是一个矩阵
多头注意力(Multi-Head Attention)
定义:在应用自注意力之前,将查询、键、值分成多个向量,这就是多头注意力机制,每个头都可以
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!