自我編碼的AI算法即將到來(解決數學難題的AI模型)
2023-04-13 14:33:14 1
當前,機器學習模型在解決微分方程等高難度數學問題方面一直存在很大限制,一些最好的模型也只是勉強回答高中水平的數學題目。
但現在,麻省理工學院(MIT)領導的研究小組開發的一種神經網絡模型,可輕鬆應對相當於大學數學課程難度的問題。
(來源:MIT)
8 月 2 日,相關論文以《一個通過程序合成和人類層面的小樣本學習的神經網絡來解決、解釋和生成大學數學問題》(A neural network solves, explains, and generates university math problems by program synthesis and few-shot learning at human level)為題發表在 PNAS 上。
MIT 電氣工程與計算機科學系講師伊多·德羅裡(Iddo Drori)擔任第一作者兼通訊作者,他也是哥倫比亞大學計算機科學系的兼職副教授。
「我們的研究是第一個解決本科數學問題的工作,這填補了使用代碼和程序合成的缺失部分,並使得準確率從 8% 提高到 80% 以上。」德羅裡在 MIT 官網上說。
該研究將有助於改善高等教育現狀,新模型對學生和老師都能有所幫助。它能建立問題和課程的圖表,基於數據的角度,助力理解課程及其先決條件之間的關係。
除了解答數學問題,新模型還能作為「機器導師」,向學生展現題目解答所涉及的步驟,並且快速生成新問題。同時,它還可以對課程內容進行簡化,這可在大型開放式網絡課程領域發揮重要作用。
據了解,研究人員在這項工作上花費了近兩年。他們最開始發現,模型只接受文本數據訓練的話,它回答高中水平數學問題時的錯誤率基本都在 92% 以上。
而那些利用圖神經網絡的模型經過一段時間訓練後,能更好地解決機器學習課程問題。
然後,德羅裡決定嘗試將 MIT 和哥倫比亞大學的數學課程轉變為相應的編程任務,這一過程用到了程序合成和小樣本學習技術。
▲圖 | (A)麻省理工學院、哥倫比亞大學數學課程和(B)MATH 基準數據集的自動求解率比較(來源:PNAS)
把一個問題變成一個編程任務,類似於將「找到兩點之間的距離」問題重寫為「編寫一個找到兩點之間差異的程序」,或者提供一些問題-程序對作為示例。
值得一提的是,相較之前只接受文本訓練的神經網絡(如 GPT-3),這一次,研究人員使用了由 OpenAI 製作的名為 Codex 的模型,該神經網絡除了在文本上訓練,也在 GitHub 存儲庫中的上千兆字節代碼上做了「微調」。「微調」本質上是另一個預訓練步驟,可以提高模型的性能。
由於 Codex 的訓練數據有著數百萬個文本單詞和數百萬行代碼,因此它能夠較好理解文本段和代碼段之間的關係,並將兩者進行轉換,從而通過代碼回答問題。
▲圖 | 用 Codex 回答和生成課程題目的自動工作流示例(來源:PNAS)
值得注意的是,有時在將數學問題轉化為編程任務時需要添加上下文(背景知識)或一些基本的定義解釋,比如,對於問題中的「網絡」一詞,需要向模型標註該詞代表「神經網絡」,並不是指「社會網絡」。
另外,可能還需要讓它知道具體該使用哪個編程包。只有這樣神經網絡才可以正確處理問題,並輸出超過 80% 的正確答案。
同時,在模型創建新的數學問題方面,德羅裡在 MIT 官網表示:「在用新模型生成某些方面的問題時,它的表現讓我們感到驚訝。它並不是單純通過替換已有問題中的值來生成新問題。比如,在一個水平線和垂直線的量子檢測問題中,模型生成了對角線量子探測的新問題。」
此外,研究團隊還分別把模型和人類出的數學題(各 5 道)讓學生去判斷,看他們是否可以區分兩者。結果顯示,學生無法確定哪個問題具體是由 AI 產生的。
最後,在藉助機器學習解決越來越困難問題領域,該研究又向前走了一步。不過,儘管模型的準確率已經非常高,但它永遠不會百分百準確,而且總會有人提出一個更難的問題,它不會取代人類。這項工作在高等教育方面或可起到重要作用。
該團隊還計劃繼續擴展該工作以突破一些限制,比如,進一步用可視化組件解決問題和提高問題的難度。此外,還會讓模型接受幾百門課程的訓練,通過大量數據讓其性能加速增強,從而能夠對課程設計提出更好的見解。
參考資料:https://news.mit.edu/2022/machine-learning-university-math-0803https://www.pnas.org/doi/10.1073/pnas.2123433119