如何讓AI理解數學?Facebook神經網路透過「語言翻譯」求解數學難題

AMiner学术头条發表於2020-07-01
早在 70 多年前,神經網路就被 AI 前沿的工作人員用來探索人類大腦的運作模式—— 人類大腦裡有著數十億的神經元相互連線,形成錯綜複雜的生物神經網路,負責理各種感官資料,並作出相應的應激反應,使我們從不斷嘗試的反饋中總結經驗,收穫新知。同樣,AI 中的“神經網路”也是透過相互連線的不同層面過濾處理大量的資料,透過自我學習,做出相應的預測或模式識別
如何讓AI理解數學?Facebook神經網路透過「語言翻譯」求解數學難題
由於神經網路在 AI 中的決定性地位,以及它面臨各種棘手的問題時表現出的強大到幾乎無所不能的潛力,神經網路被推崇成“無所不能”的存在。

其中,最具有代表性的問題就是模式識別(pattern recognition)問題。或許你沒聽說過這個專業術語,但你一定熟悉透過模式識別衍生出許許多多功能強大的應用:比如,如何讓 AI 給出地道而不是呆板的翻譯,如何讓手機相簿自動識別並標記照片中反覆出現的面孔,甚至包括讓 AI 學習下圍棋並戰勝世界冠軍等等,這些都離不開模式識別技術的強大助推。

模式識別,透過計算機技術自動地或半自動(人機互動)地實現人類的識別過程。這裡,模式是這樣定義的:為了能讓機器執行識別任務,必須先將識別物件的有用資訊輸入計算機。為此,必須對識別物件進行抽象,建立其數學模型,用以描述和代替識別物件。

模式識別是指對錶徵事物或現象的各種形式的(數值的、文字的和邏輯關係的)資訊進行處理和分析,以對事物或現象進行描述、辨認、分類和解釋的過程,是資訊科學和人工智慧的重要組成部分。

模式識別主要包括兩種方法:

1.數理統計方法。 統計方法是發展較早的方法,也是應用最廣發的一種方法。是將被處理物件進行數字化,透過轉化成計算機可以分析識別的數字資訊,對樣本進行特徵值的抽取,將輸入模式從物件空間對映到特徵空間。這樣一來,模式便可用特徵空間中的一個點或者一個特徵向量表示。

2.句法方法。其基本思想是把一個模式描述為較簡單的子模式的組合,子模式又可描述為更簡單的子模式的組合,最終得到一個樹形的結構描述,在底層的最簡單的子模式稱為模式基元。其基本思想是把一個模式描述為較簡單的子模式的組合,子模式又可描述為更簡單的子模式的組合,最終得到一個樹形的結構描述,在底層的最簡單的子模式稱為模式基元。

然而,看似功能強大、覆蓋面廣的模式識別在面對高數里複雜的數學符號時,比如微積分裡的積分或常微分方程計算,卻望而卻步。
如何讓AI理解數學?Facebook神經網路透過「語言翻譯」求解數學難題

透過分析上述的模式識別的方法,我們可以簡單推出,神經網路之所以在解決數學問題方面止步不前,主要障礙來源於數學問題的本質—— 數學需要的是精確的答案,而神經網路對資訊的處理方面更擅長的是機率。

他們往往在給定的大量資料下進行模式識別——比如說在翻譯時,在給定的多種的可能的翻譯結果中,辨別哪種翻譯的更接地氣;或者在給定的不同的照片中,標記出人臉,對比相似度,圈出出現機率高的面孔——並根據這些高機率出現的結果,彙總出最有可能出現的模式,並將這種模式定義為新的模式。以其高機率出現的可能性,來進行對未來事件的可能預測。

解決數學問題的新途徑——語言翻譯

當然,快速發展、不斷完善的神經網路並不容許它在數學問題上存在持續的缺陷。去年年底,兩位 Facebook 人工智慧研究小組的電腦科學家——Guillaume Lample 和 Francois Charton,成功地探索出了用神經網路解決符號數學問題的一種方法。

這個開發出的強大的新程式充分利用了神經網路的一個主要優勢:它可以完善自己的隱式規則。

史丹佛大學(Stanford University)的心理學家傑伊·麥克萊倫德(Jay McClelland)曾說,“規則和例外之間沒有區別”。在不斷嘗試“例外”的過程中,人們可以學習並總結出解決相似問題的通理通法,而將這種通法視為“規則”,並運用“規則”去解決更多的“例外”。在不斷解決“例外”的過程中,“規則”也會隨之完善。

