AI 技術前沿

字典學習法規模化:Anthropic 如何在完整大模型中找到「素食主義」和「程式後門」特徵

Anthropic 可解釋性團隊成功將字典學習技術從小模型擴展到完整的大型語言模型,發現了令人驚訝的跨語言、跨模態特徵,包括「素食主義」和「程式後門」等複雜概念。

來源: Anthropic YouTube
字典學習法規模化:Anthropic 如何在完整大模型中找到「素食主義」和「程式後門」特徵

本文整理自 Anthropic YouTube 頻道 2024 年 6 月發布的影片。


從手持電鑽到地心探測:規模化的真正意義

去年十月,Anthropic 發表了一篇題為「Towards Monosemanticity」的論文,展示了一種叫做字典學習(dictionary learning)的技術,能夠從一個非常小的語言模型中提取出可解釋的特徵。那篇論文在學術界引起不小的關注,因為它證明了一件事:我們確實有辦法窺探語言模型的「大腦」,找到它內部的概念表徵。但那個模型有多小呢?小到如果你問它「貓怎麼叫」,它可能答不出來。這就像你用手持電鑽往地面鑽了幾公分,看到泥土,然後宣布:「地球是泥土做的。」技術上沒錯,但離理解地心結構還差得遠。

Anthropic 可解釋性團隊的四位成員,Josh Batson、Jonathan Marcus、Adley 和 Tom(簡稱 TC),在這次對話中分享了接下來發生的事。他們花了好幾個月的時間,把同樣的技術從那個「連貓叫都答不對」的小模型,一路擴展到 Anthropic 實際部署在生產環境中的 Claude 3 Sonnet。Jonathan 用了一個我覺得非常精準的比喻來描述這件事:去年他們用手持電鑽往下鑽了幾公分,證明地表是泥土。現在他們造了一台巨型雷射鑽機,一路鑽進了地球的地函,發現裡面是岩漿。技術上做的是同一件事,他們也預期會找到岩漿,但實際做到的工程量級完全不是同一回事。

我認為這個比喻之所以好,是因為它精準捕捉了 AI 研究中一個常被低估的現實:在小模型上成功的技術,要在大模型上重現,所需的工程努力不是線性增長,而是指數級的。你可能覺得「不就是同一個演算法嗎?放大就好了啊。」但事實是,當規模從一張 GPU 跳到需要跨越數百張 GPU 的分散式系統,從幾 GB 的資料變成 PB 級的資料量,原本優雅簡潔的程式碼會在各種完全意想不到的地方崩潰。這不是因為數學變了,數學從頭到尾都可以直接複製貼上。而是因為矽晶片上跑的東西,跟黑板上寫的公式是兩個世界。


小模型和大模型之間的鴻溝

要理解這次突破的意義,首先得搞清楚「小模型」和「大模型」的差距到底有多大。TC 在對話中直接點出了這件事:他們之前研究的那個小模型,跟你用過的任何語言模型都不一樣。你問它任何你覺得語言模型應該會的問題,它都會完全搞砸。Josh 甚至半開玩笑地問:「它會喵嗎?」TC 的回答是:「我覺得不會,不過我們好像也沒試過。」這種小模型之所以有用,是因為研究人員相信它跟大模型有類似的內部結構,但實際的能力差距就像一台學步車和一輛 F1 賽車。

這個差距意味著,在小模型上找到的特徵,品質也跟大模型上的天差地遠。Adley 特別強調了這一點:在單層小模型中,他們找到的特徵對應的是「數到十」或者「URL 後面那串亂碼般的字母數字」這種簡單模式。但當你把同樣的技術應用到一個真正強大的模型上,找到的特徵就不只是科學上有趣了,它們代表的是豐富、細膩、有層次的概念。這些特徵能讓你真正看見模型是怎麼完成那些我們不知道如何程式化的任務的。

這裡有一個更深層的意涵值得我們停下來想一想。大型語言模型能做很多事情,這些事情我們不知道怎麼用傳統程式設計來實現。如果你能找到它內部的特徵,就等於打開了一扇窗戶,讓你窺見這些能力的運作機制。這不只是學術上的好奇心,對 AI 安全來說意義重大。因為如果你不知道一個系統為什麼會產生某種行為,你就很難保證它在新的情境下會做出你期待的事。


讓人震撼的發現:素食主義、程式後門,和跨模態理解

