天天看點

如何讓AI了解數學?Facebook神經網絡通過“語言翻譯”求解數學難題解決數學問題的新途徑——語言翻譯

雲栖号資訊:【 點選檢視更多行業資訊

在這裡您可以找到不同行業的第一手的上雲資訊,還在等什麼,快來!

近年來,随着 AI 的崛起,神經網絡一詞也不斷出現在人們的視線中。事實上,神經網絡并不是什麼新興詞彙。

早在 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

【雲栖号線上課堂】每天都有産品技術專家分享!

課程位址:

https://yqh.aliyun.com/live

立即加入社群,與專家面對面,及時了解課程最新動态!

【雲栖号線上課堂 社群】

https://c.tb.cn/F3.Z8gvnK

原文釋出時間:2020-07-01

本文作者:曹绮桐

本文來自:“

學術頭條

”,了解相關資訊可以關注“

繼續閱讀