他們掰開神經元,終於讓大模型9.8大於9.11了:神秘創業公司,開源AI「洗腦」工具

機器之心報導

機器之心編輯部

大模型為什麼認為 9.8<9.11?神經元級別的解釋來了。

9.8 和 9.11 到底哪個大?這個小學生都能答對的問題卻難倒了一眾大模型,很多模型輸出的結果都是「9.8<9.11」。

為什麼模型會集體出錯?AI 研究者們總結了很多可能的原因,比如模型會把 9.11 拆解成 9/./11 三部分,然後拿 11 去和 8 作比較;也有人猜測,大模型會把 9.8 和 9.11 當成日期或版本號……

這些解釋聽起來都有些道理,但如果我們能夠直觀地「看到」模型出錯的原因,那麼我們對於問題的歸因會更加準確,解決問題的速度也會更快。

剛剛官宣的 AI 研究實驗室 Transluce(字面意思是讓光線穿過某物以揭示其結構) 就在做這件事情。他們開發了一個名叫 Monitor 的交互界面,以幫助人類觀察、理解和引導語言模型的內部計算。

透過 Monitor,我們先來看看 AI 模型為什麼會覺得 9.11 比 9.8 更大。

首先,讓模型比較一下這兩個數的大小,當然它沒有意外地出錯了。

Monitor 提供了快捷的方式幫助我們分析其錯誤。將光標放在出錯的位置,可以看到模型在此處預測的詞的概率分佈。很顯然,Llama 3.1 8B 的這個版本不僅錯了,而且還對自己的錯誤很自信。

點擊一下這個錯誤,Monitor 開始分析模型出錯的可能原因。具體來說,它會「尋找影響 bigger 這個預測結果的神經元」。之後,Monitor 會對這些神經元進行聚類,如下所示,此處有 4 個聚類:

粗略來看,Llama 3.1 8B 在看到 9.11 和 9.9 這兩個數字文本時,首先想到的並不是單純的數值,而是會和人類一樣聯想到相關的其它概念,比如 9/11 襲擊和之後的恐怖襲擊、《聖經》章節和詩文編號、化學化合物和分子式、日期等等。並且其中每一種「聯想」都會觸發不同的神經元組合。

選擇其中一個展開,可以看到影響 AI 模型做出「bigger」這個判斷的神經元詳情。

我們可以點開一個具體的神經元查看,比如這個第 2 層的 1054 號神經元。這裏展示了其在接收提示詞之後的正值激活情況。注意,這裏的神經元描述是該團隊用自己提出的一種自動化方法生成的;其中用到了一個解釋器模型,它會提出一些關於數據的假設,之後再通過一個自動評分流程對這些假設進行評估,詳情可訪問 https://transluce.org/neuron-descriptions

通過分析這些神經元,我們可以洞見模型出錯的根本原因:模型根本沒把 9.11 當成數值,而是看成了一個日期,這樣連帶下來,9.9 自然也是一個日期了。於是,9 月 11 號自然就比 9 月 9 日 bigger。另外,在《聖經》中,9.11 也是比 9.8 更靠後的編號。而不管是 9/11 事件還是《聖經》,模型的訓練數據中都包含大量相關的文本內容,這會影響到模型在判斷這個數字時的神經元激活權重。

Monitor 還提供了進一步的檢查技術,可以通過將相應激活強行設置為 0 來修正 AI 模型的行為。下面我們將對應「日期」的相關神經元的激活改成 0 看看。

結果?這個 Llama 3.1 8B 還是沒對,但是可以看到「bigger」的概率下降了很多(0.961→0.563),而對應正確答案的「smaller」異軍突起,已經來到了 top-2 的位置。

接下來,繼續操作,將關聯《聖經》章節編號的神經元激活也調成 0:

這一次,模型終於對了。它保留了 bigger,但將 9.9 和 9.11 的位置調換一下以遵循提問的形式。同樣,它對自己的答案很有信心。

而修復這個問題的代價僅僅是抑制了不到 0.2% 的 MLP 神經元。

除了比較 9.11 和 9.9 的大小,官方還提供了另外三個示例,包括修復 AI 難以數值排序的問題、引導出隱藏知識、引導故事中特定角色。其中的操作不僅包括將激活清零,也包括增強某些特定神經元以引導模型生成符合用戶需求的結果。

另外,用戶也可以使用自己的提示詞,然後基於此分析模型的思考過程。機器之心嘗試了一個 AI 領域的熱門問題:Strawberry 中有幾個 r?

可以看到,這個 AI 模型答錯了,同時也對自己的答案頗有信心。

根據 Monitor 分析,Llama 3.1 8B 模型在回答這個問題時會將 Strawberry 拆分成兩部分:Straw 和 berry,同時 Strawberry 還激活了與食品和佐料相關的神經元。

有意思的是,即便抑制了 Monitor 找到的所有神經元激活,這個 Llama 3.1 8B 模型依然無法正確解答「Strawberry 中有幾個 r」這個問題。

