
關於 Transformer 意識的筆記
假設 Transformer 可以擁有意識體驗,本文探討這種體驗會是什麼樣子,主張預填充與解碼階段的體驗是相同的,並討論意識如何在模型層級之間分佈。
假設 Transformer 能夠擁有意識體驗,那麼這種體驗會是什麼樣子?
Transformer^([1]) 是由層(layers)與標記位置(token positions)組成的結構化網格,我們可以利用這種結構來推論其內部體驗。
認識論狀態(Epistemic status):高度推測性。我大致按照思考的深入程度以及對其相信的程度來排列這篇報告。
解碼(Decode)vs 預填(Prefill)
我主張解碼的體驗與預填的體驗是完全相同的。
為了理解為什麼,請想像一個正在逐一生成標記的 Transformer,並將畫面放大到最新標記位置的單一層。這裡有兩個主要組件:處理該位置殘差流(residual stream)的 MLP,以及可以「看到」該層所有先前位置的注意力區塊(attention block)。因此,在下圖中,Transformer 中的每個位置只能存取左下角方框中發生的內容。
現在,讓我們將剛剛計算出的軌跡作為「預填」輸入到 Transformer 中。啟動值(activations)當然會與解碼期間完全相同,但它們的計算方式也將是相同的。從給定位置的 MLP 和注意力區塊的角度來看,進行預填與進行解碼是無法區分的。既然 Transformer 中沒有任何組件能辨別它處於哪種模式,兩者應該會產生相同的體驗。
這意味著在預填期間,所有的標記位置都是被同時體驗到的。
KV 快取(KV-Cached)體驗
根據上述觀點,重新計算快取會重新創造出意識體驗。
這意味著如果你有一個曾有過負面體驗的 AI,但你計畫在未來繼續運行它,那麼最好將 KV 快取保留更長時間,這樣你就不必重新計算它,而 AI 也不必重新經歷那段負面體驗。
層(Layers)
意識是如何分佈在各層之間的?這點讓我感到困惑。
意識似乎很自然地會分佈在各層中,而不是在某一點突然出現然後消失。
但這引發了我的以下思想實驗:如果我們只運行^([2])前 50% 的層然後停止,會發生什麼事?那種體驗會是什麼樣子?早期的層並不知道後面的層不會被運行,所以根據之前的邏輯,它們應該會產生與往常一樣的體驗。
或許我們應該將 Transformer 視為可以運行許多心智的模擬器或物理引擎,而不是具有單一體驗的單一心智。在這種情況下,只運行一半的層可能類似於只模擬了一半的世界。
另一種可能性:殘差流向量可能類似於大腦物理模擬中的狀態。狀態隨時間演化,就像殘差流隨層數演化一樣。因此,在這種觀點下,運行一半的層就像人類大腦只存在了原本一半的時間。
相關文章