AlphaGo 2.0 與其 1.0 相比有哪些提升?
包括技術的角度,布局思路的角度等~
謝邀。Deepmind 透露將在賽後發表論文公布 AlphaGo 2.0(下面稱為 Master)的細節,在此我結合目前公布的信息做一些預測。先看黃博士的朋友圈爆料:
1. 這是意想之中,40 層當然會是殘差網路。比較令人好奇的是是否是純 CNN,還是會結合RNN/LSTM 處理某些情況(如打劫),因為之前看絕藝的視頻截圖好像有用到。
2. 比 v18 強了三子,確實符合 Master 今年初的表現:
不過這裡有個蠻有趣的事情,就是在上面看和李世石對弈的 v18 的評分是 3750 左右(和柯潔的 3620 分接近,略強一點,對柯潔的勝率會是 68%。這個評分感覺比較準確。)。
但 Deepmind 從前是以為 v18 的評分是已經達到 4500 的:
這說明機器自我對弈的評分確實會嚴重高估自己。Master 這次自我評分 4800,那麼真實評分應該是多少?不妨假設也要減去 4500-3750=750,於是會在 4800-750=4050 分左右。那麼柯潔的勝率是.... 7.8%,可能比大家想像中要高一點?
不如我們換個思路,再算精確一點。v18 對 v13 時,v18 和 v13 表現出來的差異是 4500-3100=1400 ,實際更準確的差異是 3750-2850=900。那麼,這次 Master 對 v18 表現出來的差異是 4800-3750=1050,實際更準確的差異可能是 1050/1400*900=675,也就是 Master 的更準確的評分是 3750+675=4425 分,那麼柯潔的勝率是... 1%。這個可能比較符合目前的實際情況。
此外,這次用的是單TPU版本,目前不清楚 4800 分是單機的評分還是分散式的評分。
4. 自我對弈的細節,我們要等到 DeepMind 的論文出來才知道。在此做一些猜測:
v13 的思路是 Policy =&> RL Policy =&> Value。
v18 和 Master 的思路目前沒有公布,但是想必會加入 Value =&> Policy 和 Policy =&> Value 的循環。
此外,很可能還有 Policy + Value =&> MCTS =&> Value =&> Policy =&> ... 的循環。就是用網路去學習 MCTS 的結果。最終甚至有可能擺脫 Policy,只剩下 Value。
最後,神經網路有盲點問題,我在從前的文章中寫過,並且預計 DeepMind 會加入 Adversarial 學習,就是做一個網路來專門抓網路的盲點。後來 DeepMind 也提到過確實加入了類似的機制。
所謂盲點,就是會讓 MCTS 的勝率預計產生大幅波動的點。目前 Leela 等程序已經很強,不過大家都發現神經網路有時候會對於極其簡單的棋視而不見,這需要專門處理。一個有趣的辦法也許會是用類似 GAN 的思路。
如果希望偷懶,甚至可以手動加入"必須考慮的點"(這估計是絕藝用過的辦法)。例如,某些緊氣的點是網路最容易忽略的。然後進行 MCTS,然後讓網路去學習。
我們也可以生成大量有趣的局面,比如生成大量"死活題",進行 MCTS,然後讓網路去學習。
5. 目前 DeepMind 表示仍然沒有完全脫離用於初始化的人類棋譜輸入,只是需要的棋譜數量可以更少。不過,由於 MCTS 可以保證收斂到圍棋之神,因此這個目標在理論上只是一個時間問題,唯一限制的因素就是 DeepMind 投入的經費了。
總之,讓我們期待 DeepMind 的論文。對於以上提到的一些話題感興趣的朋友,歡迎關注我的專欄: 技術備忘錄 - 知乎專欄 以及我之前在 AlphaGo 話題下的回答。
Aja Huang朋友圈的爆料和5月24日David Silver透露的消息是吻合的:
1. Master使用40層的神經網路。
2. Master比v18強了三子(沒有貼目)。
3. 這次比賽的AlphaGo版本即是Master(實際上比Master稍強)。
4. Master是大量自我對弈的成果,一代接一代產生更強的神經網路。
我想強調,AlphaGo-Master版本在訓練初期依然需要人類棋譜,但是需要的數量少很多,進化更多地依賴自我對弈,更多依賴增強學習的效果。
另外,在網上對弈60局全勝的Master的確是Demis以前在演講後QA透露過的,Master只需使用一個TPU卡。但是,我暫時沒看到這次和柯潔比賽的AlphaGo使用多少個TPU,需要更確實的消息材料來證實。David Silver在5月23日賽後發布會回答問題時說的是Single Machine with TPUs(複數)這樣的說法,如果聽譯版本的文本如果沒錯,是多個TPU,但究竟是多少個,我覺得還不確定。目前存在兩種報道,一種說這次比賽用的是單機+4個TPU,另一種說是單機+10個TPU,我綜合了各方的說法,目前判斷是單機+4個TPU比較可信。希望能找到視頻聽原話,媒體翻譯不是很可信。
按照Demis的說法一個月之後應該就發布新的paper(或articles on Nature?),更詳細準確的技術解讀都可以留待一個月後。
附上昨天5月23日賽後發布會上的QA一段,太多人不看論文,不看官方說法,太多自己的「理解」(誤解)了。
Q: 這次的AlphaGo是純凈版的AlphaGo嗎?也就是說,它是否是完全不依賴人類大師的棋譜來自我學習的? Demis Hassabis: I』m not sure if I understand the question correctly, but… You know… obviously the version… AlphaGo initially learns from human games, and then…most of its learning now is from its own play against itself. So…but of course to truly test what it knows, we have to play against human experts, because we don"t know playing the game against itself is not going to expose its weaknesses, because it will obviously fix those during the self-play. So we really have to test it against the world』s best players.
David Silver: Perhaps I could just add to that. One of the innovations of AlphaGo-Master, is that it actually relies much more on learning from itself. So in this version, AlphaGo has actually become its own teacher, learning from moves which are taken from examples of its own searches, that relies much less actually on human data than previous versions. And one of our goals in doing so is to make it more and more general so that its principal can be applied to other domains beyond Go.
待續
繼續更新, 來自Sliver的分享的個人理解:
AlphaGo找到了某種"自我進化"機制, 即從已有的模型出發, 通過DRL和其他輔助演算法, 對模型進行學習和優化, 發展出更優的模型. 不斷重複和進化.
在AlphaGo主要用的DRL演算法中, 價值函數和策略函數是相對獨立又相互依賴的, 而Sliver提到, 在訓練的時候, 用價值函數來優化策略函數, 又用策略函數來優化價值函數, 利用各種輔助的演算法使得上述過程的迭代中, 不斷提升雙方. 這個有點像, 周伯通在桃花島上悟出的左右互搏, 從而使得模型可以自我迭代從而進化.
從訓練的角度, 比如羽毛球, 在訓練的過程中需要有與之匹配的高手做陪練, 從而使得林丹叱吒風雲羽壇多年, 而與之伯仲之間的李宗偉由於沒有匹配的高手做陪練, 則需要不斷的參加比賽而來提升自己. 又比如虛擬的武俠世界, 周伯通的左右互搏, 使得即時被黃藥師關在山洞中只有一人依然可以不斷的訓練自己的武功, 並悟出空明拳(在當時也屬於頂尖武功).
AlphaGo也一樣, 此前, 是通過人類歷史上的棋譜, 訓練出第一個版本; 然後匿名的方式參與各種比賽(網路上), 不斷進化自己; 接著與樊輝的比賽, 進入頂尖高手行列; 接著與李世石的PK, 達到超一流的高手. 如果就此止步不前, 也許與柯潔的PK也在兩可之間. 然後, AlphaGo悟出左右互搏, 從此向"圍棋之神"靠近.
其實, 從去年的李世石PK AlphaGo之後, 圍棋界自身的進步也不小. 很多時候, 棋理的進步在於思想的進步, AlphaGo的出現衝擊這已有的棋理, 讓人不斷思考而進化. 相信此時的柯潔相比一年前也進步不少, 如果以此時的柯潔與一年前的版本進行對弈, 勝負可能在兩可之間.
來自DeepMind官方的內容, 更多細節等待論文, 屆時再來解讀.
1. DeepMind對於「機機大戰」沒有興趣——要衡量 AlphaGo 的實力,必須讓它跟人類對弈。這次比賽的目的也是為了發現AlphaGo的更多弱點。李世石上次贏了AlphaGo,他們回去以後就對架構和系統做了升級,希望能彌補這種「knowledge gap」。當時的弱點或許被「Fix」了,但AlphaGo還有更多弱點,這是AlphaGo自己(通過自我對弈)和他們這些開發人員都不知道的。
2. AlphaGo不會控制輸贏差距,它只想贏。AlphaGo總是盡量將贏棋的可能性最大化而不是將贏的目數最大化。它每次面臨決策的時候,總是會選擇它自己認為更穩妥、風險更小的路線。AlphaGo在爭取贏棋時的一些行為,它可能會放棄一些目數以求降低它感知到的風險,即使這個風險非常小。
3. 沒有完全棄用人類棋譜。當然在最初的版本中,AlphaGo從人類棋譜中學習,後來到現在它大部分的學習材料都來自於自我對弈的棋譜。新版本AlphaGo的一大創新就是它更多地依靠自我學習。在這個版本中,AlphaGo實際上成為了它自己的老師,從它自己的搜索中獲得的下法中學習,和上一個版本相比大幅減少了對人類棋譜的依賴。
4.AlphaGo這次強大的地方在於演算法。去年和李世石對戰後,他們提出了更強大的演算法,而且發現演算法比數據量更重要,這也是為什麼Master的訓練速度是初代AlphaGo的十分之一。這次AlphaGo的硬體支撐是統一通過谷歌雲來的,跟上次對戰李世石的時候不同。
5. AlphaGo實際上是在谷歌雲端的單一一台機器上運行的,建立於TPU上。這和去年使用的谷歌雲端多台機器分散式結構有很大區別。因為現在有了一個運行起來更好、更簡單的更加強大、高效的演算法,它能夠用十分之一的運算力來得到更強大甚至更好的結果。
來源: 【柯潔戰敗解密】AlphaGo Master最新架構和演算法,谷歌雲與TPU拆解
下面是原始回答
目前對於新版的AlphaGo的資料太少, 僅知道的一點說是摒棄了人類棋譜的學習. 在沒有更多資料以前, 假設AlphaGo是從圍棋規則出發, 沒有用到人類歷史上已有的棋譜進行訓練, 而是通過DRL進行訓練形成的模型. 從這個假設出發, 那麼, Google和DeepMind可能找到了一些新的DNN和DRL的演算法, 可以在合理的時間和計算量的情況下, 搞定圍棋的搜索空間. 如果確實這樣, 那麼AlphaGo差不多就是觸摸到了所謂的"圍棋之神"這個境界了. 從另一個角度做比較的話, 就是象棋AI, 基本上在象棋的規則下, 暴力搜索了所有的可能結果, 選擇出最優的步驟. 而AlphaGo在圍棋的規則下, 接近或者達到了這種情況.
在人類歷史以來的各種完全信息博弈的遊戲中, 可能是搜索空間最大的一個(或者之一). 完全信息博弈是指對弈的雙方都知道所有參與者的信息(作為對比, 可以看看麻將, 則不是完全信息博弈, 屬於不完全信息博弈, 每個參與者, 並不完全知道其他參與者的所有信息, 對於麻將來說, 就是不知道其他三方的持有的牌的). 完全信息博弈的最優化問題, 如果不考慮計算量的話, 理論上都可以暴力搜索整個空間找到最優解. 但由於計算力的問題, 暴力搜索可能耗費時間很長, 比如圍棋如果暴力搜索找到一步棋的結果要幾百年, 那對於人來來說就沒有任何意義, 而這類問題的解決都是通過各種方法來儘可能找到最優解(或者局部最優解). 而AlphaGo則在這一點上有所突破. 這一戰本身對於圍棋界來說可能意義重大, 對於AI, 我則是希望在接下來的論文中能夠看到, 在理論或者工程上, DeepMind能夠給出一個驚喜.
DL和DRL通過幾十年的發展上, 在最近幾年達到臨界點之後, 大量基於這些技術的弱AI蓬勃發展, 為人類社會做出巨大的貢獻. AlphaGo是這裡面的一環, 未來則更加值得期待. 對於中國, 希望藉助科技的進步能夠讓藍天, 白雲, 青山, 綠水再次回到人們每一天的視野中. 對於人類, 期待更加美好的生活, 還有, 走向真正的星辰大海(ps, 最近戴森球的事, 又可以關注一下了).
謝謝鐵男邀請。
2.0版布局上,我覺得進步不是革命性的,依據david silver的討論,2。0更多改進的可能是戰鬥上的漏洞。布局上應該也有進步,但相對之前的1.0出現的衝擊,不可同日而語。不過2.0的進步還是明顯的。它對1.0的優勢已經巨大,不過這種優勢是必然的,因為屬於自己左右互搏,下棋網路2.0對網路1.0的優勢是必然的,但這種優勢在全局優化的視野下可能只是一個區域的最優點。
技術上,前面有人提到了,他們選用了更深層的網路,並且提高了效率,這屬於deep learning方面的技術優化,並不一定直接帶來圍棋棋力上的革命。當然RL還是帶來了可見的進步。我猜他們團隊也對小的技術上做了不少精彩的補全。可以在第二盤看到,它的戰鬥力可能進步了,雖然還是有缺陷。這種缺陷屬於在雙方非常接近而又相當複雜的條件下才出現,而這種局面可以學習的樣本不一定太多,所以這個缺點一時半會還不好補,當然可以設計一個新的訓練策略讓一方的走子網路更大程度的去做戰鬥。
總體,2。0是技術性的變革,帶來實實在在的進步。但沒有革命性,這種革命性可能需要人類的逼近才可以再次出現。
柯潔和 AlphaGo 的第二盤棋值得關注之處有哪些?
到目前為止新聞報道都沒明確說柯潔對戰的阿狗是不是2.0版本。只能師母已呆。
謝 @鐵男 的邀請,很意外……。我只是個業餘段位都沒有的棋渣,也不懂AI技術,我就勉強回答一下吧。答的不對歡迎大家指正。
首先,我不太確定AlphaGo沒有 1.0 和 2.0 的說法,目前他和人類對弈過的三個版本如下:
2015年10月戰勝樊麾二段的AlphaGo版本 為 V13
2016年3月戰勝李世石的版本 為 V18
2016-2017在網路快棋60:0戰勝人類高手群體的版本為 V25,V25對V18沒輸過一盤。
2017.5.23 AlphaGo的性能只可能在V25之上
本外行認為:
樊 麾——野豬
李世石——跳羚
柯 潔——獵豹(生物界最快)
V13——原始蒸汽汽車
V18——高級蒸汽汽車
V25——內燃機汽車
2017.5.23——渦輪增壓內燃機汽車
==========================================
第一年,汽車跑贏了野豬,大家都以為是野豬太弱。生物還是能跑贏汽車的(其實野豬比絕大部分生物強了)
第二年,汽車跑贏了跳羚,跳羚只勉強贏了一次。大家認為生物大勢已去了。獵豹說我可以和它一戰。
第三年,汽車毫無懸念碾壓了獵豹,不少人跳出來嘲笑獵豹不行。
所有人都認為柯潔肯定下不贏新版AlphaGo的,
但是從第一局來看,柯潔比我想像中要強啊,真的強。
主要的變化是演算法,能夠以十分之一的算力來實現數倍於之前的效果,AlphaGo在演算法模型的提升值得期待。但究竟如何提升,還是要看論文,官方沒有公布細節之前,猜測都不靠譜。
硬體也有變化,看發布會說是單機版就夠了,這次不用聯網了,可能也和單個TPU性能提升有關。給大家看下今天說AlphaGo2.0背後的TPU,谷歌5月17日在google IO上剛剛發布了最新版:
據說一個TPU是 180 Tflops,而nvidia volta是 120 Tflops,貌似這個更厲害一點。但是不知功耗如何,真正有所感受還是用到再說。
發布會原文:
"...So Alphago Master is a new version of Alphago, and we worked very hard to improve the fundemental algorithms that"s used in AlphaGo. In fact, it comes out the algorithm often matters more than the amount of data, or the amount of computing power that goes into it. And if you get those algorithms right and make them general and powerful enough, then they can really progress very rapidly.
So in fact (in) AlphaGo Master actually uses less ten times less computation" and is trained in weekds rather than months, compared to the version that played against Lee Sedol last year. So it is a different version, and its self-play performance is considerably stronger, and we are here to find out, indeed, it is the strongest. It seems to be in self-play that its weaknesses can be exposed (疑)...."
----David Silver,第一局發布會
從目前發布的信息來看,可以總結:
1. AlphaGo演算法的效率和有效性有了一個大的飛躍.
2. 現在以強化學習為核心(推測), 因此不再依賴於大數據
3. 新的演算法核心可以用十分之一的運算資源超越上次對戰李世石的效果
4. 因為不依賴人類對局數據,所以棋風更加自成一體
5. 因為更依賴自我對局, 所以泛化/推廣該演算法到其他領域應該會更有意義.
另: Demis Hassabis 表示會在接下來幾個月內發表新版AlphaGo的技術細節. 還有,在24日GMT+3 17:30 好像有一場技術發布會, 也就是北京時間22:30. 網上聽說的, 可靠性未知
雖然假新聞有毒,查資料很辛苦,但連新聞都不看是怎麼回事?
1月11日,Deep Mind公司CEO哈薩比斯在出席德國慕尼黑舉行的DLD(數字、生活、設計)創新大會,宣布將推出真正2.0版本的AlphaGo,特點是擯棄人類棋譜,只靠深度學習的方式成長。一些奇怪的回答是怎麼出現的……個人認為,應該是進一步優化了演算法、提高了運行速度,滅了幾個bug、提升了穩定性。輸給李世石那局事實上之前是領先的,出了bug才導致自己把自己走死。團隊可能採用簡單的外部邏輯複核來防止這種無厘頭的bug再次發生;也可能深挖進去,從根本上找到發生bug的點,從內部修復了演算法缺陷。
從棋風上來看,升級後的版本很少進行大刀闊斧的廝殺,有點不求有功但求無過的意思,與之前棋譜中滄海桑田的變化完全不同。升級後的版本勝率達到了100%,這大概解釋了什麼叫大道至簡吧。
不知道誰能把內部的Changelog放出來~
單機版,基於TPU,十分之一 1.0版本計算能力。
新的論文還沒出來,但我從圍棋角度看,我覺得 master 版本和這次柯潔版本的 AlphaGo ,不像用了蒙特卡羅樹搜索。
如果用神經網路剪枝把明顯不可行的位置剪掉的話,實際上需要搜索的局面甚至可以比象棋還要少。那麼直接用alpha-beta搜索就行了。
圍棋的官子並不是運算量特別大的問題。master贏棋下會開始送,我覺得單純就是把剪枝後所有看上去合理的局面都搜索完了,在這些局面里,怎麼走都是贏。
新版本的Alpahgo 的進步主要靠自身的互博訓練.相比老版本對人類棋譜的依賴性更弱
也就是會說現在的Alpahgo 行棋更自由
因為Alpahgo的自我對弈訓練環境都是5秒一步快棋,所以現在的Alpahgo 更適應於快棋,其在快棋上的表現將會大大超出老版本的水平.
同時由於脫離了人類棋譜的訓練.Alpahgo在慢棋的對弈中,將有可能會存在更多更嚴重的漏洞.我一直認為Alpahgo的演算法自身決定了,它不可能準確的排除掉其在對弈中暴露出的漏洞.相反隨著訓練的進一步深入Alpahgo還有可能產生更加致命的漏洞.
在5月23號 Alpahgo 將會驚訝的發現原來自己的60連勝只是人類和自己開的一個玩笑
瀉藥
好久沒關注了,等文章學好了再填這個坑。
不過AlphaGo是有大局觀的,畢竟人家只看評分大小而已
單機,讓三子。
據說,最新版本沒有學習人類之前的棋譜,而是全程自我對練,那麼這樣練出來的棋可能和人類的棋理棋風大大不同。
1.0是和歐洲的樊輝pk,2.0和李世石pk?我沒見和樊下的,全程看了和李世石的五番棋。阿法狗和李世石下的時候,算路精深,好多手一時半會都看不懂為什麼,要好一會才看明白。總體來講,有一種全程壓制的感覺。具體還是問一問@高飛龍先生,高先生的水平才是真大神,我們也就看個熱鬧。
我不清楚有什麼提升,但我敢肯定它的提升幅度會越來越小,也許3.0就是它的極限了,它的能力是靠海量的數據訓練出來的,能推算的步數越多則正確性越高,但圍棋是指數爆炸的,它每多推算一步就要增加指數倍的數據,很快就會到達極限,即使耗費地球的壽命也無法讓它多推算一步,人力有時而窮,電腦之力也有時而窮,即使電腦的計算速度令人類望塵莫及,但面對圍棋的指數爆炸也只能徒呼奈何。
推薦閱讀:
※顯卡、顯卡驅動、cuda 之間的關係是什麼?
※深度學習在AI實現方法上是否已經形成了壟斷,這是不是一種不好的狀態?
※深度學習在路徑規划上有哪些應用?
※如何看待 Nervana 被 Intel 收購?
TAG:人工智慧 | 機器學習 | 深度學習DeepLearning | AlphaGo | 強化學習ReinforcementLearning |