To Believe or Not to Believe?DeepMind新研究一眼看穿LLM幻覺

新智元報道

編輯:庸庸 喬楊

【新智元導讀】DeepMind發表了一篇名爲「To Believe or Not to Believe Your LLM」的新論文,探討了LLM的不確定性量化問題,通過「迭代提示」成功將LLM的認知不確定性和偶然不確定性解耦。研究還將新推導出的幻覺檢測算法應用於Gemini,結果表明,與基線方法相比,該方法能有效檢測幻覺。

大語言模型產生幻覺、胡說八道的問題被詬病,已經不是一天兩天了。

前有ChatGPT編造法律案件,後有谷歌搜索建議披薩放膠水。

就連號稱模型更安全、幻覺更少的Claude系列,在Reddit上也能看到不少吐槽。

LLM輸出虛假信息的問題,似乎並不能在短時間內徹底解決。

這就給很多場景下的應用帶來了巨大的障礙,尤其是法律、醫療、學術這樣比較嚴謹的知識領域。如果答案有錯,還不如不用。

那麼能不能有一種方法,至少爲LLM的輸出劃定一個置信區間呢?

6月5日,DeepMind發表了一篇名爲「To Believe or Not to Believe Your LLM」,就開始着手解決這個問題。

如果無法強迫LLM堅持輸出真實信息,知道它什麼時候在胡說八道也很重要。

論文地址:https://arxiv.org/abs/2406.02543

這篇論文由DeepMind Foundations團隊出品,帶頭人是加拿大阿爾伯塔大學教授Csaba Szepesvari,他也是這篇論文的作者之一。

論文探討了大語言模型中的不確定性量化問題,也就是說,旨在確定LLM的響應何時會出現較高的不確定性。

不確定性分爲兩個範疇,一個是認知不確定性(epistemic uncertainty),另一個是偶然不確定性(aleatoric uncertainty)。

前者是指對基本事實的不瞭解,比如,不清楚事實或者語言不通所造成的不確定性,可能來源於訓練數據量或者模型容量不足。

後者則是一種不可約的隨機性,比如同一個問題存在多種可能的答案。

LLM的工作本質是對文本的概率分佈進行建模,因此會很自然地通過統計不確定性的視角看待問題的真實性。

以前的許多工作通過啓發式的方法計算LLM回答的對數似然性,但這一般只適用於偶然不確定性較低的情況,也就是有「標準答案」的問題。

對於有多個正確答案的問題,需要將認知不確定性和偶然不確定性解耦。

因此,團隊推導出了一種信息論度量(information-theoretic metric)方法,能可靠地檢測出認知不確定性佔多數的情況,這時我們就可以說,模型的輸出沒有那麼可靠,Not to Believe!

這種方法根據什麼來計算?

其實,可以完全基於模型的輸出來考察,只需根據之前的回答進行一些特殊的迭代prompting即可。

有了這個量化方法,無論是面對有單一答案的問題,還是有多個可能答案的問題,都可以檢測出回答中的幻覺,也就是認知不確定性很高的情況。

這和此前的不確定性量化策略相比,形成了鮮明對比,因爲之前的方法都不能檢測出多答案情況下的幻覺。

DeepMind Foundations團隊進行了一系列實驗,證明了他們方法的優勢。

此外,研究還揭示瞭如何通過迭代prompting放大LLM指定給定輸出的概率,這可能會引起人們的興趣。

方法概述

首先,我們需要形成這樣一個共識:

如果從基本事實(語言)中獲得對同一查詢的多個回覆,那麼它們應該是相互獨立的。

也就是說,在概率論解釋中,對於一個固定的查詢,這些多個回覆的聯合分佈必須是一個乘積分佈。

基於這一點,我們就可以將其用於衡量LLM的輸出與基本事實之間的距離。

由語言模型實現的序列模型允許我們構建多個響應的聯合分佈,基於LLM先前的響應和概率鏈規則,對LLM進行迭代prompting。

具體來說,先給定查詢要求模型提供一個響應,然後將查詢和相應輸入給LLM,要求提供另一個響應,然後給定查詢和前兩個響應提供第三個響應,依此類推。

關鍵思路是,在對LLM進行迭代prompting的過程中,激發模型重複潛在回答,可以觀察到不同的行爲模式,反映不同程度的認知不確定性。。

