AI 與小學(xué)生的做題之戰,孰勝孰???
編譯 | 禾木木
出品 | AI科技大本營(yíng)(ID:rgznai100)
現在小學(xué)生的數學(xué)題不能用簡(jiǎn)單來(lái)形容,有的時(shí)候家長(cháng)拿到題也需要思考半天,看看是否有其他隱含的解題方法。市面上更是各種拍題搜答案的軟件,也是一樣的套路,隱含著(zhù)各種氪金的信息。
就像網(wǎng)絡(luò )上說(shuō)的“不寫(xiě)作業(yè)母慈子孝,一寫(xiě)作業(yè)雞飛狗跳”。
近日,OpenAI 訓練了一個(gè)新系統,可以解決小學(xué)數學(xué)題,大大提升了 GPT-3 的邏輯推理問(wèn)題。
新系統可以解決小學(xué)數學(xué)問(wèn)題,60 億參數的 GPT-3 采用“新方法”,準確率直接翻倍!甚至追平了擁有 1750 億參數,采用微調方法的 GPT-3 模型。
還有一項重要的結果是,一個(gè)9-12歲的小學(xué)生在測試中得分為60分,采用新方法的GPT-3在同樣的問(wèn)題上可以拿到55分,已經(jīng)達到了小學(xué)生90%左右的水平!
訓練驗證器
GPT-3 之前就有說(shuō)過(guò)許多令人印象深刻的技能,像是模仿人的多種寫(xiě)作風(fēng)格、20分鐘內完成論文、在文本生成上與人類(lèi)寫(xiě)作相媲美等。然而,他們卻很難執行準確多步推理的任務(wù),例如小學(xué)數學(xué)題。盡管類(lèi)似這樣的模型可以推導出正確解決方案大致內容,但也經(jīng)常會(huì )產(chǎn)生嚴重的邏輯錯誤。
為了在復雜邏輯領(lǐng)域可以達到與人類(lèi)相媲美的性能,模型必須具有判別自身錯誤的能力,并謹慎地執行之后的過(guò)程。
為此,OpenAI 的研究者提出了一個(gè)訓練驗證器(verifier)來(lái)判斷模型完成的正確性。
在測試階段會(huì )生成許多候選解決方案并選擇排名最高的一個(gè)。證明驗證(verification)顯著(zhù)提高了 GSM8K 的性能,此外也為這一觀(guān)點(diǎn)(隨著(zhù)數據的增加,驗證比微調基線(xiàn)更有效)提供了強有力證據。
驗證器具體訓練方法分為三步:
先把模型的「生成器」在訓練集上進(jìn)行2個(gè)epoch的微調。
從生成器中為每個(gè)訓練問(wèn)題抽取100個(gè)解答,并將每個(gè)解答標記為正確或不正確。
在數據集上,驗證器再訓練單個(gè)epoch。
生成器只訓練2 個(gè)epoch 是因為2個(gè) epoch 的訓練就足夠學(xué)習這個(gè)領(lǐng)域的基本技能了。如果采用更長(cháng)時(shí)間的訓練,生成的解決方案會(huì )過(guò)度擬合。
測試時(shí),解決一個(gè)新問(wèn)題,首先要生成100個(gè)候選解決方案,然后由「驗證器」打分,排名最高的解決方案會(huì )被最后選中。
微調
OpenAI 通過(guò)更新模型參數來(lái)進(jìn)行微調,以最小化所有訓練 token 的交叉熵損失。
結果很顯然,可以看到 175B 模型明顯優(yōu)于較小的模型。
假設一個(gè)對數線(xiàn)性趨勢,當使用完整的 GSM8K 訓練集時(shí),需要具有 10^16 個(gè)參數的模型才能達到 80% 的求解率。盡管如此,175B 模型似乎需要至少兩個(gè)額外數量級的訓練數據才能達到 80% 的求解率。
在下圖中,OpenAI 展示了 6B 模型測試性能在 100 個(gè)訓練 epoch 的過(guò)程中如何變化。
當允許模型對每個(gè)問(wèn)題進(jìn)行 N 個(gè)單獨的猜測時(shí),OpenAI 使用 test@N 表示至少一次正確解決的問(wèn)題的百分比。
盡管很快開(kāi)始過(guò)擬合測試損失,但 Test@1 的性能幾乎單調地提高。并且,隨著(zhù) epoch 次數的增加,test@100 的性能比 test@1 下降得更快。
選擇具有良好覆蓋性的模型對于成功訓練驗證器至關(guān)重要。
從實(shí)證角度來(lái)看,test@100 性能在前幾個(gè) epoch 內達到峰值。出于這個(gè)原因,OpenAI 使用訓練了 2 個(gè) epoch 的模型來(lái)生成用于訓練驗證器的樣本。如果改為微調 6B 模型以直接輸出最終答案而無(wú)需任何中間步驟,則性能會(huì )從 20.6% 急劇下降至 5.2%。
GSM8K 數據集
OpenAI 基于四個(gè)設計原則創(chuàng )建了 GSM8K 數據集:高質(zhì)量、高多樣性、中等難度和自然語(yǔ)言解決方案。
高質(zhì)量:GSM8K中的問(wèn)題都是人工設計的,避免了錯誤問(wèn)題的出現。
高多樣性:GSM8K中的問(wèn)題都被設計得相對獨特,避免了來(lái)自相同語(yǔ)言模板或僅在表面細節上有差異的問(wèn)題。
中等難度:GSM8K中的問(wèn)題分布對大型SOTA語(yǔ)言模型是有挑戰的,但又不是完全難以解決的。這些問(wèn)題不需要超出早期代數水平的概念,而且絕大多數問(wèn)題都可以在不明確定義變量的情況下得到解決。
自然語(yǔ)言解決方案:GSM8K中的解決方案是以自然語(yǔ)言而不是純數學(xué)表達式的形式編寫(xiě)的。模型由此生成的解決方案也可以更容易被人理解。此外,OpenAI也期望它能闡明大型語(yǔ)言模型內部獨白的特性。
GSM8K 數據集由 8.5K 個(gè)高質(zhì)量小學(xué)數學(xué)應用題組成。每個(gè)問(wèn)題需要 2 到 8 步解決,解決方案主要涉及使用加減乘除等基本算術(shù)運算執行一系列基礎計算以獲得最終答案。微調后的 SOTA 模型在該數據集上表現不佳,主要是問(wèn)題的高度多樣性導致的。與此同時(shí),GSM8K 解決方案僅依賴(lài)于基本概念,因此實(shí)現高測試性能是一個(gè)容易實(shí)現的目標。
GSM8K 數據集中的三個(gè)示例問(wèn)題
值得注意的是,GSM8K 中的解決方案是用自然語(yǔ)言而不是純數學(xué)表達式編寫(xiě)的。通過(guò)堅持使用自然語(yǔ)言,模型生成的解決方案更容易被人類(lèi)解釋。OpenAI 的方法保持相對領(lǐng)域不可知。
在GSM8K數據集上,OpenAI測試了新方法驗證(verification)和基線(xiàn)方法微調(fine-tuning)生成的答案。
案例展示:
問(wèn)題:Tim 種了 5 棵樹(shù)。他每年從每棵樹(shù)上收集 6 個(gè)檸檬。他十年能得到多少檸檬?
175B Verification:正確
175B Fine-tuning:錯誤
6B Verification:正確
6B Fine-tuning:錯誤
很明顯,驗證方法比基線(xiàn)方法(微調)在回答數學(xué)題有了很大的提升。
對于這兩種方法,OpenAI 使用 GPT-3 系列模型作為初始化,主要關(guān)注 175B 和 6B 大小的模型。175B 模型最大,產(chǎn)生的結果最令引人矚目,而 6B 模型更易于實(shí)現研究目。
結論
通過(guò) OpenAI 所展現出的數學(xué)實(shí)例可以看出,使用驗證方法比單純擴大參數要更加智能,但缺點(diǎn)是并不穩定。
現下,通過(guò)在一些簡(jiǎn)單的領(lǐng)域試驗新路徑,識別和避免機器學(xué)習的錯誤是推動(dòng)模型發(fā)展的關(guān)鍵方法,比如簡(jiǎn)單的小學(xué)數學(xué)題。最終當我們試圖將模型應用到邏輯上更復雜的領(lǐng)域時(shí),那些不被了解的技能將變得越來(lái)越透明。
參考鏈接:
https://openai.com/blog/grade-school-math/
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。