Sinkformers: Transformers with Doubly Stochastic Attention
论文地址:
整体思路以及计算方式
论文观察了一个有趣的性质,Attention Matrix是按行归一化(∑jpij=1),但是训练后的模型大部分情形也能满足列归一化:∑ipij=1,于是作者提出了如下改进方式:
定义K0=exp(C)∈Rn×c
定义:
行归一化:(NR(K))ij=∑l=1nKilKij
列归一化:(NC(K))ij=∑l=1nKljKij
执行如下操作:
Kl+1={NR(Kl)NC(Kl) if l is even if l is odd 极限为:
K∞:=Sinkhorn(C)
并且满足:
K∞1nK∞⊤1n=1n=1n 后续作者补充了一些理论证明,这里从略。
时间复杂度
增加了时间复杂度,但总体还是O(n2d)。
训练以及loss
不变。
代码
实验以及适用场景
提升的性能有限,主要是一个观察和理论证明。
细节
暂无。
简评
一个有意思的结论(按行归一化),感觉原因是许多场景下query和key是相同的向量,所以算出来的Attention Matrix是接近对称的,按行归一化会导致按列也接近归一化。