大模型在裝傻!Google蘋果最新發現:LLM知道但不告訴你,掌握知識比表現出來的多

新智元報導  

編輯:alan

【新智元導讀】近日,來自Google和蘋果的研究表明:AI模型掌握的知識比表現出來的要多得多!這些真實性信息集中在特定的token中,利用這一屬性可以顯著提高檢測LLM錯誤輸出的能力。

大模型的應用曆來受幻覺所擾。

這個幻覺可以指代LLM產生的任何類型的錯誤:事實不準確、偏見、常識推理失敗等等。

——是因為大模型學半天白學了嗎?並不是。

近日,來自Google和蘋果的研究表明:AI模型掌握的知識比表現出來的更多!

論文地址:https://arxiv.org/pdf/2410.02707論文地址:https://arxiv.org/pdf/2410.02707

研究人員在LLM內部表示上訓練分類器,以預測與生成輸出的真實性相關的各種特徵。

結果表明LLM的內部狀態編碼反映出的真實性信息,比以前認識到的要多得多。

這些真實性信息集中在特定的token中,利用這一屬性可以顯著提高檢測LLM錯誤輸出的能力。

雖說這種錯誤檢測無法在數據集中泛化,但好處是,模型的內部表示可用於預測模型可能犯的錯誤類型,從而幫助我們製定緩解錯誤的策略。

研究揭示了LLM內部編碼和外部行為之間的差異:可能編碼了正確的答案,卻生成了不正確的答案。

——簡單來說就是,LLM它知道,但它不想告訴你!

LLM在裝傻

作者建議將重點從以人類為中心的幻覺解釋轉移到以模型為中心的視角,檢查模型的中間激活。

不同於使用RAG或者依賴更強大的LLM judge,本文工作的重點是僅依賴於模型輸出的logits、softmax後的概率和隱藏狀態的計算。

錯誤檢測器

第一步是確定真實性信號在LLM中的編碼位置。

假設我們可以訪問LLM的內部狀態(白盒),但不能訪問任何外部資源(搜索引擎或其他LLM)。

建立一個數據集D,由N個問題標籤對組成,對於每個問題,提示模型生成響應,從而得到一組預測答案。

接下來,比較LLM生成的回答與正確答案,從而構建錯誤檢測數據集(這一部可由AI代勞)。

實驗選擇了四個LLM:Mistral-7b,Mistral-7b-instruct-v0.2,Llama3-8b和Llama3-8b-instruct。

作者選取了10個跨越不同領域和任務的數據集:TriviaQA、HotpotQA(with/without context)、Natural Questions、Winobias、Winogrande、MNLI、Math、IMDB review sentiment analysis和另一個自製的電影角色數據集。

實驗允許無限制地生成響應以模擬現實世界LLM的用法,並貪婪地解碼答案。

性能指標

測量ROC曲線下面積以評估錯誤檢測器,這能夠反映模型在多個閾值中區分陽性和陰性情況的能力,平衡靈敏度(真陽性率)和特異性(假陽性率)。

錯誤檢測方法

Majority:始終預測訓練數據中最頻繁的標籤。

聚合概率/logits:從之前的研究中選取幾種方法,包括計算這些值的最小值、最大值或平均值。

P(True):通過提示要求LLM評估其生成的正確性時。

Probing:在模型的中間激活上訓練一個小分類器,以預測已處理文本的特徵,這裏使用線性探測分類器對靜態token進行錯誤檢測。

作者認為,現有方法忽略了一個關鍵的細節:用於錯誤檢測token的選擇。

研究者通常只關注最後生成的token或取平均值,然而,由於LLM一般會生成長格式響應,這種做法可能會錯過重要的部分。

本文中,作者關注表示確切答案的token(EXACT ANSWER TOKENS),它代表了生成的響應中最有意義的部分。

這裏將EXACT ANSWER TOKENS定義為,如果修改則會改變答案正確性的token。