這次研究中發現的幾個具體特徵,是整個對話最令人興奮的部分。TC 最喜歡的是一個「在程式碼中加法的函式」特徵。有趣的是,這個特徵不只在明顯的 A+B 運算上被觸發,如果有一個函式呼叫了另一個實際上在做加法的函式,這個特徵一樣會亮起來。換句話說,模型對「什麼是加法函式」的理解,比表面上的模式匹配深得多。TC 說,看到這類特徵的第一反應是震驚,但想一想之後又覺得「對,這好像是模型會需要的一種很合理的內部表徵」。

Jonathan 回憶起他第一次發現「素食主義」特徵時的感受。這個特徵能同時辨識不吃肉的概念、對工業化農場的擔憂、不穿皮革,而且是跨語言的。也就是說,不管你用英文、法文還是其他語言討論這些主題,模型內部被觸發的是同一個特徵。Jonathan 說他簡直不敢相信自己看到的東西。這個發現徹底否定了一個常見的誤解,就是語言模型只是在重複訓練資料中見過的模式。這個模型實實在在地把「素食主義」這個概念的不同面向,在內部建立了連結,而研究團隊做的只是發現了這個早已存在的連結。

但最讓我個人驚嘆的是「程式後門」這個特徵的跨模態表現。Josh 解釋說,這個特徵不只在含有漏洞的程式碼上被觸發,它同時也會對被駭的 USB 隨身碟圖片、內藏隱藏攝影機的日常物品圖片產生反應。TC 補充說,他們看到大概五六種不同的偽裝成日用品的隱藏攝影機裝置都觸發了這個特徵。想想看,模型內部辨識「一行有問題的程式碼」的神經元,和辨識「一支內藏攝影機的鋼筆」的神經元,竟然是同一個東西。模型理解的不是表面形式,而是「隱藏的惡意」這個抽象概念。事後想想很合理,但事前誰猜得到?

更令人不寒而慄的是,Jonathan 提到如果你人為地激活這個「程式後門」特徵,然後要求 Claude 幫你完成一個函式,它會一邊寫程式,一邊引入一個微妙的安全漏洞。Josh 半帶幽默地補充說,至少 Claude 夠客氣,把那個函式命名為 “backdoor”。這個發現對 AI 安全的意義非常明確:我們現在不只能找到模型中的危險特徵,還能理解激活這些特徵會導致什麼行為。這是從「知道危險存在」到「知道危險如何運作」的關鍵一步。


Golden Gate Claude:36 小時從論文到產品

在嚴肅的研究討論中,Golden Gate Claude 是一個令人莞爾的插曲,但它背後反映的東西其實很深刻。在這次研究的論文中,有一個被當作亮點的特徵:它會在描述金門大橋的文字上被觸發。有人突發奇想:「我們能不能跟『金門大橋版的 Claude』對話?」Jonathan 回憶說,他原本以為這會很難實現,結果工程團隊的一個人直接跳進程式碼庫,把字典學習論文的成果接上了實際的模型。他問了一句:「你覺得我能拿你們論文的結果直接用嗎?」然後他們試了,就成功了。

時間線是這樣的:論文在星期二早上發表,當天晚上團隊出去吃飯慶祝。在論文的圖表中,有一張展示了當你開啟金門大橋特徵然後問 Claude「你的物理形態是什麼」時,Claude 回答自己就是那座雄偉的金門大橋本身。這原本只是論文裡的一張靜態截圖,但一位叫奧利弗(Oliver)的同事說:「我們來做吧,做成可以對話的版本。」就在大家吃飯慶祝的時候,他開始動手,36 小時之後,一個完整的、可以跟外界互動的 Golden Gate Claude 就上線了。

我覺得這個插曲之所以值得記錄,不只是因為它好玩。它展示了兩件事:第一,可解釋性研究的成果是可以被工程化的,從「找到一個特徵」到「操控那個特徵改變模型行為」,這條路是通的。第二,Anthropic 內部的研究與工程之間的距離很短。一個工程師能在一天半之內,把一篇剛發表的研究論文的成果變成一個可以跟全世界互動的產品,這說明研究程式碼的品質和可用性達到了相當高的水準,也說明組織文化鼓勵這種快速實驗。在很多公司,從論文到原型可能要走幾個月的流程。在這裡,36 小時就夠了。


