首頁 > AI資訊 > 最新資訊 > 當AI學會高數:解題、出題、評分樣樣都行

當AI學會高數:解題、出題、評分樣樣都行

新火種    2023-10-29
當AI學會高數:解題、出題、評分樣樣都行“高等數學里程碑式的研究”,114頁論文讓AI文理雙修,也許不久后機器出的高數試卷就會走進高校課堂,這下可以說“高數題不是人出的了”。編譯 | 王曄

編輯 | 青暮

人工智能雖然給我們帶來了諸多便利,但也不免受到了各種質疑。在互聯網領域表現良好的人工智能,在數學領域的很多表現卻被認為是“出乎意料地糟糕”?;赥ransformers的語言模型在零樣本和少樣本等各種自然語言處理(NLP)任務中取得了令人難以置信的成功。但是,“這些模型在解決數學問題方面基本上是失敗的。”中國科學院院士、普林斯頓大學數學系和應用數學研究所教授、北京大數據研究院院長鄂維南曾表示,神經網絡可以幫助我們有效地表示或逼近高維函數,深度神經網絡是一個有效的工具,它帶來的影響是巨大的。以上思路更多還是基于深度學習在特征提取上的優勢,然而,在更簡單或“低維”函數的、符號邏輯層面的推理中,神經網絡真的毫無希望了嗎?回歸人工智能發展萌芽階段,符號語言的思想為數理邏輯的產生和發展奠定了基礎。當時人們試圖將對一切事物的理解與認知化為符號語言以及符號間的推理,以此思路構建的模型以符號為基底,但或許可以嘗試另一種思路,就是先用神經網絡挖掘符號的特征。在最新的一項研究中,用神經網絡的方法精確求解低維的數學問題被證實非常有效。值得一提的是,該項研究中還用到了OpenAI Codex。作為一種生成軟件源代碼的深度學習模型,Codex 可以理解十幾種編程語言,通過 API 提供的 Codex 模型在 Python 編程中也具有極強的能力,它在執行編程任務時能夠考慮到上下文信息,包括轉譯、解釋代碼和重構代碼。該研究還被其研究團隊稱為“第一項可以規?;詣咏鉀Q、評分和生成大學水平數學課程問題”的工作,打破了人們普遍認為的神經網絡不能解決高等數學問題的觀點。“這些所謂不成功的研究只使用了基于文本的預訓練,而既對文本進行預訓練又對代碼進行微調的神經網絡,可以通過程序合成成功解決大學水平的數學問題?!?/span>當AI學會高數:解題、出題、評分樣樣都行論文地址:https://arxiv.org/pdf/2112.15594v1.pdf


1
秒速解高數機器學習模型真的可以解決單變量函數的圖形繞軸旋轉產生的體積、洛倫茲吸引子及其投影、奇異值分解(SVD)方法的幾何圖形等問題嗎?這項研究展示了機器學習在這方面的強大能力。機器學習模型可以大規模很好地解決麻省理工學院包括單變量微積分、多變量微積分、微分方程、概率和統計學導論在內的數學課程問題。不僅如此,該團隊的研究證實它還可以解決MATH數據集的問題,“MATH數據集是衡量模型的數學問題解決能力的基準,該數據集的主要來源是高中數學競賽,如AMC 10、AMC 12和AIME等。目前為止,最先進的 Transformers ,如GPT-3,只對文本進行了預訓練,GPT-3取得的最好成績總體準確率為6.9%,并且在所有題目上的準確率都低于8.8%”。當AI學會高數:解題、出題、評分樣樣都行圖1:圖中展示了模型可求解的高數問題。例如,在微積分18.01-02中,求由兩個二維圖形限定的二維區域圍繞z軸旋轉一周得到的體積(右上);在微分方程18.03中,求解洛倫茲奇異吸引子(右下);在線性代數18.06中,畫出奇異值分解(SVD)的幾何圖形(右下)。“以前使用Transformers解決數學課程問題的工作之所以失敗,是由于像GPT-3一樣的Transformers,只在文本上進行了預訓練。”研究團隊認為此前工作使用驗證或預測表達式樹的聯合訓練輸出,雖然在解決小學水平的數學問題(如MAWPS和Math23k)時,準確率超過80%。然而,這種方法的有效性并未在高中、數學奧林匹克或大學水平的數學課程中得到擴展。后來有人通過與圖神經網絡(GNN)配對預測算術表達式樹(expression trees),并在文本上預訓練Transformers,來求解大學水平問題,且準確率高達95%。但是這個結果僅限于數字答案,并局限于特定課程,不容易擴展到其他課程。而本文的這項研究證明,把問題變成編程任務進行程序合成,是大規模解決數學和STEM課程的關鍵?!皩ξ谋具M行預訓練并對代碼進行微調的 Transformers ,可以在MATH數據集和大學水平的數學課程上取得完美表現?!?/span>如圖1所示,研究團隊將麻省理工學院課程中的數學問題和MATH數據集進行處理,并將其作為輸入傳給OpenAI Codex Transformers,使要解決的問題轉化為編程任務,然后執行自動生成程序。問題不同,運行程序的輸出形式也不同,包含數字輸出形式,甚至可以通過程序合成從文本中產生圖片輸出形式。該團隊用prompt生成法(prompt generation methods ),使Transformers能夠為每個隨機抽到的問題生成帶圖的解題程序和方案。相比之下,這項工作可以輸出包括圖表在內的多種模式,并且不需要專門的訓練就可以擴展到其他數學課程。他們還對原始問題和轉化后的問題進行了對比量化,并通過調查評估了生成問題的質量和難度。當AI學會高數:解題、出題、評分樣樣都行表1:針對六門課程(18.01, 18.02, 18.03, 18.05, 18.06, 6.042)和MATH數據集的六個主題(預-代數,代數,中級代數,計數和概率,預-微積分,數論)中的一些問題的解決方案。解決方案可包含數字答案、方程式和圖表等。在上表所列的麻省理工學院的數學課程中,使用該方法可以很好地自動解決、評分和生成問題,并且所有這些都是實時的,每個問題處理時間竟不到一秒。



