每日最新頭條.有趣資訊

DeepMind給AI出了200萬道數學題,結果不如計算機

計算栗 郭一璞 發自 凹非寺

量子位 報導 | 公眾號 QbitAI

人生何處不數學?

這是越野車上的口算題。

這是被小朋友玩壞的應用題。

額,這是別人家的奧數題。

羅馬尼亞數學大師賽,中國隊全軍覆沒的一題

不過,現在是9102年了,幾乎每天都有“AI超越人類”的新聞。所以,把我們中學時候寫過的那些數學作業,扔給神經網絡,它們做得出來麽?

地球的另一個角落,DeepMind讀懂了你的心,給神經網絡們出了一套數學題,200萬道。數據集已經放出來了。

算術,代數,概率論,微積分……不管是算式,還是人類語言描述的題目,只要能用文本寫出來。

比如,這道排列組合 (中譯版) :

問:從這串字母qqqkkklkqkkk裡面,不放回地取三個出來,求取出qql的概率。

答:1/110。

再比如,這道複合函數:

問:求g(h(f(x))), f(x) = 2x + 3, g(x) = 7x ? 4, h(x) = ?5x ? 8。

答:?70x ? 165

都是AI的數學考題了。

消息一出,人類紛紛歡呼了起來:天道好輪回,蒼天饒過誰。

200萬道,都有什麽題型

為什麽突然想知道AI的數學好不好?

DeepMind說,AI和人類學數學的方法不一樣。

我們主要是靠推理、學習、利用法則和運算符號,而AI依賴的是經驗和證據。

舉個耳熟能詳的栗子,機器學習面試梗。

考官:你的強項是什麽?

我:我是機器學習專家。

考官:9+10得多少?

我:3。

考官:差太遠了,得19。

我:16。

考官:錯了,是19。

我:18。

考官:不對,19。

我:19。

考官:錄取你了。

AI的答案,是歸納出來的答案。

DeepMind覺得,沒有人類的推理能力,AI學數學會很困難。可數學領域,對神經網絡架構的研究來說,又很重要。

所以團隊想要看看,用歸納來學數學,究竟怎麽樣。

那考試範圍是什麽?

最初的樣本,是16歲以下 (大概是英國) 公立學校的數學課程。

團隊把考綱擴展了一下,一共包括這幾個方面:

一是代數,比如求解二元一次方程組,多項式求根,以及求數列的通項。

二是算術,比如四則運算,計算有特定順序的 (比如帶括號的) 的算式,把帶根號的表達式簡化一下之類的。

三是微積分和多項式求導。

四是比較,判斷數的大小,從一列數裡面找出和某個數最接近的數等等。

五是測量,比如在不同的長度部門之間轉換,計算時間間隔之類的。

六是數字,找約數,四舍五入,整數的數位,因式分解,質數合數等等。

七是多項式運算,合並同類項等等。

八是概率,比如在一堆紅白藍色的球裡面,選出紅紅白的概率。

200萬題庫是用剛才說的16歲以下教材樣本,拿算法生成的。

所以,以上各類問題,是可以有機組合到一起的。這樣就有趣了,因為許多數學法則,也是用各種概念合成的。

還是剛才的栗子,複合函數和求導,合在一起,就是複合函數求導。高中學過的,你還記得麽:

[f(g(x))]’=f’(g(x))g’(x)

先求外面這一層,再求裡面這一層,乘到一起就可以了。

坐等AI的答題結果。

都有什麽選手

DeepMind舉辦的考試中,有兩位考生,一位是循環神經網絡 (RNN) ,另一位是Transformer

RNN一方派出的是LSTM(長短期記憶) ,有兩個模型參加了考試。

第一個比較簡單,直接把問題喂給LSTM,一次喂一個字元,模型就輸出一個字元。

第二個複雜一些 (如下圖) ,是帶有注意力機制的編碼器+解碼器。這個模型在如今的機器翻譯裡面很常用:它不一定要按照字元輸入的順序來理解來計算,比如8/(1+3) ,就要先算1+3。

第二位考生,則是Transformer模型。作為一種seq2seq模型,它在機器翻譯裡的表現很好。

先來看一下它的結構:

有一個編碼器,可以把數學題矢量序列轉換成一個長度相同的序列;還有一個解碼器,生成預測的答案。

考試結果怎麽樣

相比LSTM,Transformer模型要更勝一籌,兩者有差不多數量的參數。

兩個網絡都沒有進行太多“算法推理”,但Transformer模型比LSTM架構更適合學數學:

1、用同樣多的參數,可以做更多的計算;

2、具有更淺的架構,更好的梯度傳播;

3、有順序內部記憶體,可以更方便的設置數字序列等數學對象。

對AI來說,最簡單的數學題是處理小數、整數,以及比較大小,還有不同模塊組成的問題,比如:

已知k(c) = -611*c + 2188857,k(-103)! = 2251790是否正確?(否)

或者這種:

將-139/4, 40.8, -555, 607從小到大排列。

最難的數學題則是偏理論一些的題目,比如判斷一個數字是否為素數,以及因式分解。

不過,Transformer模型依然能給出看起來有點靠譜的答案。

比如,把235232673分解為幾個素數的成績,它的答案是3,11,13,19,23,1487,正確的答案應該是3,13,19,317453。

雖然沒答對,但是看起來長得很像呀。

另外,讓Transformer模型直接算數,會發現,如果隻讓它算加減法,或者隻算乘除法,它的準確率大概在90%,但是如果把加減乘除混合起來放到一道題裡,它的準確率就只有50%了。

還真的不如計算機呀!

這證明,AI在算數學題的時候,完全靠歸納總結,並沒有使用代數技能。

手裡有的計算機,都不知道用,真是個老實人。

現在,你可以出去吹牛:

我數學比AI都好。

One More Thing

很遺憾,以目前的結果,AI是不能替我們去考高數了。

不過,這項研究本身就不是在幫你考高數呀,DeepMind作為一個能造出AlphaGo的公司,應該理解不了學渣的痛苦。

搞懂了「AI答數學題,全靠歸納總結」,DeepMind就可以把相關原理拓展到其他更豐富的領域,那些需要歸納總結的問題,或許可以靠AI來解決了。

要不,下次試試讓AI去答文科的主觀題?

傳送門

論文

Analysing Mathematical Reasoning Abilities of Neural Models

David Saxton, Edward Grefenstette, Felix Hill, Pushmeet Kohli

https://arxiv.org/abs/1904.01557

數據集

https://github.com/deepmind/mathematics_dataset

量子位AI+系列沙龍--智慧城市

加入社群

量子位AI社群開始招募啦,量子位社群分:AI討論群、AI+行業群、AI技術群;

歡迎對AI感興趣的同學,在量子位公眾號(QbitAI)對話界面回復關鍵字“微信群”,獲取入群方式。(技術群與AI+行業群需經過審核,審核較嚴,敬請諒解)

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復“招聘”兩個字。

喜歡就點這裡吧 !

獲得更多的PTT最新消息
按讚加入粉絲團