flâneur

连续化 Softmax Attention - 科学空间|Scientific Spaces

kexue.fm · saved by 1 readers

Softmax Attention想必大家已经不陌生,它是定义在有限向量集合下的一个加权混合算子。近日,论文《Continuum Attention》提出了一个很有意思的想法——将注意力连续化。这让笔者想起,之前在《为什么DeltaNet要加L2 Normalize?》介绍的EFLA也是将离散RNN连续化,然后又重新离散化,得到一些有意思的结果,类似的还有早期的SSM系列工作。 这样看来,“连续化—离散化”似乎是一条屡试不爽的探索路径。那么,Softmax Attention连续化又能得到什么有意思的结果呢?让我们一起来品鉴一番。 标准的Softmax Attention定义为 o t = ∑ t i=1 e q t ⋅ k i v i ∑ t i=1 e q t ⋅ k i (1) (1) 𝑜 𝑡 = ∑ 𝑖 = 1 𝑡 𝑒 𝑞 𝑡 ⋅ 𝑘 𝑖 𝑣 𝑖 ∑ 𝑖 = 1 𝑡 𝑒 𝑞 𝑡 ⋅ 𝑘 𝑖 所谓连续化,是想将它改成 o t = ∫ t 0 e q t ⋅ k s v s ds ∫ t 0 e q t ⋅ k s ds (2) (2) 𝑜 𝑡 = ∫ 0 𝑡 𝑒 𝑞 𝑡 ⋅ 𝑘 𝑠 𝑣 𝑠 𝑑 𝑠 ∫ 0 𝑡 𝑒 𝑞 𝑡 ⋅ 𝑘 𝑠 𝑑 𝑠 其中非整数点的 k,v 𝑘 , 𝑣 ,定义为线性插值,即对于任意 s∈[i−1,i],i∈ N + 𝑠 ∈ [ 𝑖 − 1 , 𝑖 ] , 𝑖 ∈ 𝑁 + ,定义 k s =(i−s) k i−1 +(s−i+1) k i , v s =(i−s) v i−1 +(s−i+1) v i (3) (3) 𝑘 𝑠 = ( 𝑖 − 𝑠 ) 𝑘 𝑖 − 1 + ( 𝑠 − 𝑖 + 1 ) 𝑘 𝑖 , 𝑣 𝑠 = ( 𝑖 − 𝑠 ) 𝑣 𝑖 − 1 + ( 𝑠 − 𝑖 + 1 ) 𝑣 𝑖 该定义需要额外引入 k 0 , v 0 𝑘 0 , 𝑣 0 两个向量(用于 s∈[0,1] 𝑠 ∈ [ 0 , 1 ] ),其取值我们最后再讨论。 注意,式 (2) (2) 的定义跟原论文略有不同,原论文出于对称考虑,将积分区间改为了 [1/2,t+1/2] [ 1 / 2 , 𝑡 + 1 / 2 ]

saved by