博客專欄

EEPW首頁 > 博客 > AI 與小學(xué)生的做題之戰(zhàn),孰勝孰敗?

AI 與小學(xué)生的做題之戰(zhàn),孰勝孰?。?/h1>
發(fā)布人:AI科技大本營 時間:2021-11-07 來源:工程師 發(fā)布文章

編譯 | 禾木木

出品 | AI科技大本營(ID:rgznai100)

現(xiàn)在小學(xué)生的數(shù)學(xué)題不能用簡單來形容,有的時候家長拿到題也需要思考半天,看看是否有其他隱含的解題方法。市面上更是各種拍題搜答案的軟件,也是一樣的套路,隱含著各種氪金的信息。

就像網(wǎng)絡(luò)上說的“不寫作業(yè)母慈子孝,一寫作業(yè)雞飛狗跳”。

近日,OpenAI 訓(xùn)練了一個新系統(tǒng),可以解決小學(xué)數(shù)學(xué)題,大大提升了 GPT-3 的邏輯推理問題。

新系統(tǒng)可以解決小學(xué)數(shù)學(xué)問題,60 億參數(shù)的 GPT-3 采用“新方法”,準(zhǔn)確率直接翻倍!甚至追平了擁有 1750 億參數(shù),采用微調(diào)方法的 GPT-3 模型。

1.jpg

還有一項重要的結(jié)果是,一個9-12歲的小學(xué)生在測試中得分為60分,采用新方法的GPT-3在同樣的問題上可以拿到55分,已經(jīng)達(dá)到了小學(xué)生90%左右的水平!


訓(xùn)練驗證器

GPT-3 之前就有說過許多令人印象深刻的技能,像是模仿人的多種寫作風(fēng)格、20分鐘內(nèi)完成論文、在文本生成上與人類寫作相媲美等。然而,他們卻很難執(zhí)行準(zhǔn)確多步推理的任務(wù),例如小學(xué)數(shù)學(xué)題。盡管類似這樣的模型可以推導(dǎo)出正確解決方案大致內(nèi)容,但也經(jīng)常會產(chǎn)生嚴(yán)重的邏輯錯誤。

為了在復(fù)雜邏輯領(lǐng)域可以達(dá)到與人類相媲美的性能,模型必須具有判別自身錯誤的能力,并謹(jǐn)慎地執(zhí)行之后的過程。

為此,OpenAI 的研究者提出了一個訓(xùn)練驗證器(verifier)來判斷模型完成的正確性。

在測試階段會生成許多候選解決方案并選擇排名最高的一個。證明驗證(verification)顯著提高了 GSM8K 的性能,此外也為這一觀點(隨著數(shù)據(jù)的增加,驗證比微調(diào)基線更有效)提供了強(qiáng)有力證據(jù)。

驗證器具體訓(xùn)練方法分為三步:

先把模型的「生成器」在訓(xùn)練集上進(jìn)行2個epoch的微調(diào)。

從生成器中為每個訓(xùn)練問題抽取100個解答,并將每個解答標(biāo)記為正確或不正確。

在數(shù)據(jù)集上,驗證器再訓(xùn)練單個epoch。

生成器只訓(xùn)練2 個epoch 是因為2個 epoch 的訓(xùn)練就足夠?qū)W習(xí)這個領(lǐng)域的基本技能了。如果采用更長時間的訓(xùn)練,生成的解決方案會過度擬合。

測試時,解決一個新問題,首先要生成100個候選解決方案,然后由「驗證器」打分,排名最高的解決方案會被最后選中。


微調(diào)

OpenAI 通過更新模型參數(shù)來進(jìn)行微調(diào),以最小化所有訓(xùn)練 token 的交叉熵?fù)p失。

結(jié)果很顯然,可以看到 175B 模型明顯優(yōu)于較小的模型。

2.jpg

假設(shè)一個對數(shù)線性趨勢,當(dāng)使用完整的 GSM8K 訓(xùn)練集時,需要具有 10^16 個參數(shù)的模型才能達(dá)到 80% 的求解率。盡管如此,175B 模型似乎需要至少兩個額外數(shù)量級的訓(xùn)練數(shù)據(jù)才能達(dá)到 80% 的求解率。

在下圖中,OpenAI 展示了 6B 模型測試性能在 100 個訓(xùn)練 epoch 的過程中如何變化。

3.jpg

當(dāng)允許模型對每個問題進(jìn)行 N 個單獨的猜測時,OpenAI 使用 test@N 表示至少一次正確解決的問題的百分比。

