(《麻省理工科技評論》中英文版APP現已上線,年度訂閱用戶每周直播科技英語講堂,還有科技英語學習社區哦~)
自從DeepMind的AlphaGo在圍棋賽場上一戰成名之后,人類對AI的恐懼就突然出現于世。但自那以后,這家Google旗下的人工智能公司并沒有停止前進的腳步,又推出了實力更強的AlphaGo Zero,而他們的遠期目標是打造出通用的人工智能機器。雖然這一目標尚顯遙遠,但根據本周DeepMind科學家發表的最新的論文來看,他們已經走在了正確的道路上。
※ 論文地址:https://arxiv.org/pdf/1712.01815.pdf
在這篇論文中,DeepMind詳細描述了AlphaGo Zero的“繼承者”—— AlphaZero(注:之前刷屏的是 AlphaGo Zero,它做到的是不依賴任何人類知識,3天超越李世乭版本)。AlphaZero 首先經過 8 個小時的對世界頂級圍棋棋譜的學習,就成功擊敗了與李世石對戰的 AlphaGo v18;又經過了 4 個小時的訓練,它又擊敗了世界頂級的國際象棋程序——Stockfish;緊接著,又是2個小時的訓練之后,世界上最強的日本將棋程序Elmo又敗在了它的手下。
看出來了嗎?AlphaZero 或許已經有了些許邁向棋類通用 AI 的跡象!和AlphaGo Zero相比,AlphaZero的主要變化在于:
1、AlphaGo Zero優化時假定兩種結果:輸、贏。AlphaZero則有三種:輸、贏、 僵持 。圍棋每一步都可以有一個輸贏,即誰的數量多,但是其他的很多棋在中間是沒有輸贏的,所以這樣的設計使得AlphaZero從圍棋跨向棋類領域。
2、AlphaZero能適應更為復雜的規則。圍棋規則相對簡單,規則具有旋轉和反射不變形和對稱性,所以AlphaZero的算法適應了將棋的規則意味著對于這樣規則多變復雜的棋類的有效性。
3、在所有棋類中使用相同的超參數,這是泛化的表現,期間不需要針對特定棋做改變。
4、AlphaGo Zero的最優策略由之前所有迭代的最佳選手生成。在每一輪的迭代中,新玩家都將和最佳選手比較。如果新玩家以55%的差距獲勝,那么他就會取代最選選手。而 AlphaZero 只保留一個網絡,并持續更新,而不必等待一個迭代結束,self-game的結果由這個網絡的最終參數生成。這就省去了ZeroGo中每一步的評估和對最佳選手的選擇。
從中我們也可以發現,AlphaZero 并不是針對某一種棋類被專門開發出來的,在不同的棋類游戲中,它只是被傳授一些基本的規則,但類似于更高級別的戰略策略則完全沒有,只憑借人工智能自己反復的從訓練和實戰中獲得,而這種訓練方法就是我們熟知的“強化學習”(reinforcement learning)。
圖丨強化學習入選《麻省理工科技評論》10大突破技術
使用強化學習這項技術并不是新鮮事,今年10月DeepMind的工程師過去也是使用相同的方法來打造AlphaGo Zero,不過,值得注意的是,新的AlphaZero是同一套軟件下“更通用的版本”,代表可以應用于更廣泛的任務,而且不需要預先準備好。在不到24小時,同一個電腦程式就可以教會自己玩三種復雜的棋盤游戲,而且是超越人類的水平,這無疑是AI世界的新創舉。
在這次研究中,研究團隊使用了5000個一代TPU來生成自我對弈棋譜,用另外64個二代TPU來進行神經網絡訓練。而在此前AlphaGo Zero的神經網絡訓練中使用的則是GPU。DeepMind 的目標一直是打造通用的AI機器,這項任務代表DeepMind又往目標邁進了一步,但是挑戰仍在前方,DeepMind CEO Demis Hassabis在今年初展示AlphaGo Zero時,他就希望未來的版本能夠幫助解決科學問題,像是設計新藥、發現新材料等。但是這些問題與玩棋盤游戲在根本上有很大的差異,還有許多問題得被解決才能找出正確的算法。
大概總結一下人類開發棋類AI 的思路,那就是:精心設計特征,調整參數,依賴強大的搜索算法——學習人類的全部經驗——不學習人類的經驗,自己學習——自己在一個廣泛的領域學習。不過,現在可以肯定的是,人工智能不再只是會下棋而已。至于對普通人類來說,我們只能說,DeepMind 論文可以不用發太快,上次的還沒消化完!
以下為論文摘要部分,僅供各位參考:
在計算機科學剛誕生的時候,巴貝奇、圖靈、香農和馮諾依曼這些先驅們就開始從硬件、算法和理論的角度研究國際象棋。從那時起,國際象棋就成了人工智能領域的重大挑戰。雖然最終人們讓程序在國際象棋棋盤上戰勝了人類,但是相關的算法并不通用:判斷每一步行棋優劣的評分算法由國際象棋專家手動調整定制,因此很難擴展到其他應用場景中。
相對國際象棋來說,源自日本的將棋遠更復雜。首先,它的棋盤更大;其次,棋子被吃后會換邊,并出現在棋盤的任何地方。直到最近,代表將棋程序最高水平的Elmo才打敗了人類冠軍棋手。將棋程序和之前的國際象棋類似,需要根據自身特點高度優化的alpha-beta搜索引擎,并根據將棋自身的特性進行很多修改。AlphaGo的神經網絡架構更適合圍棋。因為圍棋的規則變化較少。而象棋和將棋的規則變化較多,很多規則還要基于棋盤上的具體位置。例如象棋中的“兵”在第一步的時候可以前進一格或兩格,并在到達對方底線后升棋(即兵可以升級為車、馬、象或后)。
相對于用來下圍棋的AlphaGo Zero,AlphaZero的算法通用性更強。它去掉了一些需要手工調整的專業棋類知識,并用可以從頭進行增強學習的深度神經網絡取而代之。