那我們來增強一些神經元試試。這裏我們在 Monitor 中輸入「Strawberry as a string made of several English letters(將 Strawberry 看作是一個由英語字母構成的字符串)」作為搜索條件,定位到了 50 個相關神經元,這裏我們直接全部增強它們。

這一次,Llama 3.1 8B 終於給出了正確答案。而這一次,我們執行了兩項抑制(各 500 個神經元)和一項引導增強(50 個神經元),不過這些神經元的數量我們也可以自行調整。基於此,我們可以得出這樣的洞見:在解答「Strawberry 中有幾個 r」這樣的問題時,LLM 的問題是想得太多,去分析其背後所代表的意義和事物了,而它原本只需要將其看成一個字符串即可。

那麼,這個叫 Monitor 的模型到底是怎麼做出來的?背後的運行機制是怎樣的?Transluce 這家公司是什麼來頭?在一篇博客和一封公開信中,Transluce 給出了系統介紹。   

Monitor 的基本構成

Monitor 採用了一套由 AI 驅動的工具,可幫助用戶理解語言模型中的神經激活模式:

1、一個預先編譯的高質量神經元描述數據庫,生成自對 Llama-3.1-8B 中的所有 MLP 神經元應用 Transluce 的 AI 驅動描述 pipeline。該系統同樣適用於 SAE 特徵或任何其他特徵集。Transluce 從神經元開始,因為它們最簡單,並且已經運作得很好。他們將發佈系統的代碼,並期待其他人用他們自己的特徵集在此基礎上進行構建!

2、一個實時界面,用於顯示給定聊天對話的重要概念。用戶可以通過激活(概念觸發的強度)或歸因(概念對指定目標 token 的影響程度)來衡量重要性。

3、一個實時的人工智能檢查器,它會自動顯示可能是誤導性線索的非預期概念的集群(例如「9 月 11 日」神經元在數字「9.11」上被觸發)。

4、語義引導的轉向,基於自然語言輸入,增加或降低與概念相關的神經元集合的強度。

系統設計

開發者採用一個預先編譯好的神經元描述數據庫,並且每個描述都與最能激活該神經元的 K 個關鍵示例和它們的激活模式相聯繫。

向量數據庫(VectorDB)

該團隊採用了 OpenAI 的 text-embedding-3-large 嵌入技術來處理這些描述,創建一個用於語義搜索的索引。

Linter

接下來,開發者使用一個 AI linter 來突出顯示相關的神經元簇。首先,他們讓 GPT-4o mini 簡化並概括神經元的描述。然後,他們使用 OpenAI 的嵌入技術(text-embedding-3-large)來嵌入神經元,並使用層次聚類方法,根據餘弦相似度將神經元聚類,使用 0.6 的閾值。

最後,他們讓 GPT-4o mini 為某簇簡化過的神經元再生成一個簡潔的描述,並根據簇內神經元在語義上的相似度打一個分數(1-7),其中 1 代表最相似。在 Monitor 的界面中,只顯示數量大於等於三個,且得分小於等於 3 的簇。

引導

開發者通過將神經元的激活值固定在指定值來引導它們。具體來說,如果需要在 token T 上引導一組神經元 S,以強度 λ 進行操作,在每個 token t 屬於 T 的情況下,在該標記的前向傳播過程中,將神經元的激活值設置為:λ*10^−5。

這個過程也會進入該層的殘差中,進而影響後續的層與注意力頭。這一操作會覆蓋所有需要引導的神經元 s。由於神經元具備正負兩種極性,當我們指定一個神經元時,只有當它與引導集中指定的極性相同時才會生效。

激活與歸因

如何衡量哪個神經元在特定任務中更活躍?開發者提供了激活和歸因兩種模式。

激活主要關注神經元的原始激活值,即上一節中的 λ,如果這個值遠高於平均值,那麼它很可能在任務中扮演重要角色。 

歸因是一種更具針對性的模式,它測量神經元對特定輸出 token 的影響。受 Attribution Patching 啟發,計算輸出 token 的對數概率 z 相對於神經元激活值 e 的梯度,歸因值等於

摘要功能

自動生成的神經元描述往往很囉嗦,而且很多描述對用戶來說可能沒有意義。為瞭解決這個問題,研究者們用大約 1000 個手動標註的示例集對 GPT-4o-mini 進行了微調,讓它能夠判斷哪些描述對用戶來說是相關的,哪些是不相關的。

為了讓描述不那麼囉嗦,該團隊還使用了少量樣本作為提示詞,讓 GPT-4o-mini 對每個神經元生成更簡潔的描述,並將其展示給用戶和 AI linter(AI linter 對較短的輸入會處理得更好)。

前端設計

