在上週之前,若提到人工智慧和人類對決例子,很多人還是會想到1997年打敗西洋棋棋王的「深藍」,但現在,相信更多人會想到「AlphaGO」;上週AlphaGO和世界九段棋王李世乭對戰五場,以四勝一敗的成績得到各界的關注。



在比賽時為AlphaGO下棋的代表,也是AlphaGO主要程式開發者黃士傑博士,今天就現身Google台灣辦公室,跟我們說明AlphaGO是怎麼設計的?為可以贏得比賽?也談談人工智慧為何而生。(這也是小編第一次覺得AlphaGO其實離我們很近。)




AlphaGO來自DeepMind公司


AlphaGO是由位於倫敦的DeepMind公司研發,DeepMind在2010年成立,專攻深度學習、人工智慧的應用,2014年被Google收購,DeepMind成員來自世界各地,很多國家都有,包括4個台灣人,成員也是不同領域的專家,比方神經科學、深度學習領域、類神經網路...等。
▼ DeepMind人工智慧公司共同創辦人暨執行長Demis Hassabis(右)與職業九段棋王李世乭(左)。


黃士傑目前就在DeepMind擔任資深研究員,也是AlphaGO的主要程式開發者。
黃士傑自己也是業餘六段的圍棋棋手,2011年取得師範大學博士學位,論文主題就是「應用於電腦圍棋之蒙地卡羅樹搜尋法的新啟發式演算法」。
博士班期間(2010年)他研發出的圍棋程式「Erica」,在日本金澤舉辦的第十五屆奧林匹亞電腦遊戲程式競賽中獲得金牌,也是當時世界的最高水平。
黃士傑提到,當時在師大學習到的東西,對後來研發AlphaGO有很大的幫助,也可以說當時的所學,是讓他和團隊可以研究出AlphaGO的基礎。





人工智慧攻破圍棋 提前完成重要里程碑


我們可以看到,很多測試人工智慧的標的,都是挑棋類競賽來進行,從西洋棋到象棋,以及今天的圍棋,這是因為棋局的發展是可預測的,這步棋下了之後,後面會發展出哪些盤面,可能性是抓得出來的,因此人工智慧的研究人員會用棋局來測試人工智慧的運作。



在所有棋局裡,圍棋是最難的。
圍棋的難度之一在它是一個複雜度很高的遊戲,雖然規則簡單,但總共有10的170次方可能的盤面,這個總數是比全宇宙的原子數還多,如果要讓機器知道棋要下在哪裡,就需要考慮到這麼多的變化,但這簡直是個天文數字,所以圍棋被視為是人工智慧演算的大挑戰。
另外一個難處是:它還是個需要直覺的遊戲。
人在下棋時不僅會運用計算能力,還會運用直覺的能力,從經驗裡知道這一步之後棋局會有什麼變化,但電腦沒有直覺,對電腦來說,要學習下圍棋是件很難的事情。

但也正因為圍棋高難度,更讓人工智慧研究者想挑戰,希望能想辦法,運用AI的技術來挑戰圍棋,看能不能得到一些突破跟進展。

黃士傑提到,圍棋對人工智慧研究者來說,一直是個夢魘,因為實在太難了。有一段時間,科學家們一直在想辦法突破,後來到1997年深藍打敗世界棋王後,圍棋就成為僅剩的,人工智慧還無法攻破的棋類遊戲,所以這次的比賽結果,對AlphaGO團隊,或人工智慧界來說,都是一個很大的突破。




AlphaGO獲勝關鍵:深度學習


深藍擊敗棋王至今已快要屆滿20年,這麼久之後,才出現打敗圍棋的機器,關鍵就是深度學習。
西洋棋棋盤上總共有80個點,如果要搜尋有哪些下法的話,會發現第一步有80個點可以下,第二步就有79個點可下....把有多少種可能化成樹狀圖的話,看起來已經很複雜了...


但圍棋的更複雜,圍棋棋盤上有361個點,第一步棋有361個點可以下,第二步有360個點可以下...以一盤棋平均下了150步來算,要電腦找出各種下法,從中判斷最好的那一個,那他會面臨10的360次方種可能,圍棋的樹狀圖比西洋棋複雜得多,如果要讓電腦一一去解析哪種下法最好的話,花上幾億年可能都窮舉不完。


但在加入深度學習後,情況就有了改變。
DeepMind團隊運用「策略網路」(Poicy Network)和「值網路」(Value etwork)兩種神經網路來訓練AlphaGO,演算下在哪裡才是最好的,這也是AlphaGO能打敗職業九段棋王的關鍵。


黃士傑提到,所謂策略網路,是用來幫助AlphaGO減少搜尋廣度的。
AlphaGO利用策略網路去學習什麼狀況下,哪些是最好的前20個棋譜,然後程式只要去分析這20種棋譜就好了。
比方李世乭下了這步棋之後,接下來會有幾百幾千種棋步可以下,但AlphaGO不用一個個去研究,透過策略網路,AlphaGO找出前20種最好的下法是什麼就行了,這就相當於人類下棋時有的那個「直覺」。
在訓練AlphaGO時,需要輸入非常非常多棋譜資料庫,才能學習、預測到什麼是最好的棋譜、對手可能會下在哪裡,所以策略網路是集結了人類好幾千年來的歷史結晶,黃士傑提到,就像棋手繼承了前人的研究成果,來精進棋藝一樣,AlphaGO就是吸取這些前人的成果來學習,所以他不是排除人類的研究成果。