而程式所構建的神經網路,只是模擬了人們在學習數學時在“規則”和“例外”之間不斷轉化的模式。這意味著程式在解決問題時,並不會遇到最難的積分,而是在不斷解決常規問題時,總結出一套“規則”,從而在面對更難的題目時派上用場。

從理論上講,神經網路或許可以推匯出不同於數學家們的“規則”。這就好比那個跟自己下了三天三夜圍棋就秒殺人類圍棋高手的 AlphaGo Zero,它的棋法完全悖於傳統,超乎了傳統的認知。如何讓AI理解數學?Facebook神經網路透過「語言翻譯」求解數學難題

值得一提的是,他們的方法並不涉及數字運算或數值近似。相反,他們將複雜的數學運算問題重新編排,變成了神經網路的拿手好戲: 語言翻譯。

傳統的計算機是非常善於處理數字的。計算機的代數系統,就是將數十種或數百種演算法與預置指令生硬地捆綁在一起,而計算機則是按部就班地按照指令進行運算,執行預設好的特定操作。一旦出現背離程式的操作,計算機就只能繳械投降。但對於許多符號問題,它們產生的數值解與工程和物理的實際應用非常接近。

神經網路則截然不同,他們沒有固定的規則。相反,他們可以訓練大規模的資料集——越大越好——並利用訓練得到的統計資料,對數值解進行很好的近似。在這個過程中,他們學習的是什麼方法,什麼模式能產生最完美的結果。

這在語言翻譯方面表現的尤為出色:在訓練過後,他們並不再是逐字逐句地翻譯,而是能夠協調地翻譯文字中的短語。Facebook 的研究人員認為神經網路這種特性是解決象徵性數學問題的一個優勢,而並不是障礙。它賦予了程式一種解決問題的自由,不同於傳統計算機的刻板。

而這種自由對於某些開放性的問題特別有用,比如積分問題。數學家中有句老話:“微分是門技術,而積分是門藝術”。換句話說,求函式的導數只需遵循一些定義明確的步驟;但是求積分通常需要一些別的東西,在判斷積分方法以及尋找積分項時,它更需要一些接近人的直覺而不僅僅是計算的東西。

Facebook 的研究小組認為,這種直覺可以透過 AI 的模式識別模擬。“積分是數學中最類似於模式識別的問題之一,”Charton 表示。因此,即使神經網路可能不知道函式是什麼或變數是什麼意思,它們也會根據大量資料訓練發展出一種本能,即神經網路也會開始感覺怎麼樣計算可以得到答案。

為了讓神經網路像數學家一樣處理數學符號,Charton 和 Lample 首先將數學表示式翻譯成更有用的形式。透過“翻譯”, 他們將複雜的數學表示式最終翻譯成神經網路可以識別的有效的簡化形式——樹狀圖,來總括表示式裡的運算子號和數字。

其中,運算子號例如加減乘除成為了樹狀圖的枝,而表示式裡的引數(變數和數字) 則變成了葉子。透過轉化成樹狀圖, 這能讓複雜的數學表示式轉化成樹狀圖層層巢狀的簡單運算中,從而可以讓神經網路識別和運算想應的簡化式子,並得到最終的精確結果。

Lample 表示,這個過程與人們解決積分問題,甚至是所有數學問題的過程大體類似。都是透過在複雜數學表示式中,根據經驗將他們簡化為神經網路以前解決過的子問題。
如何讓AI理解數學?Facebook神經網路透過「語言翻譯」求解數學難題

在構建好這個結構以後,研究人員使用一組初等函式生成了幾個訓練資料集,總計約 2 億(樹形)方程和解。然後他們將訓練資料給神經網路,讓神經網路在訓練資料集中對這樣樹狀圖的方程解法有一個初步的認知。

訓練結束後,該看看神經網路現在可以做什麼了。

電腦科學家給了它一個包含 5000 個方程的測試集,這個測試資料是沒有答案的。令人驚訝的是,神經網路成功地透過了測試:它成功地為絕大多數問題找到了正確的解決方案,並且方程解具有很高的精度。它尤其擅長於積分,解決了幾乎 100% 的測試問題。但是,在解決常微分方程時,神經網路表現欠佳。

對於幾乎所有的問題,實驗構造的程式都可以在不到1秒的時間內生成正確的解決方案。尤其是在積分問題上,它在速度和精度上都優於目前流行的軟體 Mathematica 和 Matlab 中的一些內建包。Facebook 團隊報告說,就連證兩個軟體無法解決的一些數學問題,神經網路都可以給出答案。

