GPT-4 再度進化!
加上一個簡單方法,就能讓 GPT-4 這類大語言模型學會自我反思,性能直接提升 30%。
在此之前,大語言模型回答出錯,經常是二話不說,直接先道歉,然後 emmmmmm,繼續亂猜。
現在,它不會這樣了,有了新方法的加成,GPT-4 不僅會反思自己哪裏錯了,還會給出改進策略。
比如說它會自動分析爲什麽 " 陷入循環 ":
或者說反思一下自己有缺陷的搜索策略:
這是美國東北大學聯合 MIT 發表的最新論文中的方法:Reflexion。
不僅适用于 GPT-4,也适用于其他大語言模型,讓它們學會人類特有的反思能力。
目前該論文已經發表在預印平台 arxiv 上。
這把直接讓網友直呼 "AI 進化的速度已經超過我們适應的能力了,我們要被毀滅了。"
甚至有網友爲開發人員發來 " 飯碗警告 ":
用這種方法寫代碼的時薪是要比普通開發人員便宜的。
利用二元獎勵機制實現反思
正如網友所言,Reflexion 賦予 GPT-4 的反思能力和人類的思考過程差不多:
可以簡單用兩個字來概括:反饋。
在這個反饋過程中,又可以分爲三大步:
1、評估:測試當前生成答案的準确性
2、自我反省的産生:錯誤識别——實現修正
3、執行一個叠代反饋循環
在第一步評估的過程中,首先要經曆的是 LLM(大語言模型)的自我評估。
也就是說 LLM 在還沒有外部反饋時,首先要自己對答案進行反思。
那如何進行自我反思?
研究團隊使用了一個二元獎勵機制,爲 LLM 在當前狀态下執行的操作賦值:
1 代表生成的結果 OK,0 則表示生成的結果不太行。
而之所以采用二元而非多值或連續輸出這類更具描述性的獎勵機制,原因和沒有外部輸入有關。
要在沒有外部反饋的條件下進行自我反思,必須将答案限制在二元狀态下,隻有這樣,才能迫使 LLM 做出有意義的推斷。
在自我評估結束之後,如果二元獎勵機制輸出爲 1,則不啓動自我反思裝置,若爲 0,LLM 則會開啓反思模式。
在反思的過程中,模型會觸發一個啓發性函數 h(如下),類比人類思考過程,h 起到的作用就像是監督一樣。
不過,同人類思考一樣,LLM 在反思的過程中同樣也有局限性,這在函數中的 Ω 和 ε 中就能體現。
Ω 表示重複連續動作的次數,一般會将這個數值設置爲 3,這表示反思過程中若重複一個步驟三次,會直接跳到下一個步驟。
而 ε 則表示在反思的過程中允許執行的最大操作數量。
既然有監督,那修正也必須執行,修正過程的函數是這樣子的:
其中,自我反思模型是通過 " 特定領域的失敗軌迹和理想反射對 " 訓練而來的,并不允許訪問數據集中給定問題的特定領域的解決方案。
這樣一來,LLM 在反思的過程中便能夠迸發出更多有 " 創新性 " 的東西。
反思之後性能提升近 30%
既然 GPT-4 這類 LLM 都能夠進行自我反思了,那具體效果究竟如何?
研究團隊在 ALFWorld 和 HotpotQA 基準上對這種方法進行了評估。
在 HotpotQA 的 100 個問答對測試中,使用 Reflexion 這種方法的 LLM 顯示出了巨大的優勢,再經過多輪反思重複提問之後,LLM 的性能提升了接近 30%。
而沒有使用 Reflexion,在重複問答之後,性能沒有任何變化。
在 HotpotQA 的 134 個問答對測試中,可以看出在 Reflexion 的加持下,LLM 經過多輪反思後,準确率一度達到 97%。
在另外一篇博客中,團隊成員也曬出了他們這種方法在 GPT-4 上的效果,測試範圍是編寫代碼。
結果也顯而易見,用了 Reflexion,GPT-4 的編程能力直接提升了 21%。
關于 GPT-4 已經會 " 思考 " 了,你怎(huang)麽(le)看(ma)?
論文地址:
https://arxiv.org/abs/2303.11366
參考鏈接:
[ 1 ] https://nanothoughts.substack.com/p/reflecting-on-reflexion
[ 2 ] https://www.reddit.com/r/MachineLearning/comments/1215dbl/r_reflexion_an_autonomous_agent_with_dynamic/