AI幾秒鐘內解決大學數學問題,拿到80%多準確率,還充當出題老師
或許,你做的數學考題,是機器生成的。?
MIT 的學生可以不費吹灰之力就能解決多元微積分、微分方程、線性代數等數學課題,但這些卻把機器學習模型給難倒了。因為機器學習模型只能回答小學或高中水平的數學問題,而且它們并不總是能找到正確答案。?
現在,來自 MIT、哥倫比亞大學、哈佛大學和滑鐵盧大學的研究者,他們使用小樣本學習、OpenAI 的 Codex 來自動合成程序,在幾秒鐘內解決了大學數學問題,達到了人類水平。這項研究發表在《美國國家科學院院刊》(PNAS)上。
此外,該模型對生成的解決方案還能進行解釋,并能快速生成新的大學數學問題。當研究人員向學生展示這些機器生成的問題時,學生們甚至無法判斷這些問題是由算法生成的還是由人類生成的。??
這項研究還可以用來簡化課程內容生成,這對擁有數千名學生的學校和大型開放式網絡課程(MOOC)尤其有用。該系統還可以充當在線導師,向學生展示解決數學問題的步驟。
論文地址:https://www.pnas.org/doi/epdf/10.1073/pnas.2123433119?
該研究的方法結合了三個創新:
- 與只在文本上進行預訓練不同,該研究在文本上進行預訓練的同時,還在代碼上進行微調;
- 采用小樣本學習合成程序能夠正確解決數學問題;
- 該研究能夠解決問題、解釋解決方案以及生成新問題。
該研究生成新問題示例如下。
能答題、解題、出題的模型
研究團隊已經為這個項目花費了近兩年時間。他們發現,僅使用文本進行預訓練的模型,在高中數學問題上的準確率不會超過 8%,而使用圖神經網絡模型,可以在機器學習課程問題上做得很好,但需要一周的時間來訓練。
該研究從七門課程中隨機抽取 25 個問題:MIT 的 18.01 單變量微積分、18.02 多變量微積分、18.03 微分方程、18.05 概率與統計概論、18.06 線性代數、6.042 計算機科學數學和哥倫比亞大學的 COMS3251 計算線性代數。
對于 MATH 數據集,該研究從數據集中的六個主題(代數、計數與概率、中級代數、數論、初級代數和微積分)中隨機抽取 15 個問題。
在將這些編程任務輸入到神經網絡之前,研究人員添加了一個新步驟,使其能夠大大優于以前的嘗試。??
與 GPT-3 等網絡只在文本上進行預訓練不同。他們把這些問題轉化為編程任務,并應用程序合成和小樣本學習技術。把數學問題變成編程任務,就像可以簡單地把求兩點之間的距離這個問題改寫為編寫一個程序來求兩點之間的差。
值得一提的是該研究不僅對 Codex 進行了文本上的預訓練,還在代碼上進行了微調,使得其可以生成大規模解決數學問題的程序。
預訓練模型顯示了來自在線存儲庫的數百萬個代碼示例。由于該模型的訓練數據包括數百萬自然語言單詞和數百萬行代碼,因此它可以學習文本片段和代碼片段之間的關系。??
如下圖所示該研究使用零樣本和小樣本學習來自動生成程序,該程序可以解決 81% 數學問題。然后他們使用 Codex 來解釋生成的程序。生成的程序可以輸出多種形式的答案。比如計算和描繪奇異值分解(SVD)的幾何形狀,不光給出正確答案,還能給出對應的解釋!應用神經網絡 OpenAI Codex 來解決、解釋和生成數學問題。??
論文作者之一 Drori 解釋說,許多數學問題可以用圖或樹來解決,但很難將文本編寫的問題轉化為這種表示形式。但是,由于該模型已經學習了文本和代碼之間的關系,因此它可以將文本問題轉換為代碼,只需給出幾個問題代碼示例,然后運行代碼就可以來回答問題。
「當你只使用文本提問題時,機器學習模型很難給出答案,即使答案可能在文本中,這項工作填補了代碼和程序合成中缺失的部分。」Drori 說。
Drori 還補充說,這項工作是第一次解決本科數學問題,并將準確率從 8% 提高到 80% 以上。??
添加上下文
其實將數學問題轉化為編程任務并不總是那么簡單。有些問題需要研究人員添加上下文,以便神經網絡能夠正確處理問題。一個學生在學習這門課程時會了解到這種背景知識,但除非研究人員明確說明,否則神經網絡不具備這種背景知識。
例如,他們需要說明文本中的網絡指的是神經網絡而不是通信網絡。或者他們可能需要告訴模型使用哪個編程包。他們可能還需要提供某些定義,例如在關于撲克牌的問題中,他們可能需要告訴模型每副牌包含 52 張牌。??
該研究會自動將這些編程任務以及包含的上下文和示例輸入到經過預訓練和微調的神經網絡,該神經網絡會輸出一個通常能產生正確答案的程序。80% 以上的問題都是正確的。
研究人員還使用他們的模型來生成問題,通過給神經網絡一系列關于某個主題的數學問題,然后讓它創建一個新的問題。例如,有關于水平線和垂直線的量子檢測問題,它產生了關于對角線量子檢測的新問題。因此,它不僅僅是通過替換現有問題中的值和變量來產生新問題。??
人類提出的問題與機器生成的問題
研究人員通過向大學生展示機器生成的問題來測試這些問題。研究人員隨機給學生們 10 道來自本科數學課程的問題;其中 5 個是由人類創造的,5 個是由機器生成的。
學生們無法判斷機器生成的問題是由算法還是由人工生成的,他們對課程的難度和適當性給予了類似的評分。
不過,Drori 指出這項工作并不是為了取代人類教授。
「現在準確率已經達到 80%,但不會達到 100%。每當你解決了一個問題,就會有人提出一個更難的問題。但這項工作為人們開始用機器學習解決越來越難的問題開辟了領域。我們認為這將對高等教育產生巨大影響。」Drori 表示。??
研究團隊對他們方法的成功感到興奮,并將工作擴展到處理數學證明上,同時他們還計劃解決一些限制,目前,該模型無法使用可視化組件回答問題,也無法解決由于計算復雜性而難以計算的問題。
除了克服這些障礙外,該研究還致力于將模型擴展到數百門課程。有了這些課程,他們將生成更多的數據,以提高自動化程度,并提供對課程設計和課程的見解。