稀疏自動編碼器:簡單到令人難以置信

在深入工程挑戰之前,有必要先理解這整個研究的核心工具。Josh 用非常直白的方式解釋了什麼是稀疏自動編碼器(sparse autoencoder)。自動編碼器是一種把資料轉換成另一種表徵、然後能從那個表徵還原出原始資料的東西。「稀疏」的意思是,這個新的表徵中只有很少的元素是非零的。這有什麼好處?如果你想理解一筆資料的意義,而它的編碼中只有三個非零元素,你只要去看那三個就好。但如果原始向量有一千個維度,那就很難解讀了。

他們做的事情,從數學上看驚人地簡單。拿 Claude 內部的隱藏狀態向量,訓練一個稀疏自動編碼器,看看能不能把那些向量表示成「每次只有少數幾個基底元素被使用」的稀疏組合。答案是可以。然後當他們去看那些基底元素分別代表什麼時,發現它們出奇地好解釋。Josh 自己也說,一個稀疏自動編碼器從數學角度看,就只有兩個矩陣。你可以把去年十月論文裡的數學公式,幾乎原封不動地複製貼上到現在的論文裡。數學完全一樣,但在矽晶片上跑起來,完全是另一回事。

Adley 補充了一個很重要的脈絡。他們一開始其實嘗試了很多不同的技術,包括數學上更花俏、更複雜的方法。那些方法理論上可能效果更好,但問題是它們只能在小規模資料上跑。而團隊很快發現,要看到真正好的結果,你需要在海量資料上執行,遠超過經典數學文獻中處理的資料規模。稀疏自動編碼器的美在於它夠簡單,簡單到可以無限擴展。Adley 用了一句話總結這個哲學:如果你拿一個簡單的演算法,它是可擴展的,然後你把數字往上調,你就能得到非常美的東西。這讓我想到 Richard Sutton 著名的「苦澀的教訓」(The Bitter Lesson):可擴展的方法最終總是贏過更精巧但不可擴展的方法。而這次的研究,正是這個教訓的又一次驗證。


PB 級資料洗牌:一百座倉庫的撲克牌

Jonathan 的回應非常實在:把數字往上調,那才是難的部分。他坦承自己幾乎不碰數學,但讓一個東西變大 10 倍、100 倍、1000 倍,會在各種你完全沒準備好的維度上把所有抽象層和程式碼全部打爆。會出現各種詭異的 bug,原本運作良好的東西突然在完全意想不到的地方壞掉。

一個具體的例子是資料洗牌(data shuffling)。這是機器學習中一個經典問題:如果你的訓練資料是有順序的,比如先是一堆 A,然後一堆 B,然後一堆 C,模型會先學到「只有 A」,然後切換到「只有 B」,而不是學到整體分佈。解決方法是打亂資料順序。如果資料量小,這很簡單:讀進記憶體,隨機排列,寫回去。但當你的資料是 PB 級別的時候呢?Josh 用了一個很生動的比喻:如果你只需要洗一副撲克牌,用手就行了。但如果有人給你連綿七英里長的撲克牌,你要怎麼洗?Jonathan 接著說:「對,就像我有一百座倉庫的撲克牌。」

他們最後想出的解法是一個多階段平行洗牌演算法(multi-stage parallel shuffle)。概念上其實不複雜:要洗一百座倉庫的牌,先把每座倉庫各自洗一遍,然後把不同倉庫的區段混合在一起,用一種可以證明每個區段都會跟其他區段混合的方式。Jonathan 說,一旦他們把問題框架搞清楚,實際的實作大概是「面試考題」等級的演算法問題,不算太難。但關鍵在於:光是搞清楚問題本身就花了 90% 的功夫。一旦你正確定義了遞迴,要把它從 100 TB 擴展到 10 PB,只要再加一層就行了。

TC 補充了一個重要的脈絡。在他們決定優化洗牌之前,其實有一段很長的「忍受期」。他們知道洗牌步驟的擴展性不好,隨著規模增大,這個步驟越來越慢。但因為還是能跑出實驗結果,所以一直在拖延。直到有一天這個步驟要跑 24 小時,他們才終於說「好吧,該修了」。而且修的時候,他們也不追求完美的理論最佳解。重點不是「平行洗牌的柏拉圖理想型」,重點是「我們的工作本來要 24 小時,怎麼讓它不用 24 小時」。這種務實的態度貫穿了整個工程過程。


