自注意力机制中的相对位置表示

Peter Shaw, Jakob Uszkoreit, and Ashish Vaswani. 2018. Self-Attention with Relative Position Representations. In Proceedings of HLT-NAACL. New Orleans, Louisiana, 464–468. https://doi.org/10.18653/v1/N18-2074 \url{https://doi.org/10.18653/v1/N18-2074} https://doi.org/10.18653/v1/N18-2074
Transformer 的输入是 文字嵌入 和位置嵌入的矩阵和. 第 i 个文字的输入为 x i : = x i + e i x_i:=x_i +e_i xi:=xi+ei.
如果单独考虑位置信息, 在初始 Q,K,V 中 不考虑 位置信息. 在注意力机制中 所有的运算都和位置有关系. 我们注意到 位置信息主要是在 点积和 输出投影 z i : = ∑ k a ^ i , k v k z_i:=\sum_k\hat{a}_{i,k}v_k zi:=ka^i,kvk 中起作用.
我们假定 第 i 个位置受第 j 个位置的影响为 a i , j ∈ R d a_{i,j} \in \mathbb{R}^d ai,jRd.
比较明显的是 z i = ∑ k a ^ i , k ( v k + a i , k ) z_i= \sum_k\hat{a}_{i,k}(v_k+a_{i,k}) zi=ka^i,k(vk+ai,k).

在点积中 ( q i ′ + q i ′ ′ ) ( k j ′ + k j ′ ′ ) T : = ( x i + e i ) W Q ( ( x j + e j ) W K ) T = q i ′ k j ′ + q i ′ ′ ( k j ′ + k j ′ ′ ) T + q i ′ k j ′ ′ (q'_i+q''_i)(k'_j+k''_j)^T:=(x_i +e_i)W^Q ((x_j +e_j)W^K)^T=q'_ik'_j +q''_i(k'_j+k''_j )^T +q'_ik''_j (qi+qi)(kj+kj)T:=(xi+ei)WQ((xj+ej)WK)T=qikj+qi(kj+kj)T+qikj.
观察上式, 第一项与位置无关, 后两项与位置相关. 考虑做一点改动, 不去考虑 Q 的位置信息, 只考虑 K 的位置信息. 修改后的公式变为
q i ′ ( k j ′ + a i , j ) T q'_i(k'_j + a_{i,j})^T qi(kj+ai,j)T.
出于效果上的考虑, 这里的 a i , j a_{i,j} ai,j 和前面的 a i , j a_{i,j} ai,j 不能等同. 我们用 所在的环境将之分别记作 a i , j K a_{i,j}^K ai,jK, a i , j V a_{i,j}^V ai,jV.

位置相距过远, 其干扰性可以忽略, 我们考虑使用阶段距离 k. a i , j a_{i,j} ai,j 超出部分 用 a i , i + k a_{i,i+k} ai,i+k a i , i − k a_{i,i-k} ai,ik 替代. 如是 总共有 2 k + 1 2k+1 2k+1 个向量需要学习.

( ⋮ x i − k ⋮ x i ⋮ x j ⋮ x i + k ⋮ ) \left( \begin{array}{c} \vdots \\ x_{i-k}\\ \vdots \\ x_{i}\\ \vdots\\ x_j\\ \vdots\\ x_{i+k}\\ \vdots \end{array} \right) xikxixjxi+k

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值