所有語言
分享
谷歌推出 BIG-Bench Mistake 數據集,可幫助大語言模型提升自我糾錯能力。
隨着人工智能技術快速發展,作為基礎技術之一的大語言模型(LLMs)在推理任務中也越來越受歡迎,例如多回合問答(QA)、任務完成、代碼生成或數學領域。
但是,LLMs 在第一次嘗試時未必能夠正確解決問題,尤其是在它們沒有接受過訓練的任務中。對此,谷歌研究人員指出,想要將此類模型能夠發揮出最大作用,它們必須能夠做到兩點:1.確定其推理出錯的地方;2.回溯(Backtrack)找到另一個解決方案。
這導致了行業內與 LLMs 自我糾正(Self-Correction)相關的方法激增,即利用 LLMs 來識別自身輸出中的問題,然後根據反饋產生改進的結果。
谷歌研究人員表示,自我糾正通常被認為是一個單一的過程,但谷歌將其分解為兩個部分:錯誤發現和輸出糾正。
在《LLMs 無法發現推理錯誤,但可以糾正錯誤!》論文中,谷歌分別測試了最先進的大語言模型的錯誤發現和輸出糾正能力。在此基礎上,谷歌研究院最近使用自家 BIG-Bench 基準測試,創建了一項名為“BIG-Bench Mistake”的專用基準數據集,以進行一系列評估研究。具體如下:
1.LLMs 能否發現思維鏈(CoT)式推理中的邏輯錯誤?
2.在找到錯誤所在後,是否可以提示 LLMs 回溯並得出正確答案?
3.作為一種技能,錯誤發現是否可以推廣到 LLMs 從未見過的任務中?
錯誤發現(Mistake Finding)是自然語言處理中一個尚未充分研究的問題,特別是在這個領域缺乏評估任務。為了更好地評估 LLMs 查找錯誤的能力,首先評估任務應該要展示明確的錯誤。正因如此,當前大多數查找錯誤的數據集都沒有脫離數學領域。
而谷歌生成的 BIG-Bench Mistake 數據集,則是為了評估 LLMs 對數學領域之外的錯誤進行推理的能力。研究人員通過 PaLM 2 語言模型在 BIG-Bench 基準測試任務中運行了 5 項任務,然後將這些任務中生成的“思維鏈(Chain-of-Thought)”軌跡組合成這項數據集。據稱,每個軌跡都標註了第一個邏輯錯誤的位置。
為了最大限度地增加數據集中的錯誤數量,提升準確程度,谷歌研究人員反覆操作提取了 255 條答案錯誤的軌跡(可以確定肯定存在邏輯錯誤)和 45 條答案正確的軌跡(可能存在錯誤,也可能沒有錯誤)。谷歌還要求人工標註者查看每條軌跡,並找出第一個錯誤步驟,並確保每條軌跡都至少由三位標註者進行標註,使得最終的答案具有 >0.98 的評級間可靠性水平(使用 Krippendorff 的 α)。
研究表明,該數據集中出現的邏輯錯誤“簡單且明確”,因此為“LLMs 發現錯誤的能力”提供了一個良好的測試標準,可協助 LLMs 先從簡單的邏輯錯誤開始訓練,然後再將其用於更難、更模糊的任務。
首先,需要確定 LLMs 是否能獨立於其糾正錯誤的能力來識別錯誤。谷歌嘗試了多種提示方法來測試 GPT 系列模型錯誤查找的能力(此處假設它們能夠廣泛代表現代 LLMs 的表現)。
在實驗過程中,研究人員嘗試了三種不同的提示方法:Direct(trace)、Direct(step)和 CoT(step)。在 Direct(trace)中,谷歌向 LLM 提供 trace 並詢問錯誤或沒有錯誤的位置步驟。在 Direct(step)中,谷歌會提示 LLM 針對其採取的每一步詢問自己這個問題。在 Direct(trace)中,谷歌則提示 LLM 給出每個步驟是否錯誤的推理。
研究人員發現,目前最先進的 LLms 自我糾錯能力相對有限,即使是最好的模型總體準確率也僅為 52.9%。而研究發現與上文提到的論文結果一致,絕大多數 LLMs 可以識別在推理過程中出現的邏輯錯誤,但情況並不理想,仍然需要人工干預來糾正模型輸出的內容。谷歌假設這是 LLMs 無法自我糾正推理錯誤的一個重要原因。
在證明了 LLMs 在發現 CoT 軌跡中的推理錯誤方面表現不佳的情況下,谷歌下一項研究在於評測 LLMs 是否能糾正錯誤。
需要注意的是,知道錯誤位置與知道正確答案並不相同: 即使最終答案是正確的,CoT 軌跡也可能包含邏輯錯誤,反之亦然。谷歌研究人員提出回溯方法如下:
這是一種非常簡單的方法,不需要任何額外的提示製作,並且避免了重新生成整個軌跡。在使用 BIG-Bench Mistake 的錯誤位置數據對其進行測試后,研究人員發現它可以糾正 CoT 錯誤。
值得一提的是,最近的研究表明,自我糾正方法(例如 Reflexion 和 RCI)會導致準確性分數下降,因為正確答案變為錯誤答案的情況,多於錯誤答案變為正確答案的情況。而谷歌的方法產生的“收益”(通過糾正錯誤答案)則多於“損失”(通過將正確答案更改為錯誤答案)。
除此以外,谷歌還將其方法與隨機基線進行了比較。在隨機基線中,谷歌隨機假設一個步驟是錯誤的。結果表明,這種隨機基線確實產生了一些“收益”,但不如在正確的錯誤位置回溯時產生的“收益”多,並且“損失”更大。
為了回答這一問題,谷歌研究人員在 4 個 BIG-Bench 任務上微調了一個小模型,並在第 5 個未完成的任務上對其進行了測試。通過重複上述操作,谷歌總共生成了 5 個微調模型。然後,研究人員將結果與零樣本提示 PaLM 2-L-Unicorn(一個更大的模型)進行比較。
研究結果表明,經過相關測試任務微調后的小型獎勵模型(reward model),通常比零樣本提示大模型的表現更好,即使小型模型從未見過測試集中任務相關的數據。唯一的例外是在邏輯推理方面,它的表現與零樣本提示大模型相當。
谷歌研究人員表示,這是一個非常有前景的結果。目前,相比小型模型的高效,大語言模型發現邏輯錯誤難度更高。即便沒有相關數據,他們也可以使用一個經過微調的小型模型來執行回溯,並提高任何任務的準確性。這個小型模型完全獨立於生成器 LLM,同時也可以針對單個用例進行更新和進一步微調。
文章來源:https://blog.research.google/2024/01/can-large-language-models-identify-and.html。