從單張 GPU 到分散式系統:Op Sharding 的必要之惡

資料洗牌只是眾多挑戰之一。在規模化的早期階段,團隊就碰到了一個更基本的問題:模型放不進一張 GPU 了。Adley 解釋說,在「Towards Monosemanticity」時期,所有的稀疏自動編碼器都能在一張 GPU 上跑完。但隨著模型變大,這種好日子很快就結束了。你必須把稀疏自動編碼器的參數拆開來,分配到一大堆 GPU 上,這種技術叫做 op sharding。聽起來只是一個技術步驟,但 Jonathan 直言,每當你把東西變大十倍、百倍、千倍,所有的抽象層、所有的程式碼都會在各種你完全沒預料到的維度上崩潰。

更重要的是,他們不是一口氣從小模型跳到最大的模型。TC 特別澄清了這一點。在「Towards Monosemanticity」的結果出來之後,團隊並沒有立刻說「好,我們花八個月直接把它擴展到 Sonnet」。他們不知道這個方法在更大的規模上是不是還能運作。所以整個過程更像是一種來回的探索:在工程面做一點擴展,在研究面跑一些實驗確認這依然有效,然後再擴展一點。不是一個可以預先規劃的巨石式(monolithic)專案,而是邊走邊看、邊確認邊前進的迭代過程。

這種迭代的方式聽起來很慢,但其實是更聰明的做法。如果你花八個月把所有東西都擴展到最大規模,結果發現在某個中間尺度上方法就失效了,那八個月就白費了。分段確認的好處是,每一步你都知道自己還在正軌上。壞處是你得不斷在「快速得到結果」和「穩健地擴展基礎架構」之間做取捨。TC 說這種取捨的判斷力,就是這份工作的核心。而且這個判斷的依據一直在變:隨著你對方法的信心增加,你願意投入更多時間來改善基礎架構。


研究工程 vs. 產品工程:一種全新的取捨藝術

TC 在對話中提出了一個我覺得非常有洞見的對比。他之前在 Facebook 做後端服務,負責驅動 Facebook 網站的系統。那份工作的需求幾年來幾乎不變:系統要穩定、要能承受大流量、要控制伺服器成本。你可以清楚地規劃接下來六個月要做什麼,然後按部就班地執行。但在研究工程這邊,你完全不知道哪些程式碼兩週後就會被丟掉,哪些會用好幾年。

這造成了一種持續的張力。如果你花很多時間把程式碼寫得漂亮、架構設計得完美,結果那段程式碼兩週後就被刪了,那些時間就浪費了。但如果你一直寫很粗糙的原型,然後某個方法真的有效,你會在接下來幾年裡不斷被爛程式碼拖慢速度。TC 說,在這一年的過程中,他們原本嘗試的很多字典學習方法都被刪掉了,永遠不會再碰。但也有核心程式碼被不斷打磨,因為他們知道這些東西會持續使用很久。你必須時刻在腦中維持這種取捨的判斷,而且判斷的依據還在不斷變化。

Adley 提到了另一個維度的困難。當你在設計基礎架構時,某些設計選擇會讓某些未來的研究方向變得容易,同時讓另一些變得困難。問題是你不知道未來的研究會往哪個方向走。你能做的只是盡量預測可能的方向,讓那些方向大致可行,同時意識到自己不可能預測得完美。Adley 坦承這幾乎是一個不可能完美解決的問題,他們只能盡力而為。我認為這其實是所有做前沿研究的工程團隊都會面對的核心困境,而能坦然面對這種不確定性、在不完美的資訊下做出足夠好的決策,本身就是一種非常重要的能力。

Jonathan 把整個脈絡拉得更高。他說自己既不是追求發論文的純科學家,也不是追求完美系統的純工程師。他們有一個非常具體的目標:做到足夠的科學來理解模型如何運作,以實現特定的安全目標。科學要做得夠多、工程要建得夠多,但一分也不想多花在不必要的地方。因為很有可能到最後,除了那個最終結果之外,他們建的每一樣東西都會被扔掉。這種清醒的目標導向,在很多看似「純研究」的團隊中是少見的,也是 Anthropic 做事方式的一個特色。


機器學習中最恐怖的事:指標出了 bug

