背景,普通的self-attention
Q 是 n x d
K 是 n x d
V 是 n x d
QK是 n x n
继而 (QK)V 是n x d
计算量最大的在于QK出n x n
这步,固算Attention为O(n^2)复杂度
Linformer用两个 n x k
矩阵,将 K 和 V 映射为 k x d
则
Q 是 n x d
K 是 k x d
V 是 k x d
QK是 n x k
继而 (QK)V 还是n x d
k如果足够小的话,证明就是O(n)复杂度算Attention了,
同时,文章从数学上证明了这样做的误差和原来相比很小。