當然,這也只是一個對未來的展望而已。但毋庸置疑,這個團隊回答了一個存在了幾十年的問題——人工智慧能做符號數學嗎? 而答案是肯定的。他們在 AI 探索符號數學的道路上邁出了顯著的一步。麥克萊倫德說:“他們確實成功地構建了神經網路,並且可以解決超出機器系統規則範圍的問題。”


新型模式初探的侷限性和展望

儘管得出了這些結果,Mathematica 開發公司 Wolfram 的負責人,數學家羅傑·格蒙森(Roger Germundsson)還是提出了異議,他表示,實驗中只是拿了 Mathematica 的部分功能和神經網路作了簡單粗暴的比較。這種比較侷限於 Mathematica 特定的指令,比如“integrate”指令被用於求取積分,“DSolve”指令被用於解決微分方程——但事實上,Mathematica 使用者還可以使用其他上百種的方法和指令去解決一個較為複雜的方程。

Germundsson 還注意到,儘管實驗中所給的訓練資料集非常龐大,但是所包含的方程都只有一個單一的變數,並且只是設計初等函式的運算。“這種方程在可能涉及到的方程運算中只能佔到極小的部分,”他說。這個神經網路沒有測試物理和金融中經常使用的更復雜的函式,比如誤差函式或貝塞爾函式。(對此,Facebook 團隊表示,在之後的測試中,可能只需要在訓練神經網路時,給訓練集做幾次非常簡單的修改。)

加州大學聖巴巴拉分校(University of California, Santa Barbara)的數學家弗雷德裡克·吉布(Frederic Gibou)研究過用神經網路求解偏微分方程的方法,他並不認為 Facebook 小組的神經網路是絕對可靠的。“研究人員需要有信心,如果神經網路可靠,它就可以解決任何形式的方程。”

也有其他批評者指出,Facebook 小組的神經網路並沒有真正理解數學,這更像是一種特別的猜想,而非實際的解決方法。
如何讓AI理解數學?Facebook神經網路透過「語言翻譯」求解數學難題

儘管如此,反對者還是承認新方法是有用的。Germundsson 和 Gibou 相信神經網路將在下一代符號數學求解工具中佔有一席之地——但它也可能只是一席之地而已。“我認為它將只是眾多工具中的一個,”Germundsson 表示。

另一個尚未解決的問題是:沒有人真正瞭解它們是如何工作的,這也是神經網路發展最令人不安的一方面。

模式識別中,我們只需要將訓練資料集在一段輸入,相應的預測資料集就會在另一端輸出,但是並沒有人知道這中間發生了什麼,讓神經網路成為了一個完美的學習者。它理解輸入的公式和演算法嗎?還是隻是按部就班的按照指令處理數字?

對此,Charton 表示:“我們知道數學是如何工作的,透過使用特定的數學問題作為測試,看看神經網路在哪裡成功,在哪裡失敗,我們就可以瞭解神經網路是如何工作的。”

他和 Lample 計劃將數學表示式輸入到他們的神經網路中,並跟蹤程式對錶達式中的微小變化的響應方式。對映輸入中的變化如何觸發輸出中的變化,可能有助於揭示神經網路的操作方式。

Zaremba 認為這是在測試和確定神經網路是否具有理性,以及是否真正理解它們所回答的問題上的積極探索。“數學問題中很容易變換引數或者其它部分——我們可以透過觀察神經網路在面對改動後的方程後作出的反應來窺測它的執行方式。我們可能會真正瞭解其中的原因,而不僅僅只是方程的解。”

神經網路探索的另一個可能的方向,是自動定理生成器的開發。數學家們正越來越多地研究使用人工智慧來生成新的定理和證明的方法,儘管“這種技術還沒有取得很大進展,”Lample 說,“這是我們正在研究的東西。”

Charton 描述了他們的方法至少有兩種方法可以推動人工智慧定理的發現。首先,它可以作為一種數學家的助手,透過識別已知猜想的模式來幫助解決存在的問題;其次,這臺機器可能會生成一個列表,列出數學家們漏掉的可能可證明的結果。“我們相信,如果你能做整合,你就應該能做證明。”他說。

參考資料:
Ornes, S. (n.d.). Symbolic Mathematics Finally Yields to Neural Networks. Quanta Magazine. Retrieved May 27, 2020, from https://www.quantamagazine.org/symbolic-mathematics-finally-yields-to-neural-networks-20200520/
模式識別. (n.d.). 邊肇祺、張學工編著. 模式識別(第二版). 清華大學出版社, 2004. Retrieved May 27, 2020, from http://www.intsci.ac.cn/ai/pr.html

相關文章