關於 Transformer 意識的筆記

關於 Transformer 意識的筆記

Lesswrong·

假設 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 視為可以運行許多心智的模擬器或物理引擎,而不是具有單一體驗的單一心智。在這種情況下,只運行一半的層可能類似於只模擬了一半的世界。

另一種可能性:殘差流向量可能類似於大腦物理模擬中的狀態。狀態隨時間演化,就像殘差流隨層數演化一樣。因此,在這種觀點下,運行一半的層就像人類大腦只存在了原本一半的時間。

  • ^(^)我所說的「Transformer」是指像 GPT 這樣的自回歸僅解碼(decoder-only)模型。

  • ^(^)如上所述運行預填。

討論

Lesswrong

相關文章

  1. Transformer 電路直覺分析

    Hacker News · 大約 1 個月前

  2. 在 Transformer 中執行程式並實現指數級快速推理

    Hacker News · 大約 2 個月前

  3. 預填充即服務:下一代模型 KVCache 讓大型語言模型推理實現跨數據中心運作

    Rohan Paul · 13 天前

  4. 預填感知:大型語言模型能否察覺其對話歷史遭到竄改?

    大約 2 個月前

  5. 意識作為一種分散式的龐氏騙局

    6 個月前