原文作者:Matthew Hutson
機器學(xué)習(xí)技術(shù)能提高計算效率,可能會有更深遠的應(yīng)用。
倫敦 DeepMind 的研究人員證明,人工智能(AI)能為一類非?;镜?a class="external" href="http://www.ci5987.com/tag/shuxue" title="查看與 數(shù)學(xué) 相關(guān)的文章" target="_blank">數(shù)學(xué)計算找到捷徑。他們的做法是先把問題變成一個游戲,再使用機器學(xué)習(xí)技術(shù)—— DeepMind 的另一個 AI 曾用這種機器學(xué)習(xí)技術(shù)打敗了人類圍棋和象棋選手。

AlphaTensor 的設(shè)計目的是進行矩陣乘法,但同樣的方法也可以用來解決其他數(shù)學(xué)挑戰(zhàn)。來源:DeepMind
這個 AI 發(fā)現(xiàn)的算法在計算效率上打破了過去幾十年的紀錄,研究團隊的結(jié)果 10 月 5 日發(fā)表于《自然》 [ 1 ] ,或為某些領(lǐng)域打開了實現(xiàn)更快計算的新大門。
" 這也太厲害了," 林茨大學(xué)的計算機科學(xué)家 Martina Seidl 說,"這項研究證明了機器學(xué)習(xí)在破解數(shù)學(xué)難題上的潛力。"
用算法追算法
隨著機器學(xué)習(xí)的不斷進步,AI 已經(jīng)可以生成語言,預(yù)測蛋白質(zhì)形狀 [ 2 ] ,檢測黑客攻擊。而研究人員也在越來越多地利用這項技術(shù)反哺它自身——用機器學(xué)習(xí)來優(yōu)化它自己的底層算法。
DeepMind 開發(fā)的這個 AI 名為 AlphaTensor,其設(shè)計初衷是執(zhí)行被稱為矩陣乘法的運算。這種運算是指把網(wǎng)格化排列的數(shù)字——即矩陣——相乘。矩陣可以表示圖片的像素集、氣象模型中的空氣狀況,也可以表示人工神經(jīng)網(wǎng)絡(luò)的內(nèi)部機制。要把兩個矩陣相乘,數(shù)學(xué)家必須先把單個數(shù)字相乘,再通過特定方式把它們相加,產(chǎn)生一個新的矩陣。1969 年,數(shù)學(xué)家Volker Strassen 為兩個 2×2 矩陣的乘法找到了一種僅需 7 次乘法——而不是 8 次——的算法 [ 3 ] 。這激勵了其他研究者尋找更多類似技巧。
DeepMind 的做法是使用名為強化學(xué)習(xí)的機器學(xué)習(xí)方法。在強化學(xué)習(xí)中,一個 AI" 智能體 "(通常是一個神經(jīng)網(wǎng)絡(luò))會學(xué)習(xí)如何與環(huán)境交互,以達成一個多步目標,例如在桌面游戲中取勝。如果它做得好,該智能體就會得到強化——它的內(nèi)部參數(shù)會更新,以提高未來的成功率。
AlphaTensor 還使用了一種博弈方法,名為樹搜索。在樹搜索中,AI 在計劃下一步行動時,會探索不同分支的可能性會產(chǎn)生什么結(jié)果。在樹搜索中,為了決定優(yōu)先選擇哪條路徑,它會讓一個神經(jīng)網(wǎng)絡(luò)預(yù)測每一步最有希望成功的行動。當(dāng)智能體還在學(xué)習(xí)的時候,它會使用訓(xùn)練游戲的結(jié)果作為反饋來強化神經(jīng)網(wǎng)絡(luò),而這會進一步優(yōu)化樹搜索,取得更多成功,再從中學(xué)習(xí)。
每次博弈都是一個單人游戲,從一個三維張量(3D tensor)——數(shù)組——開始,其中的數(shù)字都填好了。AlphaTensor 需要用最少的步驟將所有數(shù)字變成 0,每一步都要從一組可行的行動中選擇。每一步都代表一次計算,該計算的逆轉(zhuǎn)相當(dāng)于將前兩個矩陣中的數(shù)字結(jié)合起來產(chǎn)生輸出矩陣中的一個數(shù)字。游戲很難,因為這個智能體的每一步可能都要從幾萬億種行動中選擇。" 如何為算法發(fā)現(xiàn)構(gòu)造盤面空間是非常精密的," 論文的作者之一、DeepMind 的計算機科學(xué)家 Hussein Fawzi 在一場新聞發(fā)布會上說,但 " 更難的是如何在這個空間中尋路 "。
為了給 AlphaTensor 的訓(xùn)練助一把力,開發(fā)人員給它展示了一些成功的游戲案例,這樣它就不需要從零開始了。由于行動的順序無關(guān)緊要,當(dāng)它找到一組成功的行動序列后,開發(fā)人員就會把行動序列重新打亂再交給它當(dāng)作學(xué)習(xí)范例。
高效運算
開發(fā)團隊在最大 5×5 的矩陣上測試了該系統(tǒng)。在很多情況下,AlphaTensor 重新發(fā)現(xiàn)了 Strassen 等數(shù)學(xué)家已經(jīng)找到的捷徑,但它也發(fā)現(xiàn)了一些 " 新大陸 "。例如,在將 4×5 和 5×5 的矩陣相乘時,過去最好的算法需要 80 次乘法,而 AlphaTensor 發(fā)現(xiàn)的算法只需要 76 次。
"它在玩這些游戲時有著驚人的直覺。"DeepMind 的計算機科學(xué)家 Pushmeet Kohli 在新聞發(fā)布會上說道。Fawzi 告訴《自然》,"AlphaTensor 并沒有人類關(guān)于矩陣乘法的直覺 ",所以 " 從某種意義上說,它需要從頭開始構(gòu)建自己的知識體系 "。
在解更大的矩陣乘法時,開發(fā)團隊的方法是先做出將問題拆解成更小問題的元算法。在把 11×12 和 12×12 的矩陣相乘時,他們的算法能將乘法次數(shù)從 1022 次減少到 990 次。
AlphaTensor 還能根據(jù)特定硬件優(yōu)化矩陣乘法。團隊在兩個不同的處理器上訓(xùn)練了該智能體,不僅在它執(zhí)行更少運算時予以強化,在它縮短執(zhí)行時間時也會得到強化。很多時候,這個 AI 的矩陣乘法比之前的算法快了好幾個百分點。有些情況下,一個處理器上最快的算法在另一個處理器上就不是最快的了。
開發(fā)團隊表示,同樣的思路也可能應(yīng)用在其他類型的數(shù)學(xué)運算中,例如將復(fù)雜的波或其他數(shù)學(xué)對象拆解成更簡單的組合。" 這一發(fā)現(xiàn)倘若能得到實際應(yīng)用,就太令人激動了," 麻省理工大學(xué)的計算機科學(xué)家 Virginia Vassilevska Williams 說," 能強化性能就能優(yōu)化很多應(yīng)用。"
美國維克森林大學(xué)的計算機科學(xué)家 Grey Ballard 看到了未來人機合作的潛力。" 我們或許能用這種計算方式向前再邁一小步," 他說," 但我更期待看到理論學(xué)家開始分析他們找到的新算法,尋找線索,從而實現(xiàn)下一個突破。"
原文地址:http://www.myzaker.com/article/63576a2eb15ec045f94ada5c
轉(zhuǎn)載請注明:DeepMind開發(fā)出能讓數(shù)學(xué)計算更快的AlphaTensor | 快導(dǎo)航網(wǎng)