近日,一個叫「逆轉詛咒」(Reversal Curse)的新概念成為了 AI 圈熱議的話題,現在流行的所有大語言模型全部都中招了。面對簡單到不能再簡單的問題,它們的準確率不僅是接近為零,而且看不出有增加正確率的可能性。
而且,研究人員發現,這個大 bug 與模型體量,問的問題什么的都沒有關系。
我們說 AI 發展到預訓練大模型階段,終于看起來像是掌握了一點邏輯思維,結果這次卻像是被打回了原形。
圖 1:GPT-4 中的知識不一致現象。GPT-4 正確給出了湯姆?克魯斯母親的名字(左)。然而當輸入母親的名字問兒子時,它卻無法檢索到「湯姆?克魯斯」(右)。新研究假設這種排序效應是由于逆轉詛咒造成的。根據「A 是 B」訓練的模型不會自動推斷「B 是 A」。
如果一個人知道了「奧拉夫?朔爾茨是聯邦德國第九任總理」這一事實,他們就可以正確回答「誰是德國第九任總理?」這個問題。這是一種基本的泛化形式,看起來平平無奇。
然而研究表明,當前 AI 領域里火熱的自回歸語言模型無法以這種方式進行泛化。特別是,假設模型的訓練集包含諸如「Olaf Scholz was the ninth Chancellor of German」之類的句子,其中「Olaf Scholz」這個名字位于「the ninth Chancellor of German」的描述之前。然后,大模型可能會學會正確回答「奧拉夫?朔爾茨是誰?」(答案是:德國第九任總理)。但它無法回答「德國第九任總理是誰?」以及描述位于名稱之前的任何其他提示。
這就是我們稱之為「逆轉詛咒」的排序效應的一個實例。如果模型 1 用「is」形式的句子(名稱后面有描述)進行訓練,那么模型將不會自動預測相反方向的「is」。特別的,如果大語言模型(LLM)以為條件,那么模型的可能性將不會高于隨機基線。
所以說,大模型的推理,其實并不存在?一種觀點認為,逆轉詛咒表明了 LLM 訓練過程中邏輯演繹的基本失敗。如果「A 是 B」(或等效地 “A=B”)為真,則從邏輯上看「B 是 A」遵循恒等關系的對稱性。傳統的知識圖譜尊重這種對稱性(Speer et al., 2017)。逆轉詛咒顯示出基本無法泛化到訓練數據之外。而且,這并不是 LLM 不理解邏輯推論就能解釋的。如果諸如 GPT-4 之類的 LLM 在其上下文窗口中給出「A 是 B」,那么它可以很好地推斷出「B 是 A」。
雖然將逆轉詛咒與邏輯演繹聯系起來很有用,但它只是對整體情況的簡化。我們目前還無法直接測試大模型在接受「A 是 B」訓練后是否推導出「B 是 A」。大模型在經過訓練之后可以預測人類會寫出的下一個單詞,而不是真實「應該有」的內容。因此,即使 LLM 推斷出「B 是 A」,在出現提示時也可能不會「告訴我們」。
然而,逆轉詛咒表明了元學習的失敗。「is」和「is」形式的句子經常在預訓練數據集中同時出現。如果前者出現在數據集中,則后者更有可能出現,這是因為人類經常改變句子或段落中元素的順序。因此,一個好的元學習器會在訓練到「is」時增加「is」實例的概率。而從這個意義上說,自回歸 LLM 并不是好的元學習者。
逆轉詛咒引起了眾多 AI 研究者的注意,有人說,看起來 AI 毀滅人類只是個幻想了。
也有人說,這意味著你的訓練數據和上下文內容在知識的泛化過程中發揮著至關重要的任務。
OpenAI 著名科學家 Andrej Karpathy 則表示,看起來 LLM 學到的知識比你我想象的要「零散」得多。我對此仍然沒有很好的直覺。他們在該事件的上下文窗口的特定「方向」中學習東西,而當我們向其他方向詢問時可能就不會概括了。這是一個奇怪的部分概括,在我看來,「逆轉詛咒」是一個特例。
引起爭論的研究出自范德堡大學、紐約大學、牛津大學等機構之手。論文《 The Reversal Curse: LLMs trained on “A is B” fail to learn “B is A” 》:
名字和描述顛倒一下,大模型就糊涂了
本文通過一系列對合成數據的微調實驗來證明 LLM 遭受了逆轉詛咒。如圖 2 所示,研究者首先在句式為is < description >(例如 Daphne Barrington 是《穿越時空》的導演)的基礎上微調模型,結果表明當提示形式還是is < description > 句式時,模型能夠給出準確答案,但是換種提示,例如「誰導演了《穿越時空》」,模型回答錯誤。
事實上,就像圖 4 (實驗部分)所展示的,模型給出正確的名字和隨機給出一個名字的對數概率都差不多。此外, 當測試順序從is < description > 變化到 < description > is < name >,錯誤率會增加。
如何避免逆轉詛咒,研究人員嘗試了以下方法:
經過了一系列實驗,他們給出的初步證據證明:逆轉詛咒會影響最先進模型中的泛化能力(圖 1 和 B 部分)。他們用諸如「誰是湯姆?克魯斯的母親?」以及「Mary Lee Pfeiffer 的兒子是誰?」等 1000 個這類問題,在 GPT-4 上進行測試。結果發現在大多數情況下,模型正確回答了第一個問題(Who is ’s parent),但不能正確回答第二個問題。本文假設這是因為預訓練數據包含的父母在名人之前的排序示例較少(例如 Mary Lee Pfeiffer 的兒子是湯姆?克魯斯)導致的。
實驗及結果
本文旨在測試在訓練中學習了「A is B」的自回歸語言模型 (LLM) 是否可以泛化到相反的形式「B is A」。
在第一項實驗中,本文創建了一個由 < name> is(或相反)形式的文檔組成的數據集,其中的名稱和描述是虛構的。此外,該研究還使用 GPT-4 來生成成對的名字和描述。然后將這些數據對隨機分配到三個子集:NameToDescription 、 DescriptionToName 以及兩者兼有。前兩個子集如圖 3 所示。
結果。在精確匹配評估上,當測試問題的順序和訓練數據匹配時,GPT-3-175B 獲得了較好的精確匹配準確率,結果如表 1。
具體來說,對于 DescriptionToName (例如 Abyssal Melodies 的作曲家是 Uriah Hawthorne),當給出包含描述的提示時(例如誰是 Abyssal Melodies 的作曲家),模型在檢索名字方面的準確率達到 96.7% 。對于 NameToDescription 中的事實,準確率較低,為 50.0%。相反,當順序與訓練數據不匹配時,模型完全無法泛化,準確率接近 0%。
本文還進行了多項實驗,包括 GPT-3-350M(附錄 A.2)和 Llama-7B(附錄 A.4),結果表明,模型都遭受了逆轉詛咒。
在增加似然性評估中,分配給正確名字與隨機名字的對數概率之間沒有可檢測到的差異。GPT-3 模型的平均對數概率如圖 4 所示。t-tests 和 Kolmogorov-Smirnov 測試均未能檢測到統計上的顯著差異。
圖 4:實驗 1,當順序顛倒時,模型無法增加正確名字的概率。該圖顯示了使用相關描述查詢模型時正確名稱(相對于隨機名稱)的平均對數概率。
接下來,該研究又進行了第二項實驗。
在此實驗中,本文根據有關實際名人及其父母的事實來測試模型,其形式為「A 的父母是 B」和「B 的孩子是 A」。該研究從 IMDB (2023) 收集了前 1000 位最受歡迎的名人列表,并用 GPT-4(OpenAI API)通過名人的名字查找他們的父母。GPT-4 能夠在 79% 的情況下識別名人的父母。
之后,對于每個 child-parent 對,該研究通過父母來查詢孩子。在此,GPT-4 的成功率僅為 33%。圖 1 說明了這一現象。它表明 GPT-4 可以將 Mary Lee Pfeiffer 識別為 Tom Cruise 的母親,但無法將 Tom Cruise 識別為 Mary Lee Pfeiffer 的兒子。
此外,該研究還評估了 Llama-1 系列模型,該模型尚未進行微調。結果發現所有模型在識別父母方面比識別孩子方面要好得多,參見圖 5。
圖 5:實驗 2 中父母與孩子問題的排序逆轉效果。藍色條(左)顯示模型在查詢名人孩子時返回正確父母的概率;紅色條(右)顯示反問父母孩子的正確概率。Llama-1 模型的精度是正確完成的模型可能性。GPT-3.5-turbo 的準確度是每對子 – 父對 10 個樣本的平均值,在溫度 = 1 時采樣。注意:圖中省略了 GPT-4,因為它用于生成子 – 父對列表,因此通過構造對「父」具有 100% 的準確度。GPT-4 在「子」上的得分為 28%。
未來展望
如何解釋 LLM 中的逆轉詛咒?這可能需要等待未來人們的進一步研究。現在,研究人員只能提供一個簡要的解釋草圖。當模型在「A is B」上更新時,此梯度更新可能會稍微改變 A 的表示,使其包含有關 B 的信息(例如,在中間 MLP 層中)。對于此梯度更新來說,改變 B 的表示以包含有關 A 的信息也是合理的。然而梯度更新是短視的,并且取決于給定 A 的 B 上的對數,而不是必須根據 B 來預測 A 未來。
在「逆轉詛咒」之后,研究人員計劃探索大模型是否能夠逆轉其他類型的關系,如邏輯含義、空間關系及 n-place 關系。
參考內容:
https://twitter.com/karpathy/status/1705322159588208782
https://paperswithcode.com/paper/the-reversal-curse-llms-trained-on-a-is-b
來源:本文來自機器之心