Monitor 的界面主要這幾個功能。首先可以點擊模型回答中的 token,查看更多詳細信息,比如每個輸出 token 的概率。左側的窗口中也顯示了 AI linter 分析的模型出錯的原因,用戶可以通過調整參數(如 k 和 λ)來控制引導操作的影響範圍和強度。

在 Monitor 中,系統將會尋找與用戶搜索查詢最為匹配的 k 個神經元。這些神經元會被選為引導集,幫助我們決定哪些特徵需要被減弱(停用)或者加強(增強)。通常情況下,如果我們想要減弱一個特徵,我們會設置引導值為 0(λ=0);如果我們想要加強一個特徵,我們會設置引導值為 0.5(λ=0.5)。

用戶可以根據自己的需要,通過點擊高級選項來調整 k 的數值(也就是他們想要影響的神經元數量)和 λ 的數值(也就是影響的程度)。他們還可以查看被選為引導集的神經元示例,並決定他們想要影響的特定的 token 子集。如果沒有特別指定,系統預設會影響初始系統和用戶提示中的所有 token。

當然,用戶也可以點擊單個神經元,瞭解每個神經元的具體詳情。

用戶還可以選擇要引導的標記子集,並查看引導集中的示例神經元。

前端中最複雜的部分是右上角的 AI 助理顯示。這個地方能為用戶提供最相關的信息,包括有關界面狀態和 AI linter 顯示的信息。未來,這將成為一個通用接口,用戶可以從 AI 後端請求和接收信息。

Transluce:創建世界一流的工具來理解 AI 系統

人類很難理解人工智能系統,因為它們龐大且不透明。Transluce 的目標是創建世界一流的工具來理解 AI 系統,並使用這些工具來推動可信賴 AI 的行業標準。2024 年 7 月,Transluce 成立;2024 年 10 月 24 日,也就是今天,該公司正式官宣。

公司的創始團隊如下:

其中,聯合創始人 Jacob Steinhardt 是加州大學伯克利分校助理教授,2018 年在史丹福大學取得博士學位,師從史丹福大學計算機科學副教授 Percy Liang。他的 Google Scholar 被引量高達 20000+。

另一位聯合創始人 Sarah Schwettmann 是 MIT 計算機科學與人工智能實驗室(CSAIL)的研究科學家,2021 年 8 月在 MIT 拿到大腦與認知科學博士學位。

公司的顧問團隊非常豪華,集齊了 Yoshua Bengio、Percy Liang 在內的多位 AI 大牛。

總的來看,Transluce 現階段是一個非營利性研究實驗室,致力於構建開源、可擴展的技術,以理解 AI 系統並引導它們服務於公共利益。

為了建立對 AI 系統能力和風險分析的信任,這些工具必須是可擴展和開放的:  

  • 可擴展性:AI 系統涉及多個複雜數據流的交互,包括訓練數據、內部表示、行為和用戶交互。現有的理解 AI 的方法依賴於人類研究者的大量手動工作。Transluce 致力於開發可擴展的方法,利用 AI 來協助理解,通過訓練 AI 智能體來理解這些複雜的數據源,向人類解釋它們,並根據人類反饋修改數據。

  • 開放性:構建 AI 系統的公司不能成為其安全性的主要仲裁者,因為這與商業優先級存在利益衝突。為了允許有意義的公眾監督,審計 AI 系統的工具和流程應該是公開驗證的,能夠響應公眾反饋,並且對第三方評估者開放。這樣,全球最優秀的人才可以審查這項技術並提高其可靠性。

Transluce 致力於解決這些需求。他們將構建 AI 驅動的技術來理解和分析 AI 系統,並將其開源發佈,以便社區能夠理解並在此基礎上進行構建。他們將首先把這項技術應用於公開分析前沿開放權重的 AI 系統,以便全世界可以審查他們的分析並提高其可靠性。一旦他們的技術經過公開審查,他們將與前沿 AI 實驗室和政府合作,確保內部評估達到與公共最佳實踐相同的標準。

Transluce 已經發佈了第一個裡程碑 —— 一套 AI 驅動的工具,用於自動理解大型語言模型的表示和行為。這些工具可以擴展到從 Llama-3.1 8B 到 GPT-4o 和 Claude 3.5 Sonnet 的模型範圍,並將開源發佈,供社區進一步開發。他們的方法包括創建 AI 驅動的工具,將巨大的計算能力用於解釋這些複雜的系統。他們通過三種演示來展示這一願景:

1. 一個 LLM pipeline,為神經元激活模式創建最先進的特徵描述;

2. 一個可觀察性界面,用於詢問和引導這些特徵;

3. 一個行為引導智能體,自動從前沿模型中搜索用戶指定的行為,包括 Llama-405B 和 GPT-4o。

這些工具利用 AI 智能體訓練,自動理解其他 AI 系統,並將這些見解呈現給人類。

期待這家公司的後續進展。  

參考鏈接:

https://transluce.org/introducing-transluce

https://monitor.transluce.org/dashboard/chat

https://transluce.org/observability-interface