transformer的一种加速方法Informer---- 稀疏化quary Q的方法

论文:Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting

transformer主要是增强网络的全局信息利用能力。因为普通的卷积网络都是local信息利用,其在全局信息利用上存在不可避免的短板。所以才会有类似non-local attn的存在。 transformer里面的核心就是attn,
一般来说, A ( q i , K , V ) = S o f t m a x ( Q K T d ) V \mathcal{A}(\mathbf{q}_i, \mathbf{K}, \mathbf{V})=Softmax\left(\frac{\mathbf{QK}^T}{\sqrt{d}}\right)\mathbf{V} A(qi,K,V)=Softmax(d QKT)V,其中 Q ∈ R L Q × d \mathbf{Q}\in \mathbb{R}^{L_Q\times d} QRLQ×d, K ∈ R L K × d \mathbf{K}\in \mathbb{R}^{L_K\times d} KRLK×d, V ∈ R L V × d \mathbf{V}\in \mathbb{R}^{L_V\times d} VRLV×d。而 q i \mathbf{q}_i qi代表的是 Q \mathbf{Q} Q i i i列(即第 i i i个quary)。

举个不太恰当的例子: q q q K K K V V V分别代表 quary, key和value。显然,key和value是配对的。一个key对应一个value。假设你是一个爱学习的孩子(希望确实是哈),然后你去图书馆借书看。那么你喜欢看工科的书,那你就是一个quary,你找的关键词就是 key(工科的书),然后找到的书就是这个key对应的value。不同人(quaries)会根据自己喜好,从而索引不同的关键字(key),最终找到对应的书(value)。

关键: 这里的匹配时,对于每个 q i \mathbf{q}_i qi,我们都要和所有的 k i \mathbf{k}_i ki 分别计算相似度,所以复杂度是 O ( L Q L K ) \mathbb{O}(L_QL_K) O(LQLK)

上面的self-attn其实可以写成:

A ( q i , K , V ) = ∑ j k ( q i , k j ) ∑ l k ( q i , k l ) v j = E p ( k j ∣ q i ) [ v j ] \mathcal{A}(\mathbf{q}_i, \mathbf{K}, \mathbf{V})=\sum_{j}\frac{k(\mathbf{q}_i, \mathbf{k}_j) }{\sum_{l}k(\mathbf{q}_i, \mathbf{k}_l) }\mathbf{v}_j=\mathbb{E}_{p(\mathbf{k}_j|\mathbf{q}_i)}\left[\mathbf{v}_j\right] A(qi,K,V)=jlk(

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值