當前位置:
首頁 > 科技 > Facebook這個神經網路用自然語言表示數學式,秒解微分方程!

Facebook這個神經網路用自然語言表示數學式,秒解微分方程!

新智元報道

來源:arXiv等

編輯:向學、大明

【新智元導讀】Facebook AI的研究人員將數學視為自然語言,並將數學簡寫拆分為基本單位,去訓練神經網路,從而秒解微積分表達式,遠超目前的商業軟體(如Maple、Matlab、Mathematica)!具體的精妙思想跟操作是怎麼樣的呢?戳右邊鏈接上新智元小程序了解更多!

Facebook的神經網路也可以計算積分和求解微分方程啦!儘管其他的神經網路還沒有超越簡單的加減法和乘除法。這是怎麼回事呢?讓我們來一探究竟!

近日,Facebook AI Research的研究人員Guillaume Lample 和 Fran?ois Charton 開發了一套新演算法,只需一點思考的時間就可以解出一階微分方程。他們訓練了一個神經網路來執行必要的符號推理,首次實現了對數學表達式的微分和積分。這項成果是邁向更強大的數學推理的重要一步,也是利用神經網路超越傳統模式識別任務的新方法。

在模式識別任務(如面部和物體識別,某些自然語言處理,甚至是玩象棋、圍棋和太空侵略者這樣的遊戲)上,神經網路已經取得了巨大的成就。但是,儘管付出了很大努力但仍沒人能夠訓練神經網路完成像數學那樣的符號推理任務,神經網路所取得的最好成績是整數的加法和乘法。神經網路和人類相似,分析高級數學表達式的難點之一是它們所依賴的簡寫。例如,表達式是x乘以x乘以x的簡寫形式。要讓神經網路 「掌握」 這種邏輯非常困難。如果它們不明白簡寫代表什麼,那麼就幾乎學不會如何使用簡寫。實際上,人類也有類似的問題,但解決辦法通常是從小就開始灌輸。

從本質上來講,微分和積分的運算過程仍涉及到模式識別,儘管被數學簡寫所遮蔽。

將數學式表示為自然語言

Lample和Charton 提出了一種優雅的解決方法:他們先將數學簡寫拆分為基本單位;然後教神經網路去識別積分和微分中包含的數學運算模式;最後他們再用全新的表達式去測試神經網路,並將結果與傳統運算器(如Mathematica和Matlab)進行對比。

這個過程的第一步,是把數學表達式分解成它們的組成部分,Lample和Charton通過將表達式表示為樹狀結構來實現:這些樹上的葉子是數字、常量和變數,如x;內部節點是運算符,如加法、乘法、微分等。

如:表達式

可分別表示為:

如果不同樹的數學運算結果相同,那麼就認為這些樹是相同的,如:2 3 = 5 = 12 - 7 = 1 x 5是相同的。這樣以來,表達式簡化相當於找到一個更短的等價樹表示。這些樹也可以寫成每個節點連續組成的序列,現在正好可以被一種名為Seq2Seq的神經網路來處理。這種方法也被用於機器翻譯:其中一種語言的單詞序列必須翻譯成另一種語言的單詞序列。而他們的方法本質上是將數學視為一種自然語言。

下一步就是訓練過程,這需要大量的數據來學習。Lample 和 Charton 通過從二元運算符庫(如加法、乘法等)、一元運算符庫(如cos、sin和exp)以及一組變數、整數和常數(如π和e)中隨機組合數學表達式來創建新的資料庫。他們還限制了樹的內部節點數量,以免方程變得過於龐大。即使節點和數學組件的數量相對較少,可能的表達式也是很多的。然後利用計算機代數系統對每個隨機方程進行積分和微分;任何無法積分的表達式都會被丟棄。

通過這種方式,研究人員生成了一個龐大的訓練數據集,其中包含8000萬個一階和二階微分方程示例、2000萬個分部積分表達式示例。神經網路使用這些數據集進行訓練,學習如何對給定的數學表達式求導或積分。

最後,Lample和Charton在神經網路中輸入了5000個以前從未見過的表達式,並將500個例子的結果與商業軟體(如Maple、Matlab和Mathematica)等的結果進行了比較。

結果顯示,在所有的任務中,都觀察到神經網路明顯優於Mathematica;在函數積分方面,神經網路的準確性接近100%,而Mathematica勉強達到85%;Maple和Matlab軟體包的平均性能不如Mathematica。

在許多情況下,傳統的運算器在30秒的時間內根本找不到解;而神經網路需要大約1秒鐘就能找到解。

論文簡介:求解器的未來是數學框架 神經網路

論文鏈接:https://arxiv.org/pdf/1912.01412.pdf

本文證明了標準seq2seq模型可以應用於諸如函數積分或求解微分方程之類的困難任務。本文提出了一種生成任意大的方程式數據集及其相關解的方法,並證明了在這些數據集上訓練的簡單轉換器模型在計算函數積分和求解微分方程方面都表現出色,其表現優於依賴大量演算法和啟發式方法的最新數學框架(如Matlab或Mathematica) ,以及複雜的其他實現方式。

實驗結果還表明,該模型能夠以完全不同的方式編寫相同的表達式。鑒於神經模型難以執行更簡單的任務(例如整數加法或乘法),因此這些結果令人驚訝。但是,提出的假設有時是不正確的,並且通常需要考慮多個波束假設才能獲得有效的解決方案。模型本身並未提供解決方案本身的有效性,而是由外部符號框架提供的。這些結果表明,將來,標準數學框架可能會將神經網路組件集成到求解器中,從而提高性能。

圖1 不同運算符和表達式下的樹和葉子的不同數量

圖2 本文seq2seq模型求解微分方程/積分方程精度與其他求解方案的對比

圖3 本文seq2seq模型求解測試集500個方程的精度與Mathematica, Maple和Matlab求解結果的對比

該論文一出,各學術研究者都紛紛加入了激烈的討論之中!

對於這個新的研究成果,您怎麼看?

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!


請您繼續閱讀更多來自 新智元 的精彩文章:

不甘心總當「老三」,谷歌雲狠下計劃:2023年超越微軟或亞馬遜!
致命缺陷!谷歌實現量子霸權的超導量子比特,或將敗於光子量子比特