上一篇我們談到,如果想理解大型語言模型,只觀察輸入與輸出是不夠的,我們需要開始往模型裡面看。但在拿出各種 interpretability 工具以前,我們得先討論一個更基本的問題:模型裡到底有哪些東西可以讓我們看?
如果你已經接觸過 Transformer,可能看過一張充滿 Multi-Head Attention、Feed Forward Network、LayerNorm 和箭頭的架構圖。這些元件當然都很重要,不過對這系列接下來來說,我們暫時不需要重新學一次完整的 Transformer,我們只需要先抓住一個核心概念:Residual Stream。
假設我們輸入一句:”The capital of Taiwan is”,模型首先會把每一個 token 轉換成一個高維向量,也就是 embedding。接下來,這些向量會一路經過許多層 Transformer。但與其想像資訊每經過一層就被「換成一個全新的向量」,更有用的方式是想像模型裡存在一條持續流動的資訊通道(Residual Stream)。
每一層的 Attention 和 MLP 都會從 Residual Stream 讀取目前已有的資訊,進行自己的計算,再把結果加回去。因此,隨著模型一層一層往前運算,Residual Stream 也會不斷累積前面所有元件寫入的結果。Transformer Circuits 的研究者因此把它形容成一條模型內部的 communication channel:Residual Stream 本身不負責複雜的計算,而是讓不同層、不同元件可以把資訊寫進去,再讓後面的元件讀出來。[1]

簡單來說,可以先記住:Attention 和 MLP 不斷從 Residual Stream 讀取資訊、做計算,再把新的資訊寫回去。
這裡我們不深入公式,只建立一個之後會一直使用的直覺:Attention 最重要的功能之一,是讓不同 token position 之間可以交換資訊。例如模型看到:”Alice gave Bob the book because he ...”,要判斷 “he” 可能指的是誰,當前位置就需要取得前面不同 token 的資訊。Attention 可以根據目前的 context,決定從哪些位置讀取什麼資訊,再把結果寫回當前位置的 Residual Stream。MLP 負責的則比較像是在每一個位置上,針對目前已有的 representation 進一步做轉換與計算。這是一個非常簡化的說法,但對現在已經夠用了:
實際上它們學到的功能遠比這複雜,而「某個 Attention Head 或 MLP 到底做了什麼」本身,就是 Mechanistic Interpretability 很重要的一類問題。
如果我們想知道模型「目前知道什麼」,Residual Stream 是一個非常自然的地方,因為它就像模型一路運算時共同使用的工作空間。前面的 layer 已經計算出的資訊會被寫進去,後面的 layer 再從中讀取自己需要的部分。因此,很多接下來會看到的方法,其實都在直接或間接地操作 Residual Stream。例如,我們可以:
後面的 probing、Logit Lens、activation patching、steering,其實都會不斷回到這條資訊流。這也是為什麼 ARENA 在 Mechanistic Interpretability 的教材中,把 Residual Stream 稱為 Transformer 中非常核心的物件。[2]
假設某一層、某一個 token 的 Residual Stream 是一個 4096 維的向量。我們可以把這 4096 個數字全部印出來:
[0.42, -1.37, 0.08, ..., 2.11]
然後呢?這些數字本身並不會告訴我們:「第 731 維代表台灣。」甚至很可能根本沒有任何一個 dimension 單獨代表「台灣」。模型可能把「這是一個國家」、「它和台北有關」、「現在需要預測一個城市名稱」等資訊,以某種分散在高維空間中的方式表示。換句話說,我們已經找到可以觀察模型的地方,但還不知道該怎麼讀懂裡面的內容。這正好帶出下一個問題:如果模型真的在 Residual Stream 中表示了某個 concept,那這個 concept 到底會以什麼形式存在?
下一篇,我們就從 concept、representation 和 direction 開始,並看看為什麼許多 interpretability 研究會假設「某些概念可能以相對簡單的幾何結構存在於模型的高維空間中。」
[1] Elhage, N., Nanda, N., Olsson, C., et al., “A Mathematical Framework for Transformer Circuits”, Transformer Circuits Thread, 2021. https://transformer-circuits.pub/2021/framework/
[2] ARENA, “Transformer Interpretability”, ARENA Chapter 1. https://learn.arena.education/chapter1_transformer_interp/01_transformers/