# Multi-axis Relative Rotary Encoding with Layer-wise Random Speaker Projection for Speaker-aware Attention --- # 1. 动机(Motivation) ## 1.1 Transformer 中相对关系建模的重要性 Self-attention 的核心计算为: [ A_{ij}=q_i^Tk_j ] 该计算仅依赖 query 与 key 的内容匹配,而缺少显式结构关系建模。 因此 Transformer 通常引入位置编码,使模型能够感知 token 间的相对关系。 RoPE(Rotary Position Embedding)的核心思想是不直接将 position embedding 加入 token 表示,而是通过旋转变换将绝对位置映射到 query/key 空间: [ q_i'=R(p_i)q_i ] [ k_j'=R(p_j)k_j ] 此时 attention 得分: [ (q_i')^Tk_j' ] 展开: # [ q_i^TR(p_i)^TR(p_j)k_j ] 由于旋转矩阵满足: [ R(a)^TR(b)=R(b-a) ] 因此: [ \boxed{ A_{ij} ====== q_i^TR(p_j-p_i)k_j } ] 即 attention 不再依赖绝对位置: [ p_i,p_j ] 而只依赖: [ p_j-p_i ] 因此 RoPE 将: [ \text{absolute position} ] 转化为: [ \boxed{\text{relative position}} ] --- # 1.2 Speaker embedding 的特殊性 在 speaker diarization、speaker-attributed ASR 以及 conversation modeling 中,通常利用 speaker embedding: [ e_s\in\mathbb R^{d_e} ] 表示说话人身份。 然而,与时间位置不同,speaker embedding 不具有绝对坐标语义。 对于任意保持空间结构的旋转: [ e'_s=Ue_s ] 其中: [ U^TU=I ] 有: [ \cos(e_i',e_j') =============== \cos(e_i,e_j) ] 说明 speaker embedding 的语义主要存在于: [ \boxed{ \text{relative geometry} } ] 而非: [ \text{absolute coordinate} ] 因此,一个理想的 speaker encoding 应满足: 1. 不依赖 speaker embedding 的绝对方向; 2. 保留 speaker embedding 空间中的相对关系; 3. 相同 speaker token 保持较强 interaction; 4. 不同 speaker token 自动产生 attention decorrelation。 --- # 1.3 从二维 RoPE 到 Speaker-aware Rotary Encoding 二维 RoPE 将二维位置: [ (x,y) ] 映射到两个独立 rotary 子空间: [ R(x,y) ====== R_x(x)\oplus R_y(y) ] 使不同相对轴分别建模。 类似地,在 speaker-aware attention 中,可以认为: [ (position,speaker) ] 构成两个不同的相对结构: * position axis: 时间相对距离; * speaker axis: speaker embedding 几何关系。 因此设计: [ \boxed{ R_{total} ========= R_{pos} \oplus R_{spk} } ] 其中: * position rotary 保留原始 RoPE; * speaker rotary 建模相对 speaker relationship。 --- # 2. 编码设计(Encoding Design) --- # 2.1 Block-wise Rotary Dimension Split 设 Transformer attention head 维度: [ d_h ] 划分为: [ d_h=d_p+d_s ] 其中: * (d_p):position rotary 子空间; * (d_s):speaker rotary 子空间。 例如: [ d_h=64 ] 采用: [ d_p=32 ] [ d_s=32 ] 则: [ q_i= [q_i^{pos};q_i^{spk}] ] [ k_i= [k_i^{pos};k_i^{spk}] ] 即: [ \boxed{ \text{前半部分编码时间,后半部分编码 speaker} } ] --- # 2.2 Position Rotary Branch position 分支完全保持原始 RoPE。 对于第 (l) 层: [ q_{i,l}^{pos\prime} =================== R(p_i)q_{i,l}^{pos} ] [ k_{i,l}^{pos\prime} =================== R(p_i)k_{i,l}^{pos} ] 其中: [ p_i=i ] --- # 2.3 Layer-wise Random Speaker Projection ## Speaker embedding normalization 首先对 speaker embedding 归一化: [ \hat e_i ======== \frac{e_i}{||e_i||} ] 后续记: [ e_i=\hat e_i ] 因此: [ ||e_i||=1 ] --- ## Layer-wise projection matrix 不同于共享单一 projection,本方法为每个 Transformer layer 分配独立随机矩阵: [ \boxed{ W_l\in \mathbb R^{d_s/2\times d_e} } ] 其中: [ \boxed{ (W_l)_{mn}\sim N(0,1) } ] 并满足: * 不同 layer: [ W_l\neq W_{l'} ] * 同一 layer、同一 utterance: 所有 token 使用同一个: [ W_l ] 因此: [ \theta_{i,l} ============ W_le_i ] --- ## 为什么采用 layer-wise projection? 不同 layer 学习不同抽象层级的 speaker relationship。 因此: layer (l): [ \theta_{i,l}=W_le_i ] 相当于从不同随机子空间观察 speaker manifold。 同时: 由于同一 layer 内: [ W_l ] 保持一致: [ \theta_{j,l}-\theta_{i,l} ========================= W_l(e_j-e_i) ] 保证 relative speaker property。 --- # 2.4 Speaker Rotary Transformation 第 (l) 层: [ q_{i,l}^{spk\prime} =================== R(\theta_{i,l})q_{i,l}^{spk} ] [ k_{i,l}^{spk\prime} =================== R(\theta_{i,l})k_{i,l}^{spk} ] --- # 2.5 Combined Attention 最终: [ q_i' ==== [ q_i^{pos\prime}; q_i^{spk\prime} ] ] [ k_j' ==== [ k_j^{pos\prime}; k_j^{spk\prime} ] ] attention: [ A_{ij} ====== (q_i')^Tk_j' ] 由于两个子空间正交: [ \boxed{ A_{ij} ====== A_{pos} + A_{spk} } ] 其中: [ A_{pos} ======= (q_i^{pos\prime})^Tk_j^{pos\prime} ] [ A_{spk} ======= (q_i^{spk\prime})^Tk_j^{spk\prime} ] --- # 3. 理论证明(Theoretical Analysis) --- # 3.1 原始 RoPE 相对位置性质保持 考虑 position branch: [ q_i^{pos\prime} =============== R(p_i)q_i^{pos} ] [ k_j^{pos\prime} =============== R(p_j)k_j^{pos} ] attention: [ A_{pos} ======= (q_i^{pos\prime})^Tk_j^{pos\prime} ] 展开: # [ (q_i^{pos})^TR(p_i)^TR(p_j)k_j^{pos} ] 利用旋转性质: [ R(p_i)^TR(p_j) ============== R(p_j-p_i) ] 得到: [ \boxed{ A_{pos} ======= (q_i^{pos})^TR(p_j-p_i)k_j^{pos} } ] 因此: 加入 speaker rotary 后: [ \boxed{ \text{original RoPE relative position property is preserved} } ] 原因: position rotary 与 speaker rotary 位于独立子空间。 --- # 3.2 Layer-wise Speaker Rotary Relative Property 对于第 (l) 层: [ q_{i,l}^{spk\prime} =================== R(\theta_{i,l})q_{i,l}^{spk} ] [ k_{j,l}^{spk\prime} =================== R(\theta_{j,l})k_{j,l}^{spk} ] 因此: [ A_{spk}^{(l)} ============= (q_i^{spk})^T R(\theta_{i,l})^TR(\theta_{j,l}) k_j^{spk} ] 得到: # [ (q_i^{spk})^T R(\theta_{j,l}-\theta_{i,l}) k_j^{spk} ] 由于: [ \theta_{i,l}=W_le_i ] 所以: [ \theta_{j,l}-\theta_{i,l} ========================= W_l(e_j-e_i) ] 因此: [ \boxed{ A_{spk}^{(l)} ============= (q_i^{spk})^T R(W_l(e_j-e_i)) k_j^{spk} } ] 说明: 第 (l) 层 speaker rotary 只依赖: [ \boxed{ e_j-e_i } ] 而不依赖: [ e_i,e_j ] 的绝对坐标。 --- # 3.3 Overall Multi-axis Relative Property 第 (l) 层: [ A_{ij}^{(l)} ============ A_{pos}^{(l)} + A_{spk}^{(l)} ] 即: # [ q_p^TR(p_j-p_i)k_p + q_s^TR(W_l(e_j-e_i))k_s ] 因此: [ \boxed{ A_{ij}^{(l)} ============ f( p_j-p_i, e_j-e_i ) } ] 同时满足: * relative position encoding; * relative speaker encoding。 --- # 3.4 Speaker Rotary Phase Decorrelation 考虑: [ \Delta e=e_j-e_i ] speaker rotary 中: [ R(W_l\Delta e) ] 对应复数形式: [ e^{iw_r^T\Delta e} ] 其中: [ w_r\sim N(0,I) ] 由于: [ w_r^T\Delta e \sim N(0,||\Delta e||^2) ] 根据 Gaussian characteristic function: [ E[e^{ix}] ========= e^{-\frac12Var(x)} ] 得到: [ \boxed{ E[ e^{iw_r^T\Delta e} ] = e^{-\frac12||\Delta e||^2} } ] 因此: [ \boxed{ E[S_m(\Delta e)] ================ m e^{-\frac12||\Delta e||^2} } ] 随着: [ ||e_j-e_i|| ] 增加: phase cancellation 增强。 因此: [ \boxed{ speaker\ distance \uparrow \Rightarrow attention\ correlation \downarrow } ] --- # 3.5 与 Cosine Speaker Similarity 的关系 由于: [ ||e_i||=||e_j||=1 ] 有: [ ||e_i-e_j||^2 ============= 2-2cos(e_i,e_j) ] 因此: [ E[S] ==== e^{-(1-cos(e_i,e_j))} ] 即: [ \boxed{ cos(e_i,e_j) \uparrow \Rightarrow speaker\ rotary\ correlation \uparrow } ] 与 speaker embedding 几何空间一致。 --- # 4. 设计评价(Design Summary) ## 4.1 方法优势 ### (1) 完全保留原 RoPE 能力 采用: [ R_{total} ========= R_{pos}\oplus R_{spk} ] position branch 与原始 RoPE 完全一致。 因此: * 不破坏已有位置建模能力; * 不影响长上下文建模。 --- ### (2) 从绝对 speaker encoding 转向相对 speaker encoding 传统: [ x+e_s ] 依赖 speaker embedding 绝对坐标。 本文: [ R(W_l(e_j-e_i)) ] 直接编码: [ speaker\ relationship ] --- ### (3) Layer-wise random projection 提升表示能力 不同 Transformer layer: [ W_1,W_2,...,W_L ] 提供不同随机观察空间。 同时: 同层内共享: [ W_l ] 保证: [ \theta_j-\theta_i=W_l(e_j-e_i) ] 严格满足 relative property。 --- ### (4) 理论性质统一 最终 attention: [ \boxed{ A_{ij}^{(l)} ============ f( \Delta p, \Delta e ) } ] 同时具有: * RoPE relative position property; * speaker relative geometry property; * speaker distance induced decorrelation。 --- # 4.2 总结 本文提出: [ \boxed{ \textbf{Multi-axis Relative Rotary Encoding with Layer-wise Random Speaker Projection} } ] 将 rotary embedding 从单一时间轴扩展到: [ (position,speaker) ] 通过: [ \boxed{ R_{total} ========= R_{pos} \oplus R(W_le) } ] 实现: * 时间相对关系建模; * speaker 相对关系建模。 理论证明: 1. 原始 RoPE 的相对位置性质完全保持; 2. speaker rotary 满足 relative speaker encoding; 3. layer-wise random projection 保留 speaker embedding 几何不变性; 4. speaker embedding 距离增加导致 rotary phase cancellation,从而产生 attention decorrelation。 该方法提供了一种无需显式 speaker token、无需全局 speaker index 的 speaker-aware Transformer encoding 机制。