實踐中,作者使用設置好的instruct模型代勞,來提取確切答案。之後,通過簡單的搜索過程確定對應的token。

重點關注4個特定token:第一個確切答案的token及其前一個token、最後一個確切答案token及其後一個token。

作者廣泛分析了層和token選擇對分類器的激活提取的影響,通過系統地探測模型的所有層,從最後一個問題token開始,一直到最終生成的token。

上圖顯示了Mistral-7b-Struct中各個層和token關於探測的AUC指標。雖然一些數據集似乎更容易進行錯誤預測,但所有數據集都表現出一致的真實性編碼模式,中後期層通常會產生最有效的探測結果。

通過比較使用和不使用EXACT ANSWER TOKENS的性能,來評估各種錯誤檢測方法,上表展示了三個代表性數據集上的AUC。

不同任務中的泛化

瞭解錯誤檢測器在不同任務中的泛化能力,對於實際應用程序至關重要。

上圖(a)顯示了Mistral-7b-instruct的泛化結果,大於0.5的值表示泛化成功。乍一看,大多數熱圖值超過了0.5,似乎任務之間存在一定程度的泛化。

然而事實上,大部分性能可以通過基於logit的真度檢測來實現。圖(b)顯示了從最強的基於Logit的基線(Logit-min-exact)中減去結果後的相同熱圖。

這表示檢測器的泛化程度很少超過僅依賴Logit所能達到的效果。所以,泛化並不源於真實性的內部編碼,而是反映了已經通過logits等外部特徵訪問的信息。

經過訓練的探測分類器可以預測錯誤,但其泛化能力只發生在需要相似技能的任務(如事實檢索)中。

對於涉及不同技能的任務,例如情感分析,探測分類器與基於logit的不確定性預測器效果差不多。

錯誤類型研究

在確定了錯誤檢測的局限性,並研究了不同任務的錯誤編碼有何不同之後,作者深入研究了單個任務中的錯誤,根據模型對重覆樣本的響應對其錯誤進行分類。

比如,持續生成的相同錯誤與偶爾生成的錯誤屬於不同類別。

研究人員在T = 30的溫度設置下,對數據集中的每個樣本進行采樣,然後分析答案的結果分佈。

上圖展示了三種代表性的錯誤類型:

圖(4a)中,模型通常會給出正確的答案,但偶爾會出錯,這意味著存在正確的信息,但采樣可能會導致錯誤。

圖(4b)中,模型經常犯同樣的錯誤,但仍保留了一些知識。

圖(4c)中,模型生成了大量錯誤的答案,整體置信度較低。

分類的標準有三個:生成的不同答案的數量,正確答案的頻率,以及最常見的錯誤答案的頻率。

上表顯示了所有模型的測試集結果。結果表明,可以從貪婪解碼的中間表示中預測錯誤類型。

檢測正確答案

模型的這種內部真實性如何在響應生成過程中與其外部行為保持一致?

作者使用經過錯誤檢測訓練的探測器,從同一問題的30個響應中選擇一個答案,根據所選答案衡量模型的準確性。

如果這種準確性與傳統解碼方法(如貪婪解碼)沒有顯著差異,則表明LLM的真實性內部表示與其外部行為一致。

實驗在TriviaQA、Winobias和Math上進行,選擇probe評估的正確性概率最高的答案。這裏比較了三個基線:貪婪解碼;從30個候選答案中隨機選擇;選擇生成的最頻繁的答案。

結果如上圖所示,總體而言,使用探針選擇答案可以提高LLM所有檢查任務的準確性。但是,改進的程度因錯誤類型而異。

探針可以有效地識別正確答案的事實表明,LLM的內部編碼與其外部行為之間存在重大脫節:即使模型編碼了哪個答案是正確的信息,它在實踐中仍然可能生成錯誤的答案。

參考資料:

https://arxiv.org/pdf/2410.02707