Self-Attention
Self-Attention
本文为观看哔哩哔哩up主霹雳吧啦Wz深度学习教程记得笔记,图片为视频截图,自用,侵删。
-
Wq,Wk,Wv所有ai共享
-
q:query,用来match其他ai
k:key,用于被其他match匹配
v:value,从ai当中提取得到的信息
-
将所有ai连接成为一组向量A,则:
Q = A*Wq,K = A*Wk,V = A*Wv
Attention公式
-
Q*KT:用矩阵的计算方法计算全部所有每一组ai和aj的关联度
-
上一步算出的每一个αi j 分别与v1 - vn 相乘,算出bi - bn ,bi是一个向量,表示ai与a1 - an的关联程度。
multi-head self-Attention
由于每个ai和aj,可能是由于不同的原因关联起来,也就是说某两对aiaj关联度都很大,但他们关系密切可能是由于不同的原因,所以为了表达这种情况,提出了multi-head self-Attention(多头)。
将qi,ki,vi向量都平均分成n个,分给n个head使用,例如:每个qi分成qi1 - qin ,每一个qi1,ki1,vi1分给head1,qi12,ki2*,vi2分给head2…以此类推。
这样的话就将数据按n个head分成n部分,每一部分都按Attention公式分别计算,计算出的结果拼接起来(注意是拼接)