国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
[趙昊彤博士]AlphaGo是如何“思考”的,解讀AlphaGo的論文算法

作者:趙昊彤 國家電網(wǎng)國際發(fā)展有限公司,博士

二十年前我還是一名本科生的時候,就對計算機算法很感興趣。當時深藍戰(zhàn)勝了卡斯帕羅夫,大家都普遍會議論到圍棋,并且基本的觀點都一致,就是計算機雖然在國際象棋上戰(zhàn)勝了人類,但是離在圍棋上戰(zhàn)勝人類還有相當遙遠的距離。沒想到二十年后,我已經(jīng)可以借助先進的4G通訊技術(shù),實時收看AlphaGo在圍棋上擊敗人類的全過程,真的是感慨萬千。

雖然我不做科研很多年,但出于興趣還是將DeepMind團隊發(fā)表在Nature上的論文閱讀了一遍。之后發(fā)現(xiàn),很多圍棋愛好者、很多對AI感興趣的人雖然在網(wǎng)上發(fā)表了諸多議論,但是很少有真正了解AlphaGo是怎樣“思考”和下棋的。考慮到很多AI領域、深度學習領域的專家不屑于科普AlphaGo的“算法”,而更多的人又不愿意去啃那篇論文,干脆我就來拋磚引玉,將AlphaGo的“思考過程”和大家做個普及性分享,并談談自己針對未來AI和深度學習領域的認識。


一、AlphaGo“思考”的過程


考慮到我們?nèi)祟愓J識問題都愿意自頂向下,先看到全局再看局部。所以我先介紹一下AlphaGo“思考”的全過程。

形象地說,AlphaGo有四個思考用的“大腦”,也就是DeepMind團隊訓練出來的四個神經(jīng)網(wǎng)絡,用論文中的符號表示,就是Pπ、Pσ、Pρ和Vθ,為了方便起見,給它們起名為“快速走子網(wǎng)絡”、“專家訓練網(wǎng)絡”、“自我提升網(wǎng)絡”“價值判斷網(wǎng)絡”。前三個神經(jīng)網(wǎng)絡都以當前圍棋對弈局面為輸入,經(jīng)過計算后輸出可能的走子選擇和對應的概率,概率越大的點意味著神經(jīng)網(wǎng)絡更傾向于在那一點走子,這個概率是針對輸入局面下所有可能的走子方法而計算的,也就是每個可能的落子點都有一個概率,當然會有不少的點概率為0。第四個神經(jīng)網(wǎng)絡是進行價值判斷的,輸入一個對弈局面,它會計算得出這個局面下黑棋和白棋的勝率。

簡單的解釋一下前三個網(wǎng)絡的區(qū)別:“快速走子網(wǎng)絡”是一個比較低水平但是計算量也很小的神經(jīng)網(wǎng)絡;“專家訓練網(wǎng)絡”的參數(shù)都是通過職業(yè)棋手對弈的棋局訓練出來的,它的激活函數(shù)和具體的卷積核數(shù)量以及相應神經(jīng)元數(shù)量會與“快速走子網(wǎng)絡”有所不同,表現(xiàn)為計算量不同,水平也不同;“自我提升網(wǎng)絡”是在“專家訓練網(wǎng)絡”的基礎上,通過電腦自我對弈的大量棋局進行提升訓練后的網(wǎng)絡,理論上講水平更高,計算量與“專家訓練網(wǎng)絡”是一樣的,只是訓練出來的參數(shù)不同。

訓練好這四個神經(jīng)網(wǎng)絡之后,AlphaGo就可以開始與人對弈了。對弈過程中,AlphaGo的“思考”是通過蒙特卡洛博弈樹搜索和模擬來實現(xiàn)的。大致步驟如下:

(1)假設當前棋局狀態(tài)為St,對于每一種可選擇的走法a,選擇走a之后的棋局價值Q(St,a)與“專家訓練網(wǎng)絡”計算出的走a的概率P(St,a)之和最大的那種a,記為at。注意,這里面的Q(St,a)不是簡單的靠“價值判斷網(wǎng)絡”計算出來的,而是“價值判斷網(wǎng)絡”計算結(jié)果與蒙特卡洛模擬結(jié)果的加權(quán)平均;這里的P(St,a)也不是直接用“專家訓練網(wǎng)絡”計算出來的,而是正比于Pσ(St,a)/(1+N(St,a)),N(St,a)是(St,a)這個節(jié)點所經(jīng)過的搜索次數(shù),為了鼓勵搜索模擬,“專家訓練網(wǎng)絡”所得到的走子概率用搜索次數(shù)進行了衰減。

