首页 > 其他分享 >attention

attention

时间:2023-02-02 23:14:28浏览次数:57  
标签:内积 attention 矩阵 得到 注意力 向量

attention

attention

比如看图片的时候,人会自动的有偏重去看图片。

就比如下图:

img

我们把自身的偏见所带有的特征用矩阵Q表示,

而图片所带有的特征是矩阵K。

通过Q内积K,去得到所谓的注意力分数score。(打分方式除了内积还有很多种,并不明白为什么内积可以做这个相关性判断 ???

经过softmax 归一化,得到的就是各个位置的概率,

Q * K * V 得到的就是经过注意力机制后的图片的向量,也就是有选择性地去关注图片的内容。

K和V一般是一个矩阵,至少是有关联的。

1. self-attention

与attention的不同就是QKV均是同源的,即可以线性变换互相得到。(代码设置上需要如何注意??

以机器翻译任务为例:

input 是一个词向量(初始的word embedding,可以认为是one-hot 码)

通过初始化矩阵WQ、WK、WV

初始化的矩阵得到 Q、K、V:WQ * a、WK * a、WV * a,

计算相关性:内积,Q*K

softmax,得到最终的score,*V,得到新的词向量。

核心如图所示:

Attention的计算

2. masked-attention

掩码的注意力机制,是考虑时序问题做出的改进,即只考虑在某个词之前的词和它的关系。这是后续文本生成问题需要用到的。

3. cross-attention

就是区分与自注意力的注意力机制,Q和KV不同源。(或者QK同源,V不同行吗??

4. multi-attention

为了拥有更多信息而提出,我们将原来的词分成8个向量,分别做attention,这样就可以得到不同的注意力的情况下的新词向量。

多头注意力机制

直觉式的解释:

把X切分成8块,这样一个原先在一个位置上的×,去了空间上8个位置,通过对8个点进行寻找,找到更合适的位置 (编码越来越“准确”)(这里的数字是自己瞎写的)

就是想要得到更多的信息,这样可以得到更多的注意点。

标签:内积,attention,矩阵,得到,注意力,向量
From: https://www.cnblogs.com/moonlight1209/p/17087679.html

相关文章