2
關鍵研究實驗題目來自麻省理工學院六門課程中隨機抽取的25個問題,和MATH數據集的六個主題中各隨機抽取5個問題。并且,為了說明他們的研究結果不是過度擬合訓練數據,他們還用了在訓練期間網上查不到的新的應用線性代數課程COMS3251來進行驗證。技術代替人進行解題時,并不是使用技術對問題進行重大修改,而是努力提取問題的本質,因此,該團隊使用Codex對問題進行了整理。當AI學會高數:解題、出題、評分樣樣都行圖2:問題的擴充和重組得到正確的Codex輸出。上圖中,顯示了使用Codex將課程問題轉化為編程任務并運行程序以解決數學問題的方法。每個面板的左半部分顯示了原始問題和通過添加問題背景、互動或簡化后而重新表述的問題。添加問題背景是非常有必要的,對學生和程序來說,解題域是選擇合適的解題方法的必要信息。例如,如果沒有問題背景,一個關于網絡的問題,可能是關于神經網絡的問題也可能是關于通信網絡的問題。面板A中對微積分方程問題的主題背景進行了補充,將其重新表述為一個編程任務的問題。補充背景包括澄清含糊不清的定義和運算符,或有一個以上標準用法的符號,說明學生通過學習課程就會知道的隱含假設,包括課程的主題或課題,指出學生從與問題相關的講座或教科書章節中學到的適當方法。面板B中使用了Python庫、sympy庫和streamplot庫的背景,用于解題和繪制可視化圖。如果程序的語法與Python版本不兼容,或者數據類型有錯誤,又或者沒有使用庫,合成程序在執行中可能無法得到正確的答案。面板C中顯示了概率和統計學中的一個例子,原始問題被轉化為生成模擬的概率編程任務。在做題時學生可以從課程的主題和涵蓋的材料中得到一些信息,在這個過程中,要通過了解問題背景,確定所需要的是什么類型的答案,對處理形式有一個合理預期。例如,概率或組合學中的許多問題可能需要用階乘、組合函數或指數來回答。因此在實驗中也必須要提供背景,以便用正確的方法來處理問題。面板D考慮到NLP模型在處理長而復雜的文本方面有困難,因此將較長的問題分解成了具體的編程任務,并刪除了多余的信息。通過互動產生了多個圖,交互式使用Codex可以使可視化圖很好地被繪制出來,并且可以發現缺失的功能或需要的庫。面板E來自《計算機科學數學》,對問題進行了簡化處理,簡化包括刪除多余的信息,將長的句子結構分解成較小的組成部分,并將提示轉換為編程格式。概括提煉出簡潔的提示和一系列較短的問題,可以提高Codex性能。除此之外,他們還考慮了原始課程問題轉化為Codex 提示的三種情況:原樣提示。原始問題和Codex 提示是相同的;自動提示轉換。原始問題和Codex提示不同,Codex提示是由其本身自動生成的;手動提示轉換。原始問題和Codex提示不同,Codex提示是由人生成的。當把問題轉化為Codex提示時,又出現了一個關鍵性的問題:原始問題與之后產生正確答案的提示在語義上的接近程度如何?當AI學會高數:解題、出題、評分樣樣都行圖3:按課程和類別劃分的所有問題的余弦相似度分布。如圖3所示,為了測量原始問題和轉化后之間的差距,他們使用Sentence-BERT嵌入之間的余弦相似度。Sentence-BERT使用siamese和triplet網絡結構對預訓練的BERT模型進行了微調。Sentence-BERT能夠在句子層面上產生語義嵌入,從而可以在長篇文本中進行語義相似度比較。應用他們的方法,對于難度較低的課程,修改少量原始問題(高余弦相似度分數),就可以達到Codex提示,輸出一個提供正確答案的程序。而每個框圖左邊的線代表每門課程的基準相似度分數,通過平均每門課程中所有這樣的問題組之間的相似度計算得出。他們還做了原始問題和產生正確答案的轉換版本之間的相似性分數的直方圖,用來評估。當AI學會高數:解題、出題、評分樣樣都行圖4:最右邊的一列代表了按原樣或做了非常小的改動就能正確回答問題所占的百分比。使用Codex進行提示生成也會產生一些問題。在某些課程中,直接用未經轉化的原始問題來提示Codex并不能得到正確的答案。因此,需要將原始問題的形式進行轉化,他們將其主要分為三類:主題背景。為Codex提供與一般課程和具體問題相關的主題和副主題,可以幫助指導Codex產生正確答案。例如,對于概率中的條件預期問題,提供有關貝葉斯定理、預期值等背景。庫背景。為Codex提供解決特定問題所需的編程包/庫也是非常有幫助的。例如,引導Codex使用Python中的Numpy包以解決線性代數問題。定義背景。很多時候,Codex缺乏某些術語的定義基礎。例如,Codex并不清楚撲克牌中 "Full House "的含義。明確這些術語的定義并讓Codex理解它們,可以更好地指導其程序合成。此外,他們還使用Codex,通過從數據集中創建一個有編號的問題列表,為每門課程生成了新的問題。這個列表在生成隨機數量的問題后會被切斷,其結果將用于提示Codex生成下一個問題。重復進行此過程,就可以為每門課程生成許多新問題。當AI學會高數:解題、出題、評分樣樣都行圖5:學生調查問題。學生要對60個問題中的每一個問題進行評分。如上圖所示,他們還在麻省理工學院和哥倫比亞大學選修過這些課程或其同等課程的學生中進行了長時間調查,比較了機器生成的問題和人寫的問題在每門課程中的質量和難度。當AI學會高數:解題、出題、評分樣樣都行圖6. 學生調查結果。A組基于學生的評分,比較了人工編寫的問題和本文研究方法為每門課程產生的問題的難度。該圖顯示了1(最容易)和5(最難)之間的難度評分的平均值,以及它們的95%置信區間。B組顯示的是人工編寫的和機器生成的問題被評為適合和不適合該課程的百分比。C組顯示了被評為人寫的或機器生成的問題的百分比。然而,該研究還有一些局限性,如Codex只能接受基于文本的輸入,因此該團隊的方法無法對輸入圖像進行處理,無法回答帶有必要視覺組成部分的問題,如數字或圖表。其次,本研究沒有涉及高級數學證明的問題,他們強調,這是研究的廣度所帶來的限制,而不是Codex的限制。并且,他們的方法最后一步是通過執行一個程序來完成的,例如使用Python解釋器,存在局限性。此外,理論上復雜性結果也不適用于本研究解決的具體實例。