(2)按照(1)中的方法繼續(xù)搜索選擇下一級節(jié)點,直到搜索下去碰上一個葉子節(jié)點,也就是原來沒有再繼續(xù)展開的、沒有評估過的節(jié)點。

(3)將這個葉子節(jié)點SL展開,并用“價值判斷網(wǎng)絡”計算其價值Vθ(SL),然后用“快速走子網(wǎng)絡”在這個節(jié)點的基礎上進行多局自我對弈,根據(jù)多局對弈的勝負比率來估算勝率Z(SL)。最后使用Vθ(SL)和Z(SL)的加權(quán)平均來估算此節(jié)點的勝率。

(4)將估算結(jié)果反向更新到這次搜索途經(jīng)的全部節(jié)點,反向更新公式稍復雜,就不再列了,本來目的就是普及性介紹嘛。

(5)之后再從St開始,仍然按照(1)的規(guī)則重新搜索。


至于蒙卡搜索模擬到什么時候,取決于給AlphaGo多長的時間走一步棋,時間快到的時候,AlphaGo就停止搜索模擬,并以跟節(jié)點St下搜索途經(jīng)次數(shù)最多的節(jié)點(因為每次都是選最佳節(jié)點搜索模擬,所以搜索結(jié)束后就以途經(jīng)次數(shù)最多作為標準了)作為自己本步的著法。

以上就是AlphaGo思考的全過程,其實和人類很類似,有思考下一步著法的“大腦”,有判斷局面價值的“大腦”,然后再向后推斷若干步,確定自己的“走法”。


二、卷積神經(jīng)網(wǎng)絡(CNN)的極簡介紹


下面簡單介紹一下卷積神經(jīng)網(wǎng)絡。先說神經(jīng)網(wǎng)絡,就是模擬人類或者動物大腦,用若干個神經(jīng)元共同計算逼近某種復雜計算(函數(shù))的方法。其實任何一種價值判斷都可以理解為某種多元函數(shù),輸入若干數(shù)據(jù)(信息),輸出結(jié)論。數(shù)學上可以證明,使用神經(jīng)網(wǎng)絡(多層)可以無限逼近這些多元函數(shù)。

拿圍棋來講,假設每種局面下會有一種或幾種最理想的走法,那么就可以將局面作為輸入,理想走法作為輸出形成一類多元函數(shù)。理論上,神經(jīng)網(wǎng)絡可以無限逼近這個函數(shù)。由于圍棋局面可以看成一個19*19的圖像,而卷積神經(jīng)網(wǎng)絡(CNN)又是處理圖像比較理想的方法,所以DeepMind團隊就使用了CNN。

當然CNN為什么設置為13層的神經(jīng)網(wǎng)絡,每層的卷積核有幾個,激活函數(shù)是什么,使用什么樣的誤差傳遞函數(shù)來反向訓練這個神經(jīng)網(wǎng)絡,這些都需要嘗試,這才是DeepMind團隊最主要的成果,當然論文里面也不會詳細說了。

一個問題是,訓練最基礎的“專家訓練網(wǎng)絡”所使用的數(shù)據(jù)是大量職業(yè)棋手的棋局,但是沒有理由認為職業(yè)棋手的走法就是最佳走法,所以這種訓練實際上是用一種有誤差的數(shù)據(jù)進行的,當然訓練出來的神經(jīng)網(wǎng)絡也不會絕對理想。但是,如果AlphaGo真的在這種訓練下達到高水平,以后可以考慮使用高水平AlphaGo自我對弈的棋局重新訓練形成“專家訓練網(wǎng)絡”,也許效果會更好。


三、關于論文中的幾個有趣事實


(1)“快速走子網(wǎng)絡”計算一次需要2微秒,“專家訓練網(wǎng)絡”計算一次需要3毫秒。

(2)“快速走子網(wǎng)絡”與專家走法的匹配準確度為24.2%,“專家訓練網(wǎng)絡”則為57%。

(3)“自我提升網(wǎng)絡”和“專家訓練網(wǎng)絡”對弈勝率為80%。

(4)“價值判斷網(wǎng)絡”在使用職業(yè)棋手對局數(shù)據(jù)進行訓練時,發(fā)生了過度擬合的情況,訓練組偏差0.19而測試組達到0.37,說明泛化效果不好。為了解決這個問題,改用了“自我提升網(wǎng)絡”自我對弈3000萬局作為“價值判斷網(wǎng)絡”的訓練數(shù)據(jù),基本解決了過度擬合的問題。

