transformer注意力机制的理解(Q,K,V,dk)

Attention公式:

transformer注意力机制的理解(Q,K,V,dk)_第1张图片

上面这个注意力公式可以理解为是算 V 的加权后的表示

权重就是V前面的所有部分,

其中 softmax 可以使得权重概率分布和为1。 

其中 \frac{QK^{T}}{\sqrt{d_{k}}} 算的就是注意力的原始分数(其实也就是相似度分数,通过Q和K的点积求出)

其中 {\sqrt{d_{k}}} 是缩放系数,可以使结果不至于过大或过小,导致 softmax 之后就非0即1。

可以看下图帮助理解(图中最上边一行是softmax之前的结果,中间一行是没有除{\sqrt{d_{k}}}的softmax结果,最后一行是除了{\sqrt{d_{k}}}的softmax结果。可以看出在不除{\sqrt{d_{k}}} 的时候softmax的结果只会在输入的最大值或者几个大值附近出现,看起来非常陡峭。当输入除了{\sqrt{d_{k}}} 以后我们发现输入数据的分布大部分都保留了下来,这样的好处就是可以在梯度回传的时候让梯度比较平稳)

transformer注意力机制的理解(Q,K,V,dk)_第2张图片

 

 

你可能感兴趣的:(普通人的搬砖日子,1024程序员节)