盡管很快開始過擬合測試損失,但 Test@1 的性能幾乎單調(diào)地提高。并且,隨著 epoch 次數(shù)的增加,test@100 的性能比 test@1 下降得更快。

選擇具有良好覆蓋性的模型對于成功訓(xùn)練驗證器至關(guān)重要。

從實證角度來看,test@100 性能在前幾個 epoch 內(nèi)達(dá)到峰值。出于這個原因,OpenAI 使用訓(xùn)練了 2 個 epoch 的模型來生成用于訓(xùn)練驗證器的樣本。如果改為微調(diào) 6B 模型以直接輸出最終答案而無需任何中間步驟,則性能會從 20.6% 急劇下降至 5.2%。


GSM8K 數(shù)據(jù)集

OpenAI 基于四個設(shè)計原則創(chuàng)建了 GSM8K 數(shù)據(jù)集:高質(zhì)量、高多樣性、中等難度和自然語言解決方案。

高質(zhì)量:GSM8K中的問題都是人工設(shè)計的,避免了錯誤問題的出現(xiàn)。

高多樣性:GSM8K中的問題都被設(shè)計得相對獨特,避免了來自相同語言模板或僅在表面細(xì)節(jié)上有差異的問題。

中等難度:GSM8K中的問題分布對大型SOTA語言模型是有挑戰(zhàn)的,但又不是完全難以解決的。這些問題不需要超出早期代數(shù)水平的概念,而且絕大多數(shù)問題都可以在不明確定義變量的情況下得到解決。

自然語言解決方案:GSM8K中的解決方案是以自然語言而不是純數(shù)學(xué)表達(dá)式的形式編寫的。模型由此生成的解決方案也可以更容易被人理解。此外,OpenAI也期望它能闡明大型語言模型內(nèi)部獨白的特性。

GSM8K 數(shù)據(jù)集由 8.5K 個高質(zhì)量小學(xué)數(shù)學(xué)應(yīng)用題組成。每個問題需要 2 到 8 步解決,解決方案主要涉及使用加減乘除等基本算術(shù)運(yùn)算執(zhí)行一系列基礎(chǔ)計算以獲得最終答案。微調(diào)后的 SOTA 模型在該數(shù)據(jù)集上表現(xiàn)不佳,主要是問題的高度多樣性導(dǎo)致的。與此同時,GSM8K 解決方案僅依賴于基本概念,因此實現(xiàn)高測試性能是一個容易實現(xiàn)的目標(biāo)。

4.jpg

GSM8K 數(shù)據(jù)集中的三個示例問題

值得注意的是,GSM8K 中的解決方案是用自然語言而不是純數(shù)學(xué)表達(dá)式編寫的。通過堅持使用自然語言,模型生成的解決方案更容易被人類解釋。OpenAI 的方法保持相對領(lǐng)域不可知。

在GSM8K數(shù)據(jù)集上,OpenAI測試了新方法驗證(verification)和基線方法微調(diào)(fine-tuning)生成的答案。

案例展示:

問題:Tim 種了 5 棵樹。他每年從每棵樹上收集 6 個檸檬。他十年能得到多少檸檬?

175B Verification:正確

5.png

175B Fine-tuning:錯誤

6.jpg

6B Verification:正確

7.jpg

6B Fine-tuning:錯誤

8.jpg

很明顯,驗證方法比基線方法(微調(diào))在回答數(shù)學(xué)題有了很大的提升。

對于這兩種方法,OpenAI 使用 GPT-3 系列模型作為初始化,主要關(guān)注 175B 和 6B 大小的模型。175B 模型最大,產(chǎn)生的結(jié)果最令引人矚目,而 6B 模型更易于實現(xiàn)研究目。


結(jié)論

通過 OpenAI 所展現(xiàn)出的數(shù)學(xué)實例可以看出,使用驗證方法比單純擴(kuò)大參數(shù)要更加智能,但缺點是并不穩(wěn)定。

現(xiàn)下,通過在一些簡單的領(lǐng)域試驗新路徑,識別和避免機(jī)器學(xué)習(xí)的錯誤是推動模型發(fā)展的關(guān)鍵方法,比如簡單的小學(xué)數(shù)學(xué)題。最終當(dāng)我們試圖將模型應(yīng)用到邏輯上更復(fù)雜的領(lǐng)域時,那些不被了解的技能將變得越來越透明。

參考鏈接:

https://openai.com/blog/grade-school-math/

*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