搜尋課程與筆記

搜尋筆記

輸入主題、關鍵字或單元編號,例如 Flow Matching、U4。

    按 Esc 關閉 · ⌘ / Ctrl K 開啟搜尋

    G6.3 6 分鐘閱讀 2026年10月

    G6.3 鏡子裡的分子,也一定要得到相同答案嗎?

    本篇重用1 篇

    左右手看起來很像,為什麼不能只靠轉動重合?

    把左手與右手放在桌上,形狀互為鏡像,但無論怎麼在三維空間轉動,也不能讓每個對應部位重合。這個熟悉的經驗,就是 chirality(手性) 的直覺。

    前面 distance-based layers 對所有 orthogonal transformations 都有一致性,包括 reflection。如果任務只關心鍵長與普通距離,這很合理;但若想辨認左右手構型,把 mirror 當成同一份答案,會不會先排除了正確模型?

    我們先算一個只需要四個點的例子,再決定該用哪個 group。

    所有距離都相同,真的還是可能不同

    取四個不同型別的點 a,b,c,da,b,c,d,型別讓每個點的身份明確。鏡射矩陣 QQ 滿足 Q⊤Q=IQ^\top Q=I、det⁡Q=−1\det Q=-1。

    鏡像後的任意距離是

    ∥Qa−Qb∥=∥Q(a−b)∥=∥a−b∥.\|Qa-Qb\|=\|Q(a-b)\|=\|a-b\|.

    其他所有 pairs 也相同。因此任意只讀這些型別與 pairwise distances 的 invariant scalar model,都會給鏡像相同答案。

    這不是距離取樣太少:即使全部距離都知道,orientation 的符號仍被消除。 若 target 區分手性,distance-only E(d)-invariant scalar 就不適合。

    要留下哪一種新資訊?

    以 aa 為共同起點,取三支向量:

    u=b−a,v=c−a,w=d−a.u=b-a,\qquad v=c-a,\qquad w=d-a.

    用它們作為矩陣的三個 columns,定義 signed volume:

    V=det⁡[u,v,w].V=\det[u,v,w].

    它的絕對值是平行六面體體積,符號則記下三個方向的 orientation。共同 translation 在相減後消失;orthogonal transformation 後,

    V′=det⁡[Qu,Qv,Qw]=det⁡(Q)det⁡[u,v,w]=det⁡(Q)V.V'=\det[Qu,Qv,Qw] =\det(Q)\det[u,v,w] =\det(Q)V.

    Proper rotation 的 determinant 是 11,所以 V′=VV'=V;reflection 是 −1-1,所以 V′=−VV'=-V。這讓鏡像產生不同的數值。

    取 a=(0,0,0)a=(0,0,0)、b=(1,0,0)b=(1,0,0)、c=(0,1,0)c=(0,1,0)、d=(0,0,1)d=(0,0,1),得到 V=1V=1;將第一個座標鏡射,得到 V=−1V=-1,距離卻完全相同。

    這還是 scalar 嗎?

    它是一個數,但不是 reflection-invariant scalar。對 proper rotations 不變、對 reflection 改符號的量叫 pseudoscalar(偽純量)。

    這再次說明「輸出是一個數字」不夠決定 output action。普通 energy 可以要求 E(d)-invariant;signed orientation 則應使用不同的 action,或把 group 限定為 SE(d)。

    同樣,cross product 是 axial vector,reflection 下與普通 polar vector 的 action 不同。我們在擴充單元再處理 tensor 的型別;這裡先把 scalar 與 pseudoscalar 的差別說清楚。

    點的排列會不會改變 signed volume?

    會,若任意交換 b,cb,c,determinant 也變號。所以用 signed volume 辨認手性時,需要明確的 chemical identities 或一致的 ordering rule,不能依資料的 row 順序臨時決定 a,b,c,da,b,c,d。

    本例用四種不同型別固定角色,shuffle 時點的型別跟著搬動,再按型別取出四個點,才不會把 permutation 和 reflection 混為一談。若點沒有可區分身份,要設計更完整的 permutation-consistent construction。

    補充E(d) 與 SE(d) 哪個正確,要由任務決定

    在沒有手性外部條件的經典系統中,鏡像構型的某些 energy 可以相同;識別手性類別或與手性環境的互作用時,target 可以不同。不能因為分子可能有手性,就斷言所有 energy 都必須在 reflection 下改變。

    第一階段留下了什麼判斷方法?

    我們沒有找到一種所有任務都該使用的最大 symmetry。相反地,每次都先問:哪些輸入變化保留任務意義?答案是什麼型態?哪些資訊不能被提前平均或消除?

    G1 的地標座標、G3 的元素順序、G5 的道路關係、G6 的 force 與鏡像,都在使用同一條檢查方法。接下來把這些要求寫成真正的測試,就能把「模型看起來合理」變成可計算的證據。

    鏡射保留所有距離,卻翻轉有序四點的 signed volume;任務若要辨認手性,不能強制它對鏡像同值。
    鏡射保留所有距離,卻翻轉有序四點的 signed volume;任務若要辨認手性,不能強制它對鏡像同值。

    課堂提問

    如果用資料表最前面四個 rows 算 signed volume,再宣稱模型 permutation-invariant,問題在哪裡?

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

    重排會改變四個點的選擇與順序,determinant 可能改值或改符號。本例靠不同點型別固定角色,型別隨點重排;不能把 row index 當作幾何身份。

    動手看一次

    勾選鏡射,再比較 pairwise distance、energy 與 signed volume。前兩者不變,後者變號;A–D 是固定角色,不是任意 row 順序。

    快速回顧一下

    想一想全部距離可以辨認鏡像 orientation 嗎?

    想一想Signed volume 在 reflection 下如何變?

    想一想所有分子 target 都需要排除 reflection 嗎?

    參考文獻

    1. Satorras、Hoogeboom 與 Welling(2021),E(n) Equivariant Graph Neural Networks
    2. Bronstein、Bruna、Cohen 與 Veličković(2021),Geometric Deep Learning