(5)DeepMind團隊發(fā)現(xiàn),在蒙特卡洛樹搜索時,計算下一步走子概率使用“專家訓練網(wǎng)絡”效果要優(yōu)于使用“自我提升網(wǎng)絡”,雖然“自我提升網(wǎng)絡”與“專家訓練網(wǎng)絡”對弈時勝率高達80%。但是在訓練“價值判斷網(wǎng)絡”時,使用“自我提升網(wǎng)絡”自我對弈的棋局效果好于使用“專家訓練網(wǎng)絡”。

(6)計算上,多線程搜索使用CPU處理,策略和價值并行計算使用GPU處理。單機版的AlphaGo使用了40個線程、48個CPU和8個GPU。分布式版的AlphaGo使用了40個線程、1202個CPU和176個GPU。

(7)分布式版本對單機版的勝率為77%。


四、澄清一些觀點及個人思考


(1)AlphaGo有自己的“棋風”么?

從人類的角度看,某個固定版本的AlphaGo肯定會有自己的“棋風”,因為訓練好的神經(jīng)網(wǎng)絡參數(shù)就決定了它會如何“判斷”,蒙卡搜索算法又決定了它的“思考”過程,這些綜合在一起就形成了它的走棋風格。但是這種風格是在大量數(shù)據(jù)訓練后形成的,肯定與人類的風格很不一樣。它未必有系統(tǒng)的、前后一致的特點,它的風格更多體現(xiàn)在某種局面下會有怎樣的判斷傾向。當然,是否能夠被人類準確抓住不好說。


(2)AlphaGo在第四局“抽風”的bug好解決么?

個人認為不好解決。訓練形成的神經(jīng)網(wǎng)絡里面有大量的參數(shù),這些參數(shù)都不是程序員設定的,而是軟件自己學習形成的。如果這些參數(shù)不盡合理,在某些局面下會誤判,那么可能的解決辦法就是重新訓練或者加強訓練,絕不可能由哪個人直接修改某些參數(shù)來消除bug。嚴格的說,沒有哪個人敢隨意修改神經(jīng)網(wǎng)絡參數(shù),所以在與李世石這五局對局過程中,AlphaGo版本是沒有任何變化的。


(3)關于人工智能在深度學習技術(shù)下的可能發(fā)展?

首先,個人認為那種能夠威脅人類的AI還遠遠看不到希望,目前的AlphaGo是在“監(jiān)督”下學習,還算不上完全自我學習。即使不久的將來能自我學習了,也不過是針對圍棋,并不是萬能的“學者”。我覺得人類還沒必要擔心AI會威脅人類。

其次,AI這次在圍棋上戰(zhàn)勝人類頂尖高手,基本證明了所謂的“棋感”、“棋風”、“大局觀”等圍棋高手所談論的虛的能力,并不是人類獨有的,經(jīng)過訓練的神經(jīng)網(wǎng)絡也會有。所以,隨著技術(shù)的進步,我相信電腦也會能夠欣賞藝術(shù)(音樂、畫作、小說、笑話),能夠創(chuàng)作文學、藝術(shù)作品,能夠針對不同的情況形成自己的“情緒”。但是這些都不是人類害怕AI的理由,因為這些始終都是通過計算實現(xiàn)的,其實是我們?nèi)祟惪煽氐摹?/span>

未來的AI可以幫助人類搞科研、分析數(shù)據(jù)、協(xié)助醫(yī)療、創(chuàng)作詩歌、寫新聞報道等等,我相信這些都會是人類科技的進步,都會讓生活更美好。當然在享受這些美好的同時,也需要記住,世界上所有的事情都是雙刃劍,AI也可以用來騙人、作惡,這就需要善良的人類通過有效的管理措施和監(jiān)督措施,通過法律,禁止人們開展“壞”AI的研究。

來源:科學網(wǎng),原文鏈接點擊

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
AlphaGo外傳——機器學習與算法智能
“深度學習”這十年:52篇大神級論文再現(xiàn)AI榮與光
AlphaGo Zero 為啥能贏?用肉夾饃和比武就能解釋了 | 愛范兒
AI如何思考和學習:了解AlphaGo (高級)
終于有人說清AI、機器學習與深度學習的區(qū)別了!
AlphaGo重出江湖,又發(fā)了一篇Nature
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服