Alpha Go的故事
關于計算機下圍棋,許峰雄在2002年寫書時的判斷是:“它實在太難了,以至于在未來20年中可能得不到解決。”這句話里“解決”的含義應該就是戰勝圍棋世界冠軍,然而這個預言在2016年提前6年被強大的Alpha Go團隊打破。
Alpha Go是一款圍棋人工智能程序,由谷歌旗下Deep Mind公司開發。Deep Mind公司創始人戴密斯·哈薩比斯(Demis Hassabis)生于1976年,在英國倫敦長大,父親是希臘族塞浦路斯人,母親是新加坡華人。他從小就是國際象棋和計算機雙料神童,4歲開始下國際象棋,8歲自學編程,13歲獲得國際象棋大師稱號。2010年,哈薩比斯創立專注于人工智能研發的Deep Mind公司,目標是建立強大的通用學習算法,將技術應用于解決現實世界的難題。
Alpha Go的開發團隊核心包括大衛·席爾瓦(David Silver)、黃士杰(Aja Huang)、克里斯·麥迪森(Chris Maddison)、亞瑟·貴茨(Arthur Guez)等人,如圖2.5所示。Alpha Go圍棋程序應用了近年來在人工智能領域有重大突破的深度學習(Deep Learning)和強化學習(Reinforcement Learning)等技術,加上谷歌強大的并行計算實力,可以說其“智能”水平已經遠遠超過當年的“深藍”。

圖2.5 Alpha Go開發團隊,左四為戴密斯·哈薩比斯,左五為大衛·席爾瓦,左六為黃士杰
根據Deep Mind公司在《自然》雜志上發表的文章,Alpha Go這個系統主要由以下幾個部分組成。
(1)策略網絡(Policy Network),給定當前局面,預測下一步的走棋。對棋盤上的每個可下的點都給出了一個估計的分數,也就是圍棋高手下到這個點的概率。評估一步棋的時間僅需2ms左右。
(2)快速走子(Fast rollout),目標和策略網絡一樣,但在適當犧牲走棋質量的條件下,速度要比策略網絡快1000倍。下一步棋的時間僅需2μs左右。
(3)估值網絡(Value Network),給定當前局面,估計是白勝還是黑勝,給出輸贏的概率。
(4)蒙特卡羅樹搜索(Monte Carlo Tree Search,MCTS),把以上3個部分連起來,形成一個完整的系統。
簡單地說一下Alpha Go的“訓練”過程,Alpha Go團隊首先利用幾萬局專業棋手對局的棋譜來訓練系統,得到初步的“策略網絡”和“快速走子”。訓練“策略網絡”時,采用“深度學習”算法,基于全局特征和深度卷積網絡來訓練,其主要作用是給定當前盤面狀態作為輸入,輸出下一步棋在棋盤其他空地上的落子概率。“快速走子”則基于局部特征和線性模型來訓練。完成這一步后,Alpha Go已經初步模擬了人類專業棋手的“棋感”。接下來,Alpha Go采用左右互搏的模式,不同版本的Alpha Go相互之間下了3000萬盤棋,利用人工智能中的“深度增強學習”算法,通過每盤棋的勝負來學習,不斷優化和升級“策略網絡”,同時建立了一個可以對當前局面估計黑棋和白棋勝率的“估值網絡”。根據Alpha Go團隊的數據,對比圍棋專業選手的下法,“策略網絡”用2ms能達到57%的準確率,“快速走子”用2μs能達到24.2%的走子準確率。據估計,單機上采用“快速走子”的下棋程序,已經具備了圍棋三段左右的水平。而“估值網絡”對勝負的判斷力已經遠超所有人類棋手。
實際對局時,Alpha Go通過“蒙特卡羅樹搜索”來管理整個對弈的搜索過程。首先,通過“策略網絡”,Alpha Go可以優先搜索本方最有可能落子的點(通常低于10個)。對每種可能,Alpha Go可以通過“估值網絡”評估勝率,同時,可以利用“快速走子”走到結局,通過結局的勝負來判斷局勢的優劣,綜合這兩種判斷的評分再進一步優化“策略網絡”的判斷,分析需要更進一步展開搜索和演算的局面。綜合這幾種工具,輔以超級強大的并行運算能力,Alpha Go在推演棋局變化和尋找妙招方面的能力,已經遠超人類棋手。根據資料,最高配置的Alpha Go分布式版本,配置了1920個CPU(中央處理器)和280個GPU(圖形處理器),同時可以跑64個搜索線程,這樣的計算速度就好像有幾十個九段高手同時在想棋,還有幾十個三段棋手幫著把一些難以判斷的局面直接下到最后,拿出結論,某一位人類棋手要與之對抗,確實難上加難。
當然,目前版本的Alpha Go也并不完美。在人機大戰的第4局,0∶3失利后為榮譽而戰的李世石長考25分鐘后,祭出了白78“挖”的妙手,這一手棋后來被新聞界稱為“神之一手”,Alpha Go在李世石的絕地反擊下陷入混亂,下出了不少“昏招”,最后中盤認輸。據Deep Mind創始人哈薩比斯賽后在Twitter寫道:“李世石下出白78后,Alpha Go自我感覺良好,在程序的‘估值網絡’中,誤以為勝率達到70%,在第79手犯了錯,直到第87手才反應過來它錯了。”
圍棋世界冠軍古力與Alpha Go對弈以后寫下了這么一句話:“人類與人工智能共同探索圍棋世界的大幕即將拉開。”筆者相信,Alpha Go所代表的人工智能技術將在更多的領域輔助人類解決更多的難題,而更多中國血統的天才,將像許峰雄、戴密斯·哈薩比斯、黃士杰那樣,在人工智能領域取得輝煌的成就。