watch: Transf - Nick 13 | Multi-head Self-Attention Mechanism

bilibili

多头是为了用不同的权重初始化线性变换

Self-attention 输出的新词向量比输入的词向量有更多的句法特征和语义特征

Multi-Head self-attention 输出的新词向量 比 self-attention 得到的词向量包含更多的

头的个数用 h 表示,一般 h=8 。并不是直接用输入 X 做Attention 计算,而是先把 X 分成 8 块(分别位于8个子空间),分别计算得到 8 个新词向量,然后把它们拼起来,再做一次线性变换(改变维度与 X 匹配)得到最终词向量

机器学习的本质:非线性变换 y = activation(wx+b),把一个向量从一个位置变换到另一个位置上

多头的作用:把一个向量拆分成8个子向量,8个向量同时优化,可以更快的收敛到合适的位置。分太多也不好。

词向量一般 512 维,分 8 块;若是视频向量 5120,可以分 80 块

参数量更大,8套参数(Wq,Wk,Wv)