如果模型對某個查詢的認知不確定性較低,那麼在prompting中重複一個不正確的回答不會顯著增加其概率。

但是,如果認知不確定性較高,重複一個不正確的回答就會大大增加其概率。

下面是這一過程的prompt模板:

不斷誘導LLM

下面的例子可以更好地解釋這一過程——

給定問題:「英國的首都是什麼?」通過在提示中重複錯誤答案(如巴黎),正確答案倫敦仍然保持很高的概率。

這意味着該模型的答案是確定的,它的認知不確定性較低。

相反,如果答案的概率發生了變化,那麼模型就具有高度的認識不確定性。

如上圖最左邊的示例所示,當我們將錯誤回答的重複次數增加到100次的時候,正確回答「倫敦 」的條件歸一化概率從100%下降到大約 96%。

在這些示例中,最初對查詢的回答的認識不確定性較低,即使在錯誤信息重複出現的情況下,正確回答的概率仍然很大。

可是當面對更有挑戰性的問題時,模型就不那麼容易「堅持己見 」了。

比如,問LLM「愛爾蘭的民族樂器是什麼?」,它回答「豎琴」和 「尤利安管 」的概率都很大(第一個答案是正確答案)。

這一次,通過多次在提示中加入錯誤的回答,正確答案的概率迅速下降到接近於零。

認知不確定性度量

在對LLM進行完上述觀察,研究者推導出了一種信息論度量方法。

通過測量模型的輸出分佈對重複添加以前的(可能不正確的)提示回答的敏感程度,來量化認知不確定性。

更確切地說,如果LLM對之前的回覆不敏感,模型就有了所需的獨立性,並且LLM得出的聯合分佈可以任意接近基本事實。

如果正相反,上下文中的響應嚴重影響了模型的新響應,那麼直觀地說,LLM對其參數中存儲的知識的置信度很低,因此LLM派生的聯合分佈不可能接近基本事實。

這一觀察結果可用於區分高不確定性的兩種情況:一種是偶然不確定性高,另一種是認知不確定性高。

最後,利用這一指標,論文介紹了一種基於互信息分數的幻覺檢測算法M.I.。

通過應用鏈式規則,他們定義了多個響應的「僞聯合分佈 」,同時將之前的響應納入提示。

這種僞聯合分佈的互信息可作爲認知不確定性的下限。互信息的估計值可用作得分,表示LLM對給定查詢產生幻覺的信念強度。

結果

論文在開放域問答基準上讓Gemini 1.0 Pro進行閉卷回答,對這種基於互信息(MI)的方法進行了評估,包括TriviaQA、AmbigQA以及基於WordNet創建的一個多標籤數據集。

實驗中共使用了3種基線方法作爲對比:T0表示貪婪方法選擇的LLM回答,S.E.表示使用2023年提出的「語義熵」方法(semantic-entropy)選擇的前10個回答,S.V.表示2022年提出的「自我驗證」方法(self-verification)的一個版本。

對LLM的回答主要使用兩個方面衡量,一是準確率,二是召回率。

準確率表示查詢中正確決策的百分比,召回率則表示沒有棄權的查詢的百分比。

結果表明,與基線方法相比,該方法能有效檢測幻覺(認識不確定性較高的輸出),尤其是在處理包含單標籤和多標籤查詢的數據集時。

在TriviaQA和AmbigQA數據集上,論文提出的M.I.方法與S.E.方法基本表現相當,但明顯優於T0和S.V.。

而後兩個數據集包含大量的高熵、多標籤查詢,此時M.I.方法明顯優於S.E.方法。

將LLM輸出回答的熵進行分區後,分別查看兩種方法的召回率和錯誤率,可以更直觀地看到M.I.方法在高熵查詢中的優越性能,不僅很少犯錯誤,而且召回值更高。

這篇論文相對於考慮LLM整體不確定性的一階方法,將認知不確定性和任意不確定性分開考量,從而確定了LLM認知不確定性的可證明的下界。

此外,在認知不確定性視角下提出的基於互信息的棄權方法,能讓LLM在混合單標籤/多標籤查詢任務上取得更好的表現。

參考資料:

https://huggingface.co/papers/2406.02543

https://www.linkedin.com/pulse/believe-your-llm-vlad-bogolin-fp4ne