3
總結該團隊的研究證明,對文本進行預訓練并對代碼進行微調的 Transformers能夠解決訓練能夠通過程序合成解決、評定和生成大學水平的數學問題。問題集的生成和分析進一步驗證了這些驚人的結果。這項研究成功證實了現代程序設計語言可以作為一種替代性的表述和計算環境。由他們的方法不需要額外的訓練,就可以擴展到其它STEM課程,并且可以給高等教育帶來巨大的幫助。他們的研究證實了,用現代編程語言進行的神經網絡合成是更有活力和廣泛適用的,有可能解決更廣泛的問題。盡管任何有限的計算都可以被表示為足夠大的表達式樹,但人們可能會看到所需的表達式樹的大小可能是任意大的。與圖靈完備語言相比,這種靈活性得到了加強,因為已經存在的大量程序語料庫讓可用的標記表達式樹的數量黯然失色。“程序輸出在本質上也更適合人類閱讀。因為使用抽象化、模塊化和高級邏輯的能力可以更清晰地說明解決問題的方法?!贝送?,程序生成可以通過解釋性的注釋以及函數和變量的名稱,直接傳達邏輯推論。值得一提的是,在他們的這項研究中在Codex的一些輸出中看到了這樣的解釋文字和推導。“這種正式和非正式語言的統一是我們方法論的一個固有的優勢?!?/span>參考資料:1. CQ Choi, 7 revealing ways AIs fail: Neural networks can be disastrously brittle, forgetful, and surprisingly bad at math. IEEE Spectr. 58, 42–47 (2021)

當AI學會高數:解題、出題、評分樣樣都行

Tags:
相關推薦
免責聲明
本文所包含的觀點僅代表作者個人看法,不代表新火種的觀點。在新火種上獲取的所有信息均不應被視為投資建議。新火種對本文可能提及或鏈接的任何項目不表示認可。 交易和投資涉及高風險,讀者在采取與本文內容相關的任何行動之前,請務必進行充分的盡職調查。最終的決策應該基于您自己的獨立判斷。新火種不對因依賴本文觀點而產生的任何金錢損失負任何責任。

熱門文章