Adley 提到了一個讓所有做機器學習的人都心有戚戚焉的問題:你怎麼知道你的程式碼是對的?他記得大學時機器學習教授說過這很難,當時他不以為然,覺得「能有多難?」結果發現這是會吃掉你最多時間的問題。他們有好幾次花了數週時間追逐一個看起來非常漂亮的實驗結果,最後發現是評估指標本身的 bug 讓數字看起來太好了。

Josh 指出了這為什麼特別可怕:如果你的目標是讓某個數字下降,然後數字真的在下降,你會覺得一切都很棒,所有事情都在正軌上。結果你追逐了好幾週的其實是一個幻覺。TC 補充說,傳統的單元測試在這種情況下幾乎沒用,因為你根本不知道「正確答案」是什麼。他們能做的是盡可能記錄每一個可以想到的指標、畫成圖表,然後盯著那些圖表問自己:「這看起來合理嗎?」另一個方法是仔細檢查程式碼,比對數學公式說的跟程式碼實際做的是不是同一件事。他們發現了好幾次不匹配的情況。

還有一個更微妙的問題:當你寫了一個新的機器學習改良方案,跑了實驗,結果比基線差,你不確定到底是你的想法不好,還是實作的時候有 bug。你可以花時間盯著程式碼和圖表找問題,但某個時候你必須做出判斷:「這個想法行不通,我放棄,去做別的。」在錯誤的時機放棄一個其實正確但實作有 bug 的想法,或者在正確的時機放棄一個真的行不通的想法,這種判斷力沒有公式可循,只能靠經驗累積。Josh 的觀察讓我很有共鳴:加快迭代速度,是應對這種不確定性最好的策略。如果一個實驗能從一週縮短到一天、從一天縮短到一小時,你犯錯的成本就小很多。沒有人的想法好 200 倍,好到值得花 200 倍的時間去跑一個實驗。


3400 萬個特徵的視覺化:當矩陣乘法都不夠用

Adley 分享了一個我覺得很能說明規模化帶來多少意想不到問題的例子。當你訓練出了 3400 萬個特徵,然後想看看這些特徵各自在做什麼。聽起來很簡單,但在這個規模上,「看看它們在做什麼」本身就是一個巨大的分散式計算問題。因為這些特徵是稀疏的,每個特徵只在非常特定的文字序列上被觸發,所以你必須用大量的文字去測試大量的特徵,還要看附近的文字、看激活的分佈。到他們說話的時候,這已經變成了一個 10 到 12 步的分散式管線,而且總是有什麼地方在壞掉,總是有新的瓶頸出現。

Josh 提到了一個更極端的情況。他們想理解 3400 萬個特徵之間的交互作用,直覺上你可以把兩個矩陣相乘,但 3400 萬乘 3400 萬的結果,你既存不下來,也放不到任何地方。所以他們得做各種花式的迴圈、索引和壓縮來計算這個乘積。Josh 感慨說,他受的是數學訓練,在紙上寫公式的時候,所有的字母都在同一行上,A 和旁邊的 V 之間沒有通訊瓶頸。但在分散式系統上,你必須仔細思考每個張量住在哪裡、資訊要往哪個方向送,因為送錯方向可能意味著你花了大量時間在做資料搬移而不是實際計算。

TC 分享了另一個細節讓我印象深刻。他們發現 PyTorch 預設的矩陣乘法實現,對於某些特定形狀的矩陣來說,速度慢得離譜。他們花時間分析效能,發現大部分時間都花在矩陣乘法上,本來以為「太好了,我們跑得很快」。但算了一下效率才發現不對勁。後來他們去問公司裡更專精這個領域的同事,對方說「試試這個替代實現」,速度就快了很多。原因是 GPU 核心在底層會根據矩陣的形狀選擇不同的實作策略,某些形狀剛好踩到了效率不好的路徑。Adley 笑著說,你以為矩陣乘法已經被極度優化了,但他們的問題就是矩陣的形狀太奇怪了。可解釋性研究就是在做很奇怪的事情,所以會撞上各種奇怪的問題。

TC 還提到,他看過一個只在單張 GPU 上跑的開源稀疏自動編碼器實作,簡單到讓他震驚。他心想「這也太容易了,為什麼我們有這麼多程式碼?」答案是:當你需要把同樣的東西擴大一千倍,每一個在小規模上不是問題的地方,都會變成一場需要被獨立解決的小戰鬥。那些程式碼就是從這些大大小小的戰鬥中長出來的。