而另一個「值網路」,則是幫助AlphaGO減少搜尋深度。
這個神經網路用來訓練AlphaGO判斷,在目前的棋局下,落子在哪個點會佔優勢(勝率最高)。
比方李世乭和AlphaGO一來一往下了三步棋後,來到一個這樣的棋局,這時候AlphaGO要開始計算之後哪些棋步有優勢,哪些是劣勢,然後直接放棄劣勢的走法。
黃士傑提到,AlphaGO就是透過不斷和自己下棋(AlphaGO對戰AlphaGO),來訓練值網路,一次次從錯誤中學習,也就是所謂的強化式學習法,機器不會累,他可以一直下一直下,這也是AlphaGO的值網路可以這麼強大的關鍵。

利用這兩個網路,AlphaGO已經把對方,以及我該怎麼下的可能性範圍縮小很多,擷取到電腦可以處理的範圍,在保留下來的,機會比較大的盤面下,去演算該怎麼落子,這就是AlphaGO成功的秘訣。


不過我們也知道AlphaGO在第四戰的對決中輸了,李世乭在第四戰下了一手「挖」,被稱為神來一手,但為何在這一步之後AlphaGO形勢往下直到輸掉,團隊還在找原因,黃士傑提到,有可能是bug,也有可能是值網路有誤判,但詳細原因還在研究。


AlphaGO團隊的成員大部分是類神經網路專家,有很多技巧去編寫策略網路跟值網路,訓練AlphaGO,黃士傑在團隊裡負責將搜索的部分做很多優化,整合到整個訓練裡,互相回饋補強。
AlphaGO因為加入這兩個神經網路,搜尋效能被極大提升,才讓在電腦在短時間內就攻破圍棋。黃士傑提到,一開始團隊也做了很多嘗試,才發現用兩種網路來訓練很有效,黃士傑一路看著AlphaGO的進化,也覺得很震撼。
關於AlphaGO如何深度學習,他們之前在科學期刊「Nature」上發表過論文,網路上也有人翻譯成中文了,有興趣的可以去爬爬看。
論文發表後,很多人工智慧的團隊也在學習當中的技巧,黃士傑對此樂觀其成, 他認為人工智慧的研究,會因為更多互相學習,帶領整個領域更進步。





下一步?DeepMind將深度學習應用在醫療上


AlphaGO贏了棋王,是一個很大的成就,但對人類來說,實質的意義在哪?
其實人工智慧/ 深度學習已經應用在很多方面了,比方利用到語音辨識、電腦視覺...的產品,就是深度學習的應用。DeepMind除了研究下圍棋的AlphaGO,另一個團隊也在研究怎麼把深度學習用在醫療上,比方讓機器從大量的病歷資料裡學習,能協助醫生診斷出病患的症狀和原因。
研究人工智慧的終極目標,是要讓世界變得更好,所以之後他們也會把AlphaGO的技術運用到其他地方。

也有人期待AlphaGO之後會不會挑戰星海爭霸、英雄聯盟或五打五團戰遊戲,黃士傑表示這部分公司還在討論,還無法說明,但這種策略遊戲不像棋局有完整的資訊,所以要有不同的學習模式,這方面DeepMind還在研究。




人工智慧是中性的 看人類怎麼使用它


在看完上週人機大戰的新聞後,大家有什麼感想呢?
第一戰由AlphaGO勝出後,網路上出現很多種評論,科技類的新聞多半在解析AlphaGO的運作,或科普人工智慧、深度學習。
人文類的就有很多討論了,其中有很多是電腦是否取代人腦、機器人對人類有什麼影響...之類的正反討論,電影裡也演過,因為機器人太強大,最後統治了人類世界,看來聰明的機器人,並不是人見人愛,有的人對人工智慧還是抱持著恐懼的想法。
在被問到這個問題時,黃士傑表示,DeepMind加入Google之後,成立了一個倫理委員會,專門針對人工智慧的發展會造成的影響,做仔細的評估,在每個案子發展過程中,也會做很審慎的評估跟考量。黃士傑提到,他相信人工智慧是中性的,科技沒有好壞,就看人們怎麼使用它。
小編在其他的報導裡,也看到DeepMind成員有類似的發言,我們不必害怕一個強大的演算法,可怕的是那些利用強大科技為惡的人。

就算電腦聰明過人,但製造出這些機器人的推手,還是人,而且人腦可以處理多工任務,有通用的知識跟想像力可以解決廣泛的問題,這些都是人工智慧還沒辦法做到的,而且要讓人工智慧發展到會主動思考,有自己的意識去解決問題,這很難,目前還在AI初期,透過機器學習逐步發展中,最後會不會演變到那個地步,這不知道,要多久?也無法預測。


後記:
知道AlphaGO開發者裡有位台灣人,可能對很多從事科學的人員或學生有鼓勵作用。
黃士傑是在台灣取得博士學位的,提到自己的心路歷程,他認為台灣的人才素質並不比國外差,只是我們一方面資源少,一方面對自己似乎也缺乏信心。
他在跟國外的研究員一起工作時,會覺得他們的自信心跟企圖心很強,AlphaGO團隊的成員分別來自各個國家,大家都是離鄉背井,但大家都願意在外開拓闖蕩,這種精神跟台灣人比較不一樣,台灣人才其實不弱,但如果能走出去,有信心,跨出那一步,也是可以嶄露頭角的。
這段小鼓勵,也分享給大家。