G4.1 4 分鐘閱讀 2026年10月

G4.1 名單重排後,attention 會跟著怎麼變?

本篇重用1 篇

算得出權重,還要確認它沒有讀取編號

在 G4.0,我們先要求權重表跟著詢問者與被參考者重排,再用共享的比較與正規化構造 attention。現在把選好的 Q/K/V 公式逐項代入:這些運算是否真的保留了我們一開始提出的要求?

我們不只看最後的輸出,也要追蹤中間的分數與 softmax 分母,確認每個 index 仍對應同一個點。

想像圖書館重新排了書架。若書的索引與內容一起搬動,同一個問題應找到同樣的內容,只是它出現在新的位置。

先追蹤三份 features

沿用 H′=PHH'=PH。因為 projection 作用在 feature 維度,而 PP 作用在 rows,

Q′=PHWQ=PQ,K′=PK,V′=PV.Q'=PHW_Q=PQ,\qquad K'=PK,\qquad V'=PV.

接著看分數表:

S′=Q′(K′)⊤dk=PQK⊤P⊤dk=PSP⊤.S'=\frac{Q'(K')^\top}{\sqrt{d_k}} =\frac{PQK^\top P^\top}{\sqrt{d_k}} =PSP^\top.

左邊的 PP 搬動詢問者,右邊的 P⊤P^\top 搬動被參考者。兩邊都要換,才還是同一份「誰參考誰」的關係。

Softmax 的分母會不會改?

令重排後第 ii 列來自原本第 π(i)\pi(i) 列,也就是 (PH)i=hπ(i)(PH)_i=h_{\pi(i)}。固定詢問者後,

Aij′=exp⁡(Sπ(i),π(j))∑ℓ=1nexp⁡(Sπ(i),π(ℓ)).A'_{ij} =\frac{\exp(S_{\pi(i),\pi(j)})} {\sum_{\ell=1}^n\exp(S_{\pi(i),\pi(\ell)})}.

π(ℓ)\pi(\ell) 只是把全部 keys 各走過一次,分母因此等於 ∑r=1nexp⁡(Sπ(i),r)\sum_{r=1}^n\exp(S_{\pi(i),r})。所以 Aij′=Aπ(i),π(j)A'_{ij}=A_{\pi(i),\pi(j)},寫成矩陣就是

A′=PAP⊤.A'=PAP^\top.

最後把 values 搬動的結果代入:

Y′=A′V′=PAP⊤PV=PAV=PY,Y'=A'V'=PAP^\top PV=PAV=PY,

其中 P⊤P=IP^\top P=I。這層 self-attention 的逐點輸出是 permutation-equivariant,不是所有點共用一個 invariant 答案。

如果任務只要整群點一個答案呢?

像 G3.1 一樣接對稱 pooling。例如

z(H)=∑iyi,z(PH)=∑iyπ(i)=z(H).z(H)=\sum_i y_i,\qquad z(PH)=\sum_i y_{\pi(i)}=z(H).

再用 ψ(z)\psi(z) 分類,就得到 permutation-invariant output。Lee 等人 [2] 的 Set Transformer 也把 equivariant encoder 與 invariant 的 attention pooling 分開設計;這裡的 sum 是最簡單可直接驗證的 readout。

補充用一個固定 query 讀集合,也能得到 invariant 摘要

令固定 query qq 比較全部 keys,得到一列權重 aa。重排資料時 K′=PKK'=PK、V′=PVV'=PV,query 不動,因此 a′=aP⊤a'=aP^\top,輸出 a′V′=aVa'V'=aV。注意這個 query 是讀取者,不是資料集合裡一個需要被一起重排的點。這與讓所有資料點各自當 query 的 self-attention 是不同的 output action。

重排 queries 與 keys 後,分數變成 PSPᵀ,輸出則跟著點變成 PY。
重排 queries 與 keys 後,分數變成 PSPᵀ,輸出則跟著點變成 PY。

課堂提問

重排後 heatmap 的數字位置改了,是否代表 attention 沒有保留 symmetry?

先想一想,再展開看整理後的答案

不代表。我們預期它變成 PAP⊤PAP^\top,不是原封不動的 AA。先把詢問者與被參考者的編號對齊,再比較同一對點的權重。

動手看一次

按「重排名單」。Heatmap 的兩個軸都會改順序,但下方的輸出比較會按照點的身分對齊。Defect 量的是 Y(PH)Y(PH) 與 PY(H)PY(H) 的差,不是直接比較不同點。

快速回顧一下

想一想S 的哪個軸對應 query?

想一想重排 keys 為什麼不改 softmax 分母?

想一想Y'=PY 能直接推出 Y'=Y 嗎?

參考文獻

  1. Vaswani 等人(2017),Attention Is All You Need
  2. Lee 等人(2019),Set Transformer