人工心智的計算神經科學:為什麼這份工作讓人著迷

當 Josh 問團隊成員為什麼喜歡做這個工作時,他們的回答各自不同但同樣真誠。TC 說他之前在推論團隊,做的是讓已知的運算跑得更快,那是一種可以精確規劃未來六個月的工作。他可以設計出準確的計劃,然後一步步執行。但他發現這種可預測性讓他覺得有點無聊。在可解釋性團隊,你根本不知道六個月後會在做什麼,你的方向完全跟著研究結果走,一切都在不斷變化。TC 喜歡的就是這種不確定性。

Adley 則把他的熱情分成兩個部分。研究層面,他覺得可解釋性就是一個「純粹美麗」的問題。每次能在模型的黑盒子中照進一丁點光,那個感覺太棒了。工程層面,他興奮的是工程讓這些問題變得「可以被解決」。如果你只是問自己「要怎麼在人工心智中做神經科學」,那聽起來像一個不可能回答的問題。但當你建好了基礎架構、建好了做大量實驗的系統,突然間你會覺得:「我們真的可以做到這件事。」工程不只是支援研究的工具,工程本身就是讓不可能變成可能的關鍵。

Jonathan 的回答最讓我動容。他之前在 Jump Trading 做了十三年的量化金融。研究金融市場確實很迷人,市場永遠在變化,有很多有趣的建模問題。但他用了一句話改變了我對這份工作的理解:「我們在做的是人工心智的計算神經科學。」這些人工心智從未存在過,沒有人曾經分析過這種東西。他們是歷史上第一批擁有足夠大的人工心智和足夠強的計算基礎設施來分析它們的人。幾乎同樣的技能組合,從預測股價變成了解碼思維。他做了很多年金融,很喜歡,但這份工作讓他感到意義深遠得多。


不需要全會:跨領域協作的真正力量

對話中浮現出的另一個重要主題是團隊協作的模式。TC 特別強調了一件很多人誤解的事:可解釋性團隊不是一個獨立的研究組加一個獨立的工程組。他們整個對話中一直在談研究和工程之間的互動,把這兩者分開根本行不通。不會有研究人員告訴工程師該建什麼,這些問題在本質上就是糾纏在一起的,你必須一起解決。這不只是可解釋性團隊的做法,TC 說整個 Anthropic 都是這樣運作的。

Josh 描述了一種很有趣的協作體驗。經過一段時間的合作,你會開始學會辨認「某種形狀的問題」,即使你還完全不知道怎麼解。你會想:「嗯,我打賭 Jonathan 可以搞定這個部分。」然後兩個人坐在一起 pair programming,發現彼此的技能完美互補。或者在視覺化方面,Josh 覺得自己在十七個視窗之間切來切去,實驗跑得很快但看結果要花三十分鐘。然後視覺化的專家加入,把這個部分改善了。當所有這些碎片拼在一起,就成了一個真正強大的科學系統。Josh 甚至提到,他們團隊裡有人對 Figma 的執著讓論文裡的圖表呈現出寶石般的品質,這不是一般工程團隊會有的技能,但在這裡同樣是一種力量乘數。

Jonathan 接著把這個觀察延伸到對外的建議。他說如果你是一個工程師,覺得自己可能不夠格加入可解釋性研究,他的建議是:你很可能低估了自己能做的貢獻。不需要所有技能都會,因為當你跟擁有不同技能的人配對時,產生的力量是驚人的。TC 也直接說,他們目前的瓶頸是招不到足夠強的工程師。而且他們需要的不是某個狹窄領域的專家,比如花兩個月把某張顯示卡的效率提升 10%,而是具備廣度的人,能在複雜的管線中快速找到當下的瓶頸,花幾天時間把它改善到夠用的程度,然後繼續前進。從 GPU 核心優化到前端介面,整個技術棧都可能是你需要碰的東西,而且你永遠不知道下一個瓶頸會出現在哪一層。


苦澀的教訓再次應驗:可擴展性為王

整場對話中有一條暗線,到最後被明確點出來了。Richard Sutton 的「苦澀的教訓」說的是:在 AI 領域,利用計算資源的可擴展方法,最終總是勝過依賴人類巧思的精緻方法。Adley 指出,有趣的是這個教訓不只適用於訓練模型,也適用於理解模型。可解釋性研究也有同樣的性質:你拿一個簡單的東西在大規模上運行,選擇那個可擴展的方案,而不是更精巧但擴展不了的方案。稀疏自動編碼器就是這個原則的體現,數學上簡單到幾乎平淡,但因為可以無限擴展,所以在豐富的資料分佈上展現出驚人的成果。

TC 補充了一個實際的面向。Anthropic 給了他們足夠的計算資源來做這件事。真正限制他們繼續擴展的,是機器學習在更大規模上是否還有效、基礎架構在更大規模上能不能運作,而不是能不能拿到夠多的顯示卡。他說如果瓶頸是「我們拿不到 GPU」,那會是一個讓人沮喪得多的理由。能夠在真正的大模型上做可解釋性研究,而不是被困在學術界的小規模實驗中,這本身就是在 Anthropic 工作的獨特優勢。

Josh 也呼應了這一點。他觀察到學術界和開源社群可以在小規模上嘗試很多想法,從工程角度來說不算太難。但要讓那些想法在大幾個數量級的模型上真正運作,就進入了一種全新的物理層面的困難。有時候這反而是一種禮物:可擴展的方法在規模增大時會變得更好。你做了工程,換來了更多的規模,而更多的規模帶來的是更好的結果,而不只是等比例的結果。這是一個良性循環,也是為什麼他們對繼續擴展充滿期待。


未來一年:從特徵發現走向完整理解

Josh 最後問了一個每個人都想知道的問題:可解釋性研究在一年後會是什麼樣子?Jonathan 給了一個他自稱「超級樂觀」的答案。他們目前只做了一件事:在 Sonnet 的中間層取了一個切面。他希望的是分析整個模型的每一層、每一個部分,而且不只是所有生產模型,還要理解特徵之間如何協同運作。目前他們只找到了特徵,但不知道這些特徵怎麼組合在一起、怎麼在不同情境下互動。他想做的是 circuits 層面的研究,搞清楚這些特徵單獨代表什麼、一起運作時又代表什麼。

Adley 則說他對繼續擴展本身感到意外地興奮。雖然未來做的事情一定會跟現在不同,但目前為止的觀察是,這些方法隨著規模增加而變得更好。他想看看「再擠出最後幾個數量級」會發生什麼。Jonathan 聽到這句話忍不住笑了:「我真的很喜歡『最後幾個數量級』這句話。這幾個字裡面裝了太多東西了。」一個「數量級」是十倍,「幾個數量級」可能是一百倍、一千倍。在工程上,每一個數量級的跳躍都意味著一整套新的問題需要解決。

Adley 最後談到了可解釋性研究對 AI 安全的意義。他坦承自己對未來的 AI 安全挑戰有很多不確定性,也不確定未來會走向何方。但可解釋性讓他覺得特別踏實,因為它對各種不同的安全問題和情境都有用。理解模型這件事本身就是好的。Josh 接著說他特別喜歡他們採取的「全面性」方法。他們不是只盯著某一個特定行為,而是試圖映射模型的完整多樣性。因為如果你做到了,之後可以再放大到你需要的部分。而如果你只關注某個特定行為,可能會遺漏掉整個故事中最重要的部分。要做到全面性,你就需要規模。而規模,就需要能讓它實現的人。

這場對話最後以一個很有畫面感的方式結束:「一、二、三,Claude!」團隊把手疊在一起,像球隊上場前的加油儀式。這個畫面讓我想到一件事:我們常常把 AI 研究想像成孤獨天才在白板前苦思的樣子,但在可解釋性這個領域,真正推動進展的是一群背景各異的人,願意把手弄髒地去解決那些不光彩但至關重要的工程問題。從量化金融跳來的工程師、從 Facebook 基礎架構團隊來的系統專家、數學家、前端工程師,他們湊在一起不是因為誰懂得最多,而是因為互補的技能加在一起,剛好能處理這個人類從未嘗試過的問題。如果你問我 AI 安全最需要什麼,我的答案不是更好的理論、不是更多的算力、甚至不是更嚴格的監管,而是更多願意投入這種枯燥但關鍵的工程工作的人。因為沒有這些人把雷射鑽機造出來,地函裡有沒有岩漿,永遠只是一個猜想。