世紀對決!AlphaGo對戰人類圍棋冠軍李世乭
專題故事

Google DeepMind 開發的人工智慧圍棋程式「AlphaGo」自3月9日起在韓國與人類圍棋世界冠軍李世乭進行五場對弈。賽前 AlphaGo 並未獲得太多支持的聲音,一般認為李世乭的贏面較大,他本人也預估會取得五戰全勝或是四勝一負的戰果,其他像是李開復等人都不認為AlphaGo有勝算。然而,出乎意料地,經過四場比賽之後,AlphaGo 取得的戰績卻是領先的三勝一負,而且還是先連勝三場,令圍棋界,乃至於全球人類皆震驚不已。

1 AI人工智慧再突破!Google圍棋系統,幹掉歐洲最強職業選手

在人工智慧科技發展之下,總會有一個討論議題-機器會不會有一天比人類聰明?

雖然還沒有正確答案,但是,人工智慧的技術在今日有了重要突破:Google自己的AI計畫,成功學會了號稱最難讓機器學習的遊戲「圍棋」,更打敗歐洲圍棋冠軍Fan Hui。

圖說明

過去,電腦的智慧的確有辦法在西洋象棋、西洋跳棋等遊戲上勝過人類,但是對超過2500年歷史的圍棋來說,卻一直是個無法跨過的挑戰,甚至有科學家做研究並證明,圍棋是經典棋盤遊戲中,最難教會電腦的遊戲。

但是,Google旗下的研究員卻成功完成挑戰,建立一個稱作AlphaGo的系統,並且已經把結果發佈在Nature期刊上。

Google在部落格上發表聲明,當他們確認AlphaGo已經準備好面臨正式圍棋選手的挑戰時,就找來蟬聯3次的歐中圍棋冠軍Fan Hui,進行一場人類與AI系統的圍棋比賽。這場比賽進行了將近整整5天,結果由AlphaGo勝出五場,也創下歷史上電腦程式第一次打敗職業圍棋選手的紀錄。

AlphaGo下一步打算迎戰韓國世界圍棋強手李世乭,這場比賽將在今年3月於韓國首爾舉辦。長期目標,則是希望再增進AI系統,讓它能夠透過實戰、觀看他人下棋,來促進自己的圍棋實力;另外,則是希望用這樣的AI演算方式,應用到社會上其他議題,例如氣候預測模型、疾病分析等。

而這則新聞發表的同一天,Facebook執行長Mark Zuckerberg更在自己的Facebook帳號上,發表一則長篇文章,不僅講述AI的要點與重要性,更期許自己今年的目標,是要建造一個簡單的AI系統,幫助他管理家中與工作事務。(點這看Mark Zuckerberg發言。)

資料來源:GoogleBBCWashington Post

2 深入淺出,解讀Google的人工智慧圍棋「大腦」

圖說明

在象棋和國旗象棋中,電腦軟體都非常厲害,只有圍棋是唯一「電腦贏不過人類」的項目。而今年1月份有個爆炸性的新聞:Google DeepMind 開發的人工智慧程式 AlphaGo 以5:0比數壓倒性擊敗了歐洲圍棋冠軍、專業二段棋手。並且3月份 AlphaGo 將會和韓國九段、世界冠軍李世石進行對弈。如果此役 AlphaGo 獲勝,將意味着人工智慧真正里程碑式的勝利。

圖說明

這也引起了筆者的好奇心,在春節期間,跟 Facebook 的田淵棟(他的背景無可挑剔,卡內基梅隆大學機器人系博士,Alphabet X 無人車核心團隊,Facebook 人工智慧组研究員)交流,他做的也是計算機圍棋 AI --黑暗森林(熟悉《三體》的朋友知道怎麼回事),今年1月份他的文章被機器學習頂級會議 ICLR 2016 接受,(表達學習在江湖上稱作深度學習或者特徵學)已在機器學習社群開闢了自己的江山,成為學術界的新寵。

他談到自從Google收購了DeepMind,投入大量資源去做好人工智慧專案,不為别的,就是要向世界證明Google智慧的強大。發表在頂级期刊《Nature》的論文光看作者就20個,明顯是下了血本,前兩位都是計算機圍棋界的權威,第一,銀鴻是計算機圍棋和強化學習的頂級專家,整個博士論文主題就是圍棋;第二,阿哈黃以前寫過多年圍棋軟體,自己又是AGA6D的水平。

還是不多說廢話,下面是SpinPunch CTO對AlphaGo的工作原理解讀,原文見參考資料。


Google DeepMind宣布他們研發的神經網絡圍棋AI──AlphaGo,戰勝了人類職業選手。這篇論文由銀鴻等人完成。其中的技術是出乎意料地簡單而強大。為了讓不熟悉的讀者更容易理解,以下是我對系統工作原理的解讀。

深度學習

「深度學習」是指多層的人工神經網絡和訓練它的方法。一層神經網络會把大量矩陣數字輸入,通過非線性激活方法取權重,再產生另一個數據集合作為輸出。

這就像生物神經大腦的工作機理一樣,透過合適的矩陣數量,多層組織鏈接一起,形成神經網絡「大腦」進行精準複雜的處理,就像人們識別物體、標註圖片一樣。

雖然神經網絡在幾十年前就有了,直到最近才浮出檯面。這是因為他們需要大量的「訓練」去發現矩陣中的數字價值。對早期研究者來說,想要獲得不錯效果的最小量測試,都遠遠超過計算能力和能提供的數據的大小。但最近幾年,一些能獲取大量資源的團隊重現挖掘神經網絡,其實就是透過「大數據」來使測試更有效率。

兩個大腦

AlphaGo是透過兩個不同神經網絡「大腦」合作來優化下棋程式。這些大腦是多層神經網絡,跟Google圖片搜索引擎識別圖片原理相似。它們從多層啟發式二維過濾器開始,去處理圍棋棋盤的定位,就像圖片分類器網絡處理圖片一樣。經過過濾,13個完全連接的神經網絡層產生對它們看到的局面判斷。這些層能夠做分類和邏輯推理。

圖說明

這些網絡透過反覆運算來檢查結果,再去校對調整參數,去讓下次執行更好。這個處理器有大量的隨機性元素,所以我們是不可能精確知道網絡是如何「思考」的,但更多的運算後能讓它進化到更好。

第一大腦:落子選擇器(行動機械手)

AlphaGo的第一個神經網絡大腦是「監督式學習的策略網絡(政策網絡)」,觀察棋盤佈局企圖找到最佳的下一步。事實上,它預測每一個合理下一步的最佳概率,你可以想像成「落子選擇器」。

圖說明

落子選擇器是怎麼看到棋盤的?數字呈現出最強人類選手會下在哪些地方的可能性。

團隊透過在KGS(網路圍棋對戰平台)上最強人類對手、百萬級的對弈落子去訓練大腦。這就是AlphaGo最像人的地方,目標是去學習那些頂尖高手的妙手。不是為了贏棋,而是去找一個跟人類高手同樣的下一步落子。AlphaGo落子選擇器能正確符合57%的人類高手。(不符合的不是意味著錯誤,有可能是人類自己犯的失誤)

更強的落子選擇器

AlphaGo系統事實上需要兩個額外落子選擇器的大腦。一個是「強化學習的策略網絡(策略Network)」,通過百萬級額外的模擬局來完成。比起基本的訓練,只是教程式去模仿單一人類的落子,高級的運算訓練會與每一個模擬棋局下到底,教程式最可能贏的下一步棋。 Sliver團隊通過更強的落子選擇器總結了百萬級訓練棋局,比他們之前版本又強化了不少。

單單用這種落子選擇器就已經是強大的對手了,可以到業餘棋手的水平,或者說跟之前最強的圍棋AI媲美。這裡重點是這種落子選擇器不會去「讀」。它就是簡單審視從單一棋盤位置,再提出從那個位置分析出來的落子。它不會去模擬任何未來的走法。這展示了簡單的深度神經網絡學習的力量。

更快的落子選擇器

AlphaGo當然團隊沒有在這裡止步。下面我會闡述是如何將閱讀能力賦予AI的。為了做到這一點,他們需要更快版本的落子選擇器大腦。越強的版本耗時越久──不過為了產生一個不錯的落子也夠快了,但「閱讀結構」需要去檢查幾千種落子可能性才能做決定。

Sliver團隊建立簡單的落子選擇器去做出「快速閱讀」的版本,他們稱之為「滾動網絡」。簡單版本是不會看整個19 * 19的棋盤,但會在對手之前下的和新下的棋子中考慮,觀察一個更小的窗口。去掉部分落子選擇器大腦會損失一些實力,但輕量級版本能夠比之前快1000倍,這讓「閱讀結構」成了可能。

第二大腦:棋局評估器(位置計算器)

AlphaGo的第二個大腦相對於落子選擇器是回答另一個問題。不是去猜測具體下一步,它預測每一個棋手贏棋的可能,在給定棋子位置情況下。這「局面評估器」就是論文中提到的「價值網絡(價值Network)」,通過整體局面判斷來輔助落子選擇器。這個判斷僅僅是大概的,但對於閱讀速度提高很有幫助。通過分類潛在的未來局面的「好」與「壞」,AlphaGo能夠決定是否通過特殊變種去深入閱讀。如果局面評估器說這個特殊變種不行,那麼AI就跳過閱讀在這一條線上的任何更多落子。

圖說明
局面評估器是怎麼看這個棋盤的,深藍色表示下一步有利於贏棋的位置。

局面評估器也通過百萬級別的棋局做訓練.Silver團隊通過複製兩個AlphaGo的最強落子選擇器,精心挑選隨機樣本創造了這些局面。

這裡AI落子選擇器在高效創建大規模數據集去訓練局面評估器是非常有價值的。這種落子選擇器讓大家去模擬繼續往下走的很多可能,從任意給定棋盤局面去猜測大致的雙方贏棋概率。而人類的棋局還不夠多恐怕難以完成這種訓練。

增加閱讀

這裡做了三個版本的落子選擇大腦,加上局面評估大腦,AlphaGo可以有效去閱讀未來走法和步驟了。閱讀跟大多數圍棋AI一樣,透過蒙特卡洛樹搜索(MCTS)算法來完成。但AlphaGo比其他AI都要聰明,能夠更加智慧的猜測哪個變種去探測,需要多深去探測。

圖說明

蒙特卡洛樹搜索算法

如果擁有無限的計算能力,MCTS可以理論上去計算最佳落子透過探索每一局的可能步驟。但未來走法的搜索空間對於圍棋來說太大了(大到比我們認知宇宙裡的粒子還多),實際上AI沒有辦法探索每一個可能的變種.MCTS做法比其他AI有多好的原因是在識別有利的變種,這樣可以跳過一些不利的。

銀鴻團隊讓AlphaGo裝上MCTS系統的模組,這種框架讓設計者去嵌入不同的功能去評估變種。最後馬力全開的AlphaGo系統按以下方式使用了這些大腦。

  1. 從當前的棋盤佈局,選擇哪些下一步的可能性。他們用基礎的落子選擇器大腦(他們嘗試使用更強的版本,但卻讓AlphaGo更弱,因為這沒有讓MCTS提供更廣闊的選擇空間)。它只集中在「明顯最好」的落子,而不是去選擇也許對後來有利的下法。

  2. 對於每一個可能的落子,有兩種評估方式:要不用棋盤上局面評估器在落子後,要不運行更深入的蒙特卡羅模擬器去思考未來的落子,使用快速閱讀的落子選擇器去提高搜索速度。 AlphaGo使用簡單的參數──「混合相關係數」,將每一個猜測取權重。最大馬力的AlphaGo使用50/50的混合比,使用局面評估器和模擬化滾動去做平衡判斷。

這篇論文包含一個隨著他們使用插件的不同,AlphaGo的能力變化和上述步驟的模擬。若僅使用獨立大腦,AlphaGo跟最好的計算機圍棋AI差不多強,但當使用這些綜合手段,就可能到達職業選手水平。

圖說明
AlphaGo的能力變化與MCTS的插件是否使用有關。

這篇論文還詳細講了一些工程優化:分佈式計算,網絡計算機去提升MCTS速度,但這些都沒有改變基礎算法。這些算法部分精確,部分近似。在特別情況下,AlphaGo透過更強的計算能力變得更強,但計算單元的提升率隨著性能變強而減緩。

優勢和劣勢

我認為AlphaGo在小規模戰術上會非常厲害。它知道通過很多位置和類型找到人類最好的下法,所以不會在給定小範圍的戰術條件下犯明顯錯誤。

但是,AlphaGo有個弱點在全局判斷上。它看到棋盤式通過5 x 5金字塔式的過濾,這樣對於集成戰術小塊變成戰略整體上帶來麻煩,同樣道理,圖片分類神經網路往往對包含一個東西和另一個的搞不清。比如說圍棋在角落上一個定式造成一個牆或者引徵,這會劇烈改變另一個角上的位置估值。

就像其他的基於MCTS的AI,AlphaGo對於需要很深入閱讀才能解決的大勢判斷上,還是麻煩重重的,比如說大龍生死劫。 AlphaGo對一些故意看起來正常的局也會失去判斷,天元開盤或者少見的定式,因為很多訓練是基於人類的棋局庫。

我還是很期待看到AlphaGo和李世石9段的對決!我預測是:如果李使用直(straight)式,就像跟其他職業棋手的對決,他可能會輸,但如果他讓AlphaGo陷入到不熟悉的戰略情形下,他可能就贏。


以上為原文結束分割線,以下為筆者個人感想。

這裡我還想到另一個人,中國最強大腦選手鮑橒,當時看了他走出蜂巢迷宮,被他的超強的空間記憶和想像能力深深震撼了,而他的職業就是圍棋選手,並且是盲棋。他能完成1對5的圍棋盲棋,實在是很不可思議的事情。

在圍棋圈內,幾乎沒有棋手能完成盲棋,因為確實太難了。筆者也向他詢問了對這個事情看法,他說,歐洲冠軍沒能摸到程式的底,但從棋譜來說,對Google程式我也難以取勝,確實下的不錯。雖然圍棋圈一致看好李世石,不過我不敢確定Google的程式3月份進展到什麼地步。

再說到Facebook的田博士,跟google DeepMind超豪華團隊長期投入不同,他就在半年多前從立項到實現,直到最近才有一個實習生加入幫他,而背後是他付出的心血,為了搶時間,在聖誕新年都是加班加點,按他所說,每日工作10+小時,自己搭機器,寫程式,調參數,單槍匹馬做出成績。

談到跟Google團隊的較量,田博士說:「這是一場必敗的戰鬥」,但我還是很佩服他,他讓我想到三國時代趙子龍,單槍匹馬大戰曹軍,力拔山兮氣蓋世!因為他是真正的勇士。

正是有了這些英勇無畏的科學家,一次次打破常規,挑戰極限,我們才知道人類如此大的潛力。最近短短幾年的發展,從大數據,深度學習人工智慧到虛擬實境,從發現了類地球行星,證實重力波,從Hyperloop,無人駕駛,量子計算,這些魅力無窮的科技讓我們對世界的認識上升到新的高度。面對這個激動人心的時代,我想說,天空是我們的極限,宇宙是我們的極限,未來才是我們的極限!

最後允許我拿田博士的話來結束。

我有時候會問自己:「我是不是背棄了夢想」我想除了我自己,任何人都不會給我答案,任何評論也不具效力。我記得有人問過,如果夢想從踐行的一開始,就在不自覺地向現實妥協,那樣的夢想還是最初的夢想嗎?其實,這樣的問題沒什麼可糾結的,因為世界從來就不是二元的,夢想和現實,如同高懸的日月,日月之間,有一條灰色的路,在自己腳下蜿蜒曲折,繞過各種險阻,一直向前。

而我能做的,只是要在奔跑時,不停提醒自己,還記得「夢想」這個詞的含義。

參考資料

AlphaGo如何運作:
http://www.dcine.com/2016/01/28/alphago/

《Nature》論文:
http://www.nature.com/nature/journal/v529/n7587/full/nature16961.html

關於AlphaGo論文的閱讀筆記:
http://36kr.com/p/5042969.html

關於圍棋AI的新思路:http://zhuanlan.zhihu.com/yuandong/20364622

本文授權轉載自:36 氪

3 淺談Alpha Go所涉及的深度學習技術

本文作者尹相志,為亞洲資採國際股份有限公司技術長、華院數據首席數據科學家,擁有多年資料採礦、商業智慧實務經驗。原文刊載於尹相志Allan's blog,《數位時代》獲得授權轉載。

介紹AlphaGo的技術原理,以及背後涉及到的類神經網路以及深度學習技術。

註:感謝有DeepMind的朋友指出我在中文用字上的不夠精確,所以在此調整。我之前文章提到的「全局」指的是跨時間點的整場賽局,很容易被誤認為是某個特定時點整個棋盤的棋局,所以後面全部都修改為「整體棋局」。此外,關於整體棋局評估,除了透過離線數據學習的評價網路之外,還可以透過根據目前狀態實時計算的不同策略評價差異(這項技術稱之為Rollouts),它透過將計算結果進行快取,也能做到局部考量整體棋局的效果。在此感謝DeepMind朋友的斧正。

點部落格改版一段時間,我也荒廢了沒寫部落格好久,一直在想一個機會再重新拾筆,在人類連輸AlphaGo三局後的今天,我想正好是一個好時機,也讓大家對於AlphaGo所涉及的深度學習技術能夠有更多的理解(而不是想像復仇者聯盟中奧創將到來的恐慌)。在說明Alpha Go的深度學習技術之前,我先用幾個簡單的事實總結來釐清大家最常誤解的問題:

  • AlphaGo這次使用的技術本質上與深藍截然不同,不再是使用暴力解題法來贏過人類
  • 沒錯,AlphaGo是透過深度學習能夠掌握更抽象的概念,但是電腦還是沒有自我意識與思考
  • AlphaGo並沒有理解圍棋的美學與策略,他只不過是找出了2個美麗且強大的函數來決定他的落子
  • 就算是AlphaGo,在定義上,仍舊是屬於弱人工智慧

甚麼是類神經網路

其實類神經網路是很古老的技術了,在1943年,Warren McCulloch以及Walter Pitts首次提出神經元的數學模型,之後到了1958年,心理學家Rosenblatt提出了感知器(Perceptron)的概念,在前者神經元的結構中加入了訓練修正參數的機制(也是我們俗稱的學習),這時類神經網路的基本學理架構算是完成。類神經網路的神經元其實是從前端收集到各種訊號(類似神經的樹突),然後將各個訊號根據權重加權後加總,然後透過活化函數轉換成新訊號傳送出去(類似神經元的軸突)。

圖說明

至於類神經網路則是將神經元串接起來,我們可以區分為輸入層(表示輸入變數),輸出層(表示要預測的變數),而中間的隱藏層是用來增加神經元的複雜度,以便讓它能夠模擬更複雜的函數轉換結構。每個神經元之間都有連結,其中都各自擁有權重,來處理訊號的加權。

圖說明

傳統的類神經網路技術,就是透過隨機指派權重,然後透過遞迴計算的方式,根據輸入的訓練資料,逐一修正權重,來讓整體的錯誤率可以降到最低。隨著倒傳導網路、無監督式學習等技術的發展,那時一度類神經網路蔚為顯學,不過人類很快就遇到了困難,那就是計算能力的不足。因為當隱藏層只有一層的時候,其實大多數的狀況,類神經網路的分類預測效果其實並不會比傳統統計的羅吉斯迴歸差太多,但是卻要耗費更龐大的計算能力,但是隨著隱藏層神經元的增加,或者是隱藏層的增加,那麼所需要計算權重數量就會嚴重暴增。所以到了八十年代後期,整個類神經網路的研究就進入了寒冬,各位可能只能在洗衣機裡體會到它小小威力(現在洗衣機裡根據倒入衣物評估水量與執行時間很多都是用類神經網路作的),說真的,類神經網路一點都沒有被認為強大。

這個寒冬一直持續到2006年,在Hinton以及Lecun小組提出了「A fast learning algorithm for deep belief nets」論文之後,終於有了復甦的希望,它們提出的觀點是如果類神經網路神經元權重不是以隨機方式指派,那麼應該可以大幅縮短神經網路的計算時間,它們提出的方法是類用神經網路的非監督式學習來做為神經網路初始權重的指派,那時由於各家的論文期刊只要看到類神經網路字眼基本上就視為垃圾不刊登,所以他們才提出深度學習這個新的字眼突圍

除了Hinton的努力之外,得力於摩爾定律的效應,我們可以用有更快的計算能力,Hinton後來在2010年使用了這套方法搭配GPU的計算,讓語音識別的計算速度提升了70倍以上。深度學習的新一波高潮來自於2012年,那年的ImageNet大賽(有120萬張照片作為訓練組,5萬張當測試組,要進行1000個類別分組)深度學習首次參賽,把過去好幾年只有微幅變動的錯誤率,一下由26%降低到15%。而同年微軟團隊發布的論文中顯示,他們透過深度學習將ImageNet 2012資料集的錯誤率降到了4.94%,比人類的錯誤率5.1%還低。而去年(2015年)微軟再度拿下ImageNet 2015冠軍,此時錯誤率已經降到了3.57%的超低水準,而微軟用的是152層深度學習網路(我當初看到這個數字,嚇都嚇死了)....

用最簡單的定義談深度學習,應該就是大量的訓練樣本+龐大的計算能力+靈巧的神經網路結構設計,我們這邊針對AlphaGo所使用的卷積神經網路來做比較詳盡的說明。

卷積神經網路(Convolutional Neural Network)

在圖像識別的問題上,我們處理的是一個二維的神經網路結構,以100*100像素的圖片來說,其實輸入資料就是這10000像素的向量(這還是指灰階圖片,如果是彩色則是30000),那如果隱藏層的神經元與輸入層相當,我們等於要計算10的8次方的權重,這個數量想到就頭疼,即使是透過平行計算或者是分布式計算都恐怕很難達成。因此卷積神經網路提出了兩個很重要的觀點:

  1. 局部感知域:從人類的角度來看,當我們視覺聚焦在圖片的某個角落時,距離較遠的像素應該是不會影響到我們視覺的,因此局部感知域的概念就是,像素指需要與鄰近的像素產生連結,如此一來,我們要計算的神經連結數量就能夠大幅降低。舉例來說,一個神經元指需要與鄰近的1010的像素發生連結,那麼我們的計算就可以從10的8次方降低至100100(1010)=10的6次方了。

  2. 權重共享:但是10的6次方還是很多,所以這時要引入第二個觀念就是權重共享。因為人類的視覺並不會去認像素在圖片上的絕對位置,當圖片發生了平移或者是位置的變化,我們都還是可以理解這個圖片,這表示我從一個局部所訓練出來的權重(例如1010的卷積核)應該是可以適用於照片的各個位置的。也就是說在這個1010範圍所學習到的特徵可以變成一個篩選器,套用到整個圖片的範圍。而權重共享造成這1010的卷積核內就共用了相同的權重。一個卷積核可以理解為一個特徵,所以神經網路中可以設計多個卷積核來提取更多的特徵。下圖是一個33的卷積核在5*5的照片中提取特徵的示意圖。

圖說明

卷積層找出了特徵後,就可以做為輸入變量到一般的類神經網路進行分類模型的訓練。不過當網路結構越來越複雜,樣本數如果不是極為龐大,很容易會發生過度學習的問題(over-fitting,神經網路記憶的建模數據的結構,而非找到規則)。因此我們後來引入池化 (pooling)或是局部取樣(subsampling)的概念,就是在卷積核中再透過n*n的小區域進行彙總,來凸顯這個區域的最顯著特徵,以避免過度學習的問題。

所以常見的圖像識別技術(例如ImageNet)就是透過多階段的卷積層+池化層的組合,最後在接入一般的類神經網路架構來進行分類預測。下圖是一個圖像識別的範例。其中的C2、C4、C6都是卷積層,而S3與S5則是池化層。卷積神經網路建構了一個透過二維矩陣來解決抽象問題的神經網路技術。而圖像識別不再需要像過去一樣透過人工先找出圖像特徵給神經網路學習,而是透過卷積網路結構,它們可以自己從數據中找出特徵,而且卷積層越多,能夠辨識的特徵就越高階越抽象。所以你要訓練神經網路從照片中辨識貓或狗,你不再需要自己找出貓或狗的特徵註記,而是只要把大量的貓或狗的照片交給神經網路,它自己會找出貓或狗的抽象定義。

圖說明
圖說明

講到這裡有沒有發現卷積神經網路作圖像識別與圍棋有甚麼相似性?沒錯,圍棋是一個19*19的方陣,而圍棋也是一個規則不像象棋或西洋棋般的明確,而且具備了很高的需要透過直覺才能判斷落子的特性。這個時候,深度學習就能發揮極佳的作用,因為程式設計師不需要自己把圍棋的遊戲規則輸入給電腦,它可以透過大量的棋譜自己找出對應的邏輯與抽象概念。

為什麼圍棋比較困難?

為什麼深藍可以在西洋棋贏過人類但是卻無法贏圍棋,這是因為深藍透過強大的計算能力,將未來局勢的樹狀架構,推導出後面勝負的可能性。但是各位要知道,以西洋棋或中國象棋來說,它的分支因子大概是40左右,這表示預測之後20步的動作需要計算40的20次方(這是多大,就算是1GHz的處理器,也要計算3486528500050735年,請注意,這還是比較簡單的西洋棋),所以他利用了像是MinMax搜索算法以及Alpha-Beta修剪法來縮減可能的計算範圍,基本上是根據上層的勝率,可能勝的部分多算幾層、輸的少算,無關勝負不算,利用暴力解題法來找出最佳策略。但是很不幸的是,圍棋的分支因子是250,以圍棋19*19的方陣,共有361個落子點,所以整個圍棋棋局的總排列組合數高達10的171次方,有不少報導說這比全宇宙的原子數還多,這是採用了之前的一個古老的研究說全宇宙原子數是10的75次方,不過我對此只是笑笑,我覺得這也是低估了宇宙之大吧。

AlphaGo的主要機制

在架構上,AlphaGo可以說是擁有兩個大腦,兩個神經網路結構幾乎相同的兩個獨立網路:策略網路與評價網路,這兩個網路基本上是個13層的卷積神經網路所構成,卷積核大小為5*5,所以基本上與存取固定長寬像素的圖像識別神經網路一樣,只不過我們將矩陣的輸入值換成了棋盤上各個座標點的落子狀況。

圖說明

第一個大腦「策略網路」基本上就是一個單純的監督式學習,用來判斷對手最可能的落子位置。他的做法是大量的輸入這個世界上職業棋手的棋譜,用來預測對手最有可能的落子位置。在這個網路中,完全不用去思考「贏」這件事,只需要能夠預測對手的落子即可。目前AlphaGo預測對手落子位置的正確率是57%(這是刊登在Nature文章時的數據,現在想必更高了)。那各位可能認為AlphaGo的弱點是否應該就在策略網路,一方面是預測準確率不高,再者是如果下了之前他沒看過的棋局是不是就有機會可以贏過他。可惜並不是,因為AlphaGo的策略網路有做了兩個層面增強,第一個層面是利用了名為增強策略網路(reinforced-learning (RL) policy network)的技術,他先使用部分樣本訓練出一個基礎版本的策略網路,以及使用完整樣本建立出來的進階版策略網路,然後讓兩個網路對弈,後者進階版策略網路等於是站在基礎版前的「高手」,因此可以讓基礎網路可以快速的熟即到高手可能落子的位置數據,進而又產生一個增強版,這個增強版又變成原有進階版的「高手」,以此循環修正,就可以不斷的提升對於對手(高手)落子的預測。

第二個層面則是現在的策略網路不再需要在19*19的方格中找出最可能落子位置,改良過的策略網路可以先透過卷積核排除掉一些區域不去進行計算,然後再根據剩餘區域找出最可能位置,雖然這可能降低AlphaGo策略網路的威力,但是這種機制卻能讓AlphaGo計算速度提升1000倍以上。也正因為Alpha Go一直是根據整體局勢來猜測對手的可能落子選擇,也因此人類耍的小心機像是刻意下幾步希望擾亂電腦的落子位置,其實都是沒有意義的。

圖說明

第二個大腦是評價網路。在評價網路中則是關注在目前局勢的狀況下,每個落子位置的「最後」勝率(這也是我所謂的整體棋局),而非是短期的攻城略地。也就是說策略網路是分類問題(對方會下在哪),評價網路是評估問題(我下在這的勝率是多少)。評價網路並不是一個精確解的評價機制,因為如果要算出精確解可能會耗費極大量的計算能力,因此它只是一個近似解的網路,而且透過卷積神經網路的方式來計算出卷積核範圍的平均勝率(這個做法的目的主要是要將評價函數平滑化,同時避免過度學習的問題),最終答案他會留到最後的蒙利卡羅搜尋樹中解決。

當然,這裡提到的勝率會跟向下預測的步數會有關,向下預測的步數越多,計算就越龐大,AlphaGo目前有能力自己判斷需要展開的預測步數。但是如何能確保過去的樣本能夠正確反映勝率,而且不受到對弈雙方實力的事前判斷(可能下在某處會贏不是因為下在這該贏,而是這個人比較厲害),因此。這個部分它們是透過兩台AlphaGo對弈的方式來解決,因為兩台AlphaGo的實力可以當作是相同的,那麼最後的輸贏一定跟原來的兩人實力無關,而是跟下的位置有關。也因此評價網路並不是透過這世界上已知的棋譜作為訓練,因為人類對奕會受到雙方實力的影響,透過兩台對一的方式,他在與歐洲棋王對弈時,所使用的訓練組樣本只有3000萬個棋譜,但是在與李世石比賽時卻已經增加到1億。由於人類對奕動則數小時,但是AlphaGo間對奕可能就一秒完成數局,這種方式可以快速地累積出正確的評價樣本。所以先前提到機器下圍棋最大困難點評價機制的部分就是這樣透過卷積神經網路來解決掉。

圖說明

AlphaGo技術的最後環節就是蒙地卡羅搜尋樹,相較於以前深藍所使用的搜索(搭配MinMax搜索算法以及Alpha-Beta修剪法,這裡就不再贅述),由於我們並非具有無限大的計算能力(請注意,如果是有限的排列組合,蒙地卡羅搜尋樹的確有可能針對所有組合進行通盤評估,但是在圍棋的場景下是沒有辦法的,就算這樣做,恐怕也會造成計算時間的大幅增加),因此不可能是適用於舊的方法,不過在前面策略網路以及評價網路中,AlphaGo已經可以針對接下來的落子(包括對方)可能性縮小到一個可控的範圍,接下來他就可以快速地運用蒙地卡羅搜尋樹來有限的組合中計算最佳解。一般來說蒙地卡羅搜尋樹包括4個步驟:

  1. 選取:首先根據目前的狀態,選擇幾種可能的對手落子模式。
  2. 展開:根據對手的落子,展開至我們勝率最大的落子模式(我們稱之為一階蒙地卡羅樹)。所以在AlphaGo的搜尋樹中並不會真的展開所有組合。
  3. 評估:如何評估最佳行動(AlphaGo該下在哪?),一種方式是將行動後的棋局丟到評價網路來評估勝率,第二種方式則是做更深度的蒙地卡羅樹(多預測幾階可能的結果)。這兩種方法所評估的結果可能截然不同,AlphaGo使用了混合係數(mixing coefficient)來將兩種評估結果整合,目前在Nature刊出的混合係數是50%-50%(但是我猜實際一定不是)
  4. 倒傳導:在決定我們最佳行動位置後,很快地根據這個位置向下透過策略網路評估對手可能的下一步,以及對應的搜索評估。所以AlphaGo其實最恐怖的是,李世石在思考自己該下哪裡的時候,不但AlphaGo可能早就猜出了他可能下的位置,而且正利用他在思考的時間繼續向下計算後面的棋路

圖說明

根據AlphaGo團隊的實測,如果單獨使用一個大腦或是蒙利卡羅搜索樹技術,都能達到業餘(段)的等級(歐洲棋王樊摩強度等級大概是在2500~2600,而李世石是在3500以上)。但是當這些技術整合就能呈現更強大的力量。但是在刊登Nature論文時他的預估強度大概也只有職業3~4段(李世石是9段),不過剛剛提到他透過增強技術強化策略網路、透過兩台AlphaGo來優化評價網路,這都可以讓他可以在短時間變得更加強大。而且電腦沒有情感也不怕壓力,更不會因為對手表現而輕敵(AlphaGo的策略網路一向只預測強者),所以人類就算有更強大的實力也未必能夠承受輸贏壓力而做最好的發揮。

圖說明

李世石有沒有贏的機會?

在很多評論中,我覺得對於AlphaGo都有很多不正確的猜測,首先是AlphaGo有沒有「整體棋局」評估的能力,必須說的是以整台AlphaGo來說是有的,這主要是來自於評價網路的計算結果(因為它計算的是最後勝率),但是獲得的是個池化區域的平滑化後平均勝率。在AlphaGo的策略網路主要是針對對手接下來的落子進行評估,至於蒙地卡羅搜索樹則是使用了評價網路的參數(離線訓練的結果)以及根據目前狀態實時計算價值差異的Rollouts技術,所以可以做出具有整體棋局考量的模擬試算。

但是人類對於「整體棋局」的掌控是透過直覺,這一點應該還是比電腦強大,而且如果利用目前AlphaGo是透過卷積核池化過後結果評估平均勝率(主要是為了平滑化以及避免過度學習),如果李世石有辦法利用AlphaGo會預測他的行為做後面決策,作出陷阱,來製造勝率評估的誤區(在池化範圍內平均是高勝率,但是某個位子下錯就造成「整體棋局」翻覆的狀況,這就是勝率預測的誤區),那麼人類就有可能獲勝(當然啦,我這裡只是提出可能性,但是知易行難,這樣的行動的實際執行可能性是偏低的)。現在李世石必輸的原因在於它一直在猜測AlphaGo的棋路,但是事實上反而是AlphaGo一直在靠猜測李世石的下一步來做決策,所以他應該改變思路,透過自己的假動作來誘騙AlphaGo,這才有可能有勝利的可能性。

弱人工智慧與強人工智慧

現在電腦在圍棋這個號稱人類最後的堡壘中勝過了人類,那我們是不是要擔心人工智慧統治人類的一天到來,其實不必杞人憂天,因為在人工智慧的分類上來說,區分為弱人工智慧(Artificial Narrow Intelligence)與強人工智慧(Artificial General Intelligence)(事實上還有人提出高人工智慧Artificial Super Intelligence,認為是比人類智力更強大,具備創造創新與社交技能的人工智慧,但我覺得這太科幻了,不再討論範圍內),其中最大的差別在於弱人工智慧不具備自我意識、不具備理解問題、也不具備思考、計畫解決問題的能力。

各位可能要質疑AlphaGo如果不能理解圍棋他是如何可以下的那麼好?請注意,AlphaGo本質上就是一個深度學習的神經網路,他只是透過網路架構與大量樣本找到了可以預測對手落子(策略網路)、計算勝率(評價網路)以及根據有限選項中計算最佳解的蒙地卡羅搜索樹,也就是說,他是根據這三個函數來找出最佳動作,而不是真的理解了甚麼是圍棋。所以AlphaGo在本質上與微軟的Cortana或iPhone的Siri其實差別只是專精在下圍棋罷了,並沒有多出什麼思考機制。

我也看到一些報導亂說AlphaGo是個通用性的網路,所以之後叫他學打魔獸或是學醫都能夠快速上手,那這也是很大的謬誤,如果各位看完了上面的說明,就會知道AlphaGo根本就是為了下圍棋所設計出來的人工智慧,如果要拿它來解決其他問題,勢必神經結構以及算法都必須要重新設計。所以李世石與其說是輸給了AlphaGo,還不如說是輸給了數學,證明其實直覺還是不如數學的理性判斷。有人覺得人類輸掉了最後的堡壘,圍棋這項藝術也要毀滅了...其實各位真的不用太擔心。人類跑不過汽車的時候為何沒有那麼恐慌呢?跑步這項運動到現在也好好的,奧運金牌也不是都被法拉利拿走了...所以真的不必太過緊張。

那麼會有強人工智慧出現的一天嗎?在2013年Bostrom對全球數百位最前沿的人工智慧專家做了問卷,問了到底他們預期強人工智慧什麼時候會出現,他根據問卷結果推導出了三個答案:樂觀估計(有10%的問卷中位數)是2022年,正常估計(50%的問卷中位數)是2040年,悲觀估計(90%的問卷中位數)是2075年。所以離我們還久的呢。不過當弱人工智慧的發展進入到成本降低可商業化的時候,大家與其關心人工智慧會不會統治地球,還不如先關心自己的工作技能會不會被電腦取代來實際些吧。

Allan Yiin

CTO, AsiaMiner

4 「戰勝自己」不只是口號──《Nature》AlphaGo論文讀後感

本文作者林守德,為台灣大學資訊工程學系教授,專長為機器學習與資料探勘。曾率台大團隊獲得5屆ACM KDD Cup資料探勘競賽世界冠軍、曾獲傑出人才基金會年輕學者創新獎,科技部吳大猷先生紀念獎,也獲得國際公司如Google、Microsoft、IBM、INTEL的學術獎勵。全文刊載於他的Facebook頁面,《數位時代》獲得授權轉載。

圖說明

我對圍棋一竅不通,過去也對AI-Game沒有特別研究,拜近日來AlphaGo重創人類在圍棋上領先的地位之賜,特別把這篇《Nature》上的論文(〈Mastering the game of Go with deep neural networks and tree search〉)拿來看了一下。

這是一篇非常有趣的論文,摘錄心得如下:

  1. AlphaGo 決策過程跟過去的棋類程式不大一樣。它裡面每一個stage單獨的方法都是不是新的創見,只是它組合這些方法的framework(框架)很特別。它的學習結果(不管是DNN或是RL)都只是中間產物,最後用來幫助搜尋最好的棋步。

編按:DNN為Deep Neural Nets的簡稱,中文譯為深度神經網絡;RL為Reinforcement Learning的簡稱,中文譯為增強式學習。

  1. 它的學習分三個階段,第一個階段「天下棋手為我師」,它主要希望建構一個13層的DNN來學「圍棋專家」的棋步(policy),也就是根據這個盤面預測過去歷史資料中大家會怎麼下。第一階段訓練出來的SL系統就可以下棋,但是結果不是很好,因為其實就只是個模仿專家的系統。

  2. 而第二階段「超越過去的自己」是一個增強式學習(Reinforcement Learning)的系統,藉由跟過去的自己對戰來增進(refine)第一階段學到的棋步,而且需要跟過去不同版本的對手對戰避免overfitting。在這個增強式學習的階段,才首度把勝負當成reward來訓練模型(model)。第二階段訓練出來的棋步已經有85%的機會贏過過去已知最強的圍棋程式(段數約二段)。

  3. 第三階段我戲稱為「機率算盡太聰明」。其宗旨在預估每個盤面的價值。所謂盤面的價值,就是從這個盤面開始,假設對手能夠窮舉所有可能的下法找到最佳解,AlphaGo的獲勝機率有多高。當然我們無法知道無懈可擊的對手會怎麼下,所以退而求其次,AlphaGo模擬跟自己下的過程決定每個盤面的「勝率」有多少,然後用有限的盤面與勝率當成訓練資料(Training data)再去訓練一個DNN估計所有盤面的價值。在這個階段還有一個招數,也就是這些當成訓練資料不能用第一階段資料庫蒐集的棋局盤面,因為同一局的盤面有高的相關性以及一樣的獎勵,會造成學習中的「記憶」效應,而是要用「與自己下棋」中每一局單獨抽取的獨立盤面來訓練。

  4. 前三個階段都是AlphaGo的「訓練」過程,這些都是offline可以做的。訓練好的AlphaGo已經可以贏過一般的對手。

  5. 雖然訓練好的第三階段AlphaGo就可以仗劍大殺四方,但是還不足以贏過高段的對手。因為實戰中的盤面有很大的機率是在訓練中沒有看過(圍棋的盤面總數高達250的150次方之多),對於它們價值的預測其實不一定準。真正在實戰中,AlphaGo採取「靈機應變,無招勝有招」的戰術,不堅持使用之前學習到的棋步,反而利用過去學到的棋步結合了蒙地卡羅樹狀搜尋(MCTS)的方法找出最好棋步。也就是在實戰中對現在盤面進行模擬下棋(再度假設對手就是自己),在模擬的過程中把所有經歷的盤面重新計算它們的價值,在有限的思考時間內盡量進行模擬,最後選擇模擬過程中最穩定的棋步(不是價值最高的棋步)。在這個過程中需要快速的運算,越多的模擬就會讓盤面價值的計算越準,AlphaGo利用平行化計算加上GPU達成高速運算的目的。

  6. 演算法總結:AlphaGo第一階段的訓練過程就像是把一個人關在房間裡,不告訴他圍棋是什麼,也不告訴他圍棋的規則,甚至連圍棋最後怎麼算勝負都不跟他說,只拿一大堆過去專家下棋的棋譜給他看。然後等它看完棋譜後,第二階段就讓他自己跟自己下棋,從中學習更好的下法,最後第三階段它只要看到某個盤面就知道這個盤面的勝率,雖然從頭到尾它還是不知道圍棋的規則。

    真正在下棋的時候,AlphaGo還是沈浸在自己的世界裡。每當對手下完一步,它就開始模擬接下來可能的數步(模擬的時候就是假設對手是自己,所以對手是誰對AlphaGo而言完全不重要,他也完全不去預測對手會怎麼下),在模擬的過程中,它就重新對於未來可能面對棋局來估算勝率,最後選擇最穩定最有可能獲勝的棋步。它的風格就像是金庸筆下的獨孤九劍,不拘於定式,而是當下根據對手的招式才決定最佳的進擊策略。

  7. AlphaGo並沒有針對對手的棋步訓練系統,我不確定在他使用的數據裡面有沒有李世石的棋譜,不過就算是有,所占的比例也應該微乎其微。「自我學習」(與自己對戰)才是AlphaGo的主軸。

  8. 看起來AlphaGo所使用的所有招數跟方法是缺一不可,論文裡面還有一些決策(decision)的細節並沒有講清楚,但是相信是嘗試錯誤後決定的。

  9. 後記1:AlphaGo的唯一目的是最後的勝利,所以在過程中它並不在乎下某一子的短期利益(會贏多少地盤),它甚至對於這些短期損益完全沒有認知,在訓練的過程中也不在乎「贏幾目」。在與人類對決的時候,我們看到棋評會指出它犯了一個「失誤」,或是它不喜歡某種策略如「打劫」。其實如果瞭解AlphaGo的決策模式,就會知道他其實沒有「策略」以及「失誤」的概念,對它而言,棋類等遊戲就是對於每個盤面精確且快速的估算其通往勝利的機率。

  10. 後記2:因為AlphaGo在下棋的過程中會看到越來越多的盤面,所以它只會愈來愈進步。未來如果人類想從與其對奕中取得勝利,必須要能夠走出前所未見的局面,降低它對於盤面估測的準確度才會有機會。這也不是完全不可能,因為圍棋的複雜度太高。其實要更理解AlphaGo,必須要去研究它present每一個盤面所用的features,我因為不懂圍棋,所以沒有辦法評論。但是理論上如果它遺漏了某個重要的特徵,表示它無法利用這個資訊判斷盤面的價值,人類可以利用這個資訊去進攻,盡量去創造某個比較不容易被已有的feature來表達的盤面。

延伸閱讀:淺談Alpha Go所涉及的深度學習技術

5 [韓國現場]世紀對決開始啦!AlphaGo與棋王李世乭對弈中

Google旗下人工智慧公司 DeepMind 所研發的 AlphaGo 人工智慧系統,今日下午正式開始迎戰世界棋王李世乭!這場人機大賽,讓全世界再度將焦點放到了Google在機器學習(Machine Learning)與人工智慧(Artificial Intelligence)領域的進展。

AlphaGo與棋王李世乭的世紀對決看這裡

由海峰棋院提供的中文講解:

世紀對決開始啦!現場超熱鬧

記者在韓國首爾現場,現場湧進來自12個國家的媒體近200人,把對弈的會場韓國四季酒店擠得水洩不通。韓國當地媒體也十分重視這場比賽,不僅當天報紙以頭版篇幅報導,在比賽過程中也出動SNG現場連線,隨時更新比賽狀況。

圖說明
(韓國當地出動大批媒體,把現場擠得水洩不通。)

圖說明
(Alphabat執行董事施密特(Eric Schmidt)、DeepMind執行長Demis Hassabis稍早已進入會場。)

圖說明
(不過對弈現場需要保持絕對安靜,AlphaGo與棋王李世乭對弈的小房間連工作人員都不能進去。)

圖說明
(現場大批來自各國的媒體只能在一旁會議室看轉播。)

圖說明
(棋王李世乭正在對弈中。照片來源:Google提供。)

圖說明
(韓國媒體超重視這場世紀對決,當天報紙幾乎都以頭版篇幅報導。)

這場對弈已在韓國時間下午一點(台灣時間中午十二點)展開,賽事共分為五場,將從3月9日一直比到15日。今天進行的賽事是第一場,比賽預計進行三到四個小時,晚上就能知道第一場對決結果。這場人機大戰無論誰勝誰負,都將是Google在機器學習領域的另一里程被,這場賽事也有專屬的YouTube直播頻道,有興趣的讀者可以鎖定。

Google:機器學習要讓人類生活得更好

在比賽熱烈進行的同時,今日Google資深研究員Jeffery Dean也特別在賽前向媒體介紹目前Google在機器學習領域的佈局。Jeffery Dean在1999年加入 Google ,目前負責帶領 Google 研究深度學習(Deep Learning)的Google Brain團隊。

簡單來說,機器學習運作方式,是經過輸入(input)後進入機器設定的模型(model)後得到產出(output)或預測結果(predictions)。不過,模型的設定可能過於單一固定,產出或預測結果會不準確。因此要如何讓模型的設定涵蓋更多變數、使機器更聰明,就是機器學習的重點。

而這項技術如何運用在Google的服務上?Jeffery提到,目前Google在機器學習主要有三大應用,包括在「產品跟服務」、「自動化與醫療領域」以及雲端API的進展。其中產品跟服務是大家較為熟悉的部分,包括Google搜尋(Google Search)、Google翻譯、Gmail裡的Smart Reply功能、以及Google Photos的照片物件識別、分類功能。

Jeffery舉例,像是在語音辨識領域通常會碰到三個主要的問題,一個是語音辨識,一個是不同語言的障礙,再來是不同年齡層的發音方式,但Google皆透過機器學習解決這些問題,而像是Smart Reply目前已有10%是在手機上應用。

另外,Google機器學習除了應用在自己的工具與服務外,也同樣運用在自動化機械(robotics)與健康領域。例如,讓機器手臂經由抓取物件的過程,自動去學習、辨識物件。第三,則是機器學習應用在雲端領域,透過開放API讓開發者做更多的應用,例如2015年11月釋出的開放軟體TensorFlow。

機器學習還沒達到人腦程度

不過,讓大家擔心的是機器學習未來的威脅性?究竟機器學習能不能進一步提升到機器了解(Machine Understanding)的地步,意即機器能夠意識到自己在做什麼、識別、分析些什麼?Jeffery Dean表示,Google從2012年投入研究至今,現在機器學習已經有很大的進步,也從以前只能辨識個別單字、事件,到現在輸入、設定模型後,就能辨識完整圖像或語句,已經有很大的進步,某種程度上也算是一種瞭解。

另外,人腦跟機器之間的學習方式也不同,機器學習是應用在可被規範的情形,它可以在某一個領域操作的很好,但無法像是人腦一樣應用在隨機事件,機器學習要達到人腦一樣的思考模式,還需要很多年的時間。「機器學習是一項很棒的技術,可以應用在很多不一樣的領域。」Jeffery Dean表示Google的目標還是在改善人們的日常生活,例如醫療領域。

目前,Google內部有兩個專門研究機器學習的團隊,一個是由Jeffery掌舵、位於洛杉磯山景城總部的Google Brain研究團隊,另一個則是目前專攻棋類遊戲,下午即將再度挑戰圍棋對弈的Google DeepMind。不過,目前DeepMind的技術主要仍專注在棋類遊戲,未來兩方技術有沒有可能做進一步的整合,還需要進一步的規劃。但Jeffery認為,未來需要深度識別能力的Google自駕車計畫,就有可能需要Google DeepMind的技術。

延伸閱讀:[韓國現場] 棋王李世乭:AlphaGO還不是非常成熟的棋士
簡立峰看AlphaGo對決人類棋王:別擔心!AI不會取代人
不是未來,就是現在!人工智慧走入商用領域

6 AlphaGo再勝李世乭!人機大戰4:1落幕

人機世紀對決終於畫下尾聲!Google人工智慧AlphaGo與南韓棋王李世乭的圍棋對弈今日進行到第五局,由AlphaGo再添一勝,5局賽局最終比數為4:1。

在3月9日到15日的比賽中,由AlphaGo先取得前三場勝利,隨後李世乭奪下第四局,最後一局依舊由AlphaGo拿下最終場勝利。在比賽激戰超過五個小時後,最終李世乭投子投降,而這也是五局來耗費最久時間的一局。

圖說明

在今天的第五戰中,由李世乭執黑子、AlphaGo執白子,比賽時間耗時超過5個小時,而雙方戰況一直十分膠著,AlphaGo看來已從先前的失誤中恢復,表現維持在職業選手等級,攻勢猛烈;但李世乭也延續第四戰勝出的氣勢,在比賽中段率先搶得右下角的優勢。

在這場對弈中,李世乭心情似乎較前面幾局放鬆,但仍舊用了許多的思考時間,兩個小時結束進入讀秒階段時AlphaGo還剩下約20分鐘。

比賽後段,雙方戰況仍陷入膠著,但白棋在左下角的佈局似乎犯了一些小錯誤,下了一些看似無意義的棋。Google DeepMind執行長Demis Hassabis也在Twitter發文表示,AlphaGo在比賽中犯了一個大錯,正努力彌補中。

但AlphaGo犯錯後,自我修正的速度確實非常快。美國職業九段棋士Michael Redmond便評論,AlphaGo在右下角佈局失誤後,能夠調整錯誤、重新計算,接下來在左上角的佈局很成功。

在比賽進行約5個小時後,白棋略勝黑棋一籌,最終李世乭投子投降。

人腦與電腦的世紀對決在今日正式落幕,也讓大家重新把焦點放到人工智慧的進展,無論輸贏,都創造了新的里程碑。

圖說明
(圖片來源:GoRatings。)

目前,AlphaGo也正式擠身世界圍棋高手之中。根據 GoRatings 世界圍棋排名日前更新的名單,AlphaGo目前名列世界第四位,次於中國柯潔、南韓樸永訓以及日本井山裕太之後,而此次與 AlphaGo 對弈的南韓棋士李世乭則是世界第五。

另外,繼DeepMind工程師在臉書上向世界排名第一喊話後,在第五局比賽中途,日本棋院也向AlphaGo發出挑戰,邀請AlphaGo與目前世界排名第四的井山裕太對弈,未來人機大戰可能未完待續。

延伸閱讀:
淺談Alpha Go所涉及的深度學習技術
幫AlphaGo擊敗南韓李世乭的那個人:台灣資工博士黃士傑
DeepMind執行長Demis Hassabis:20年前我就想發明AlphaGo了
「戰勝自己」不只是口號──《Nature》AlphaGo論文讀後感

圖說明

7 DeepMind執行長Demis Hassabis:20年前我就想發明AlphaGo了

「人工智慧的新里程碑!AlphaGo擊敗了棋王李世乭」「AI對人類真正的威脅是什麼?」「人機大戰再敗,李世乭:AlphaGo讓我開始挑戰對圍棋的傳統想法」。過去一週,人工智慧AlphaGo與南韓棋王李世乭的世紀之戰,無疑成為全球鎂光燈下的焦點。

賽前

賽前,大家都不甚看好AlphaGo。雖然它在去年10月擊敗了歐洲棋王樊麾,但樊麾棋力二段,與李世乭的九段(專業最高段數)仍有段差距。創新工場執行長、機器學習專家李開復在賽前曾就去年AlphaGo的表現剖析,這一次李世乭對上AlphaGo,雙方每盤勝算約是89:11,若AlphaGo想勝出,應該還要一兩年的時間。

圖說明
(圖說:3月8日韓國下午一點,Google人工智慧AlphaGo對上了南韓棋王李世乭,這一戰,全世界都在看。照片來源:Google提供。)

這次,AlphaGo的學習能力卻超越眾人想像,在不到半年的時間內,它進步神速,吸收了三千萬張棋譜、與自己對戰了數萬局。在3月9日到15日這五場對弈中,最終李世乭與AlphaGo雙方比數4:1,由AlphaGo獲得這次比賽的勝利。AlphaGo更因為這場對決,擠身世界圍棋排名第四位。

我們覺得很遙遠的未來,就是「現在」

這場對弈,更讓人工智慧邁向新的里程碑。

電腦勝過人類的歷史,要回溯到1997年,IBM的深藍(Deep Blue)電腦擊敗了當時的西洋棋冠軍Garry Kasparov。「深藍在機器學習領域是一個重要的突破。但當時大家的共識是:圍棋不可能會贏。」Google台灣董事總經理簡立峰表示,相較於西洋棋,圍棋是公認最複雜的棋類,一個子落下來,盤面有非常多種可能,複雜程度連電腦都無法完全參透。但近年隨著電腦的運算能力提升與資料庫變大,帶動機器學習有了新的突破,並且有能力去完成複雜度更高的人工智慧系統。「我們原來覺得很遙遠的未來,現在都到達了。」他說。

這場對弈,在AI歷史中佔有絕對性的指標意義。在將近20年後,全世界又再度把焦點都放到了人工智慧的進展上。電腦看起來更聰明了,聰明到我們從前無法想像的地步。在科技突破的同時也加入了哲學思辨,「機器到底懂不懂自己在做什麼?有一天會不會完全取代人類?」人們開始反思人與電腦之間的關係,也對未來有了更多的好奇與畏懼。

這是一場Google耗資120億元的豪賭

AlphaGo的推手,正是Google在2014年豪擲約4億美元(120億台幣)收購的英國公司「DeepMind」。成立於2010年,這家專攻深度學習的AI公司在還沒有任何商業化的成績時,就被Google大手筆收購,成為Google至今在歐洲最大起收購案。Google所看中的,是DeepMind對於未來強烈的企圖心。

圖說明
(圖說:Google在2014年收購了深度學習公司DeepMind。)

DeepMind所研發的AlphaGo人工智慧系統,是第一個結合了機器學習(Machine Learning)與Monte Carlo(蒙地卡羅)樹狀方法的深度學習網絡(deep neural networks)。而AlphaGo這套類神經網絡(neural networks),讓它能進一步模擬人類專家的思維,分析盤面並選擇最有利的下一步。DeepMind的研究結果,同樣在學術界取得領先地位,在去年兩次登上科學權威性期刊《Nature》的封面。

圖說明
photo credit: Nature

西洋棋大師Demis Hassabis

3月8日,韓國首爾,在AlphaGo即將對上李世乭的前一天,我採訪到了DeepMind執行長Demis Hassabis,而他也許正是這世界上最聰明的人之一。

同時作為一個神經科學家、電腦科學家,Demis還有另一個讓人驚奇的身份:西洋棋神童。4歲開始學習西洋棋,13歲時棋藝已達大師等級,是當時世界段位第二高的棋手,蟬聯過5屆世界西洋棋冠軍。

圖說明
(圖說:DeepMind執行長Demis Hassabis。照片來源:曾靉攝影。)

1997年,當IBM深藍電腦擊敗西洋棋冠軍的那一刻,正好是Demis在劍橋大學攻讀電腦科學的時候。當時已是西洋棋高手的Demis,在劍橋內第一次接觸到圍棋「Go」——這個已有千年歷史的棋類運動。Demis回憶,當時看到這場比賽內心萌生很多想法,也讓他下定決心,有一天要做出一個下圍棋勝過人類的電腦系統。

遊戲,就是他探索這個宇宙的第一步。早在17歲時,Demis就曾製作過一套名為「主題公園」(Theme Park)的模擬遊戲,全球銷售超過百萬套。離開劍橋後,Demis創辦了電子遊戲公司 Elixir Studios,10年後他重回校園,在倫敦大學完成認知神經科學博士學位,也在麻省理工和哈佛大學從事博士後研究。

Demis:「我不覺得AI是威脅,我覺得它很『Amazing』!」

2010年,Demis與Shane Legg、Mustafa Suleyman三人共同創辦了DeepMind。在DeepMind官網首頁,他們這麼寫下公司宗旨:「解決智能,用它來讓世界更好。(SOLVE INTELLIGENCE, USE IT TO MAKE THE WORLD A BETTER PLACE.)」

AlphaGo,就是DeepMind跨入AI領域的重要一步,這一步,世界矚目,但即使AlphaGo證明自己能夠勝過人腦,大家感到期待、驚訝,隱而未顯的卻是更多對於未來的恐懼。

對於人工智慧的發展,持反對意見的科技大老不少,包括特斯拉(Tesla)執行長馬斯克(Elon Musk)、科學家史蒂芬・霍金(Stephan Hawking)都是知名的反對派,霍金更曾語出驚人一句「人工智慧將使人類滅絕。」人們害怕的是,AI會不會有一天懂得思考?會不會如《魔鬼終結者》中的天網,鋪天蓋地控制我們的生活?

「我不覺得AI是個威脅,我覺得他很令人驚奇!(Amazing)」Demis說。

相較於媒體詢問到任何有關AlphaGo的技術細節,Demis總能細細的、不厭其煩的解釋,他在講這一句話的時候,語氣特別加重了些。

在Demis眼中,AI並不是用來取代人類,AI終歸是一項工具,意在讓人類的生活進步。機器不會有喜、不會有怒,當然也不會感到疲憊,機器可以不間斷的進行運算,在數以百萬計的數據資料中,找出最有價值的一個。運用在醫療、科學領域,都能帶來極大的幫助,但人類的思想、好奇、想像、直覺,才是創造出這一切的根本。

圖說明
(圖說:DeepMind的下一步棋,也同樣讓人好奇。照片來源:曾靉攝影。)

AlphaGo在圍棋中勝過人類,但不代表它能夠知道或是理解自己正在做些什麼,要從機器學習進步到機器理解(Machine Understanding),還有非常長的距離,讓機器能像人腦一樣理解,也不會是DeepMind未來要做的。

所以,Demis如何想像未來5年有AI的世界?「我覺得其實不會有什麼太大的改變,可能你的手機、你的家庭用品更理解你的使用行為了,也或許無人車滿街跑了,但如果說是什麼天翻地覆的改變,我覺得不會。」他說。

AI的未來?我正在搞清楚宇宙是怎麼一回事

採訪結束後,Demis先是做勢下棋給記者們拍照,閃光燈一暗下後卻是一群記者湧上前要跟他合照。「你簡直就像搖滾明星。」現場的記者們糗他。「對啊,這對一個科學家來說挺不尋常的。」Demis笑說。

離開採訪現場,我重新點開Demis Hassabis的Twitter頁面,「我研究AI,正在試著搞清楚宇宙是怎麼一回事。(Working on AI. Trying to understand what is really going on in the universe.)」Demis在自己的Twitter個人簡介中這樣寫到。

3月15日,人機圍棋世紀對決畫下句點。「我非常享受與 AlphaGo 的對戰。經過這次比賽,我對於傳統圍棋步數典範有了新的理解。接下來,還有許多研究、努力的空間。」南韓棋王李世乭這麼說到,雖然輸了比賽,但卻讓自己對圍棋有了更多想法。

「我們必須對李世乭致上最高的敬意,感謝他接受挑戰、在賽局中展現出過人的棋藝。沒有李世乭的參與,我們沒有辦法突破 AlphaGo 的運算極限。」Demis同樣在賽後這麼說,「未來,我們希望能夠延續這個技術來完成更多的挑戰,從即時翻譯到智慧型手機的個人助理。甚至,將這個技術發展到醫療應用上。」

2016年2月,DeepMind發表了DeepMind Health計畫,要透過行動App,幫助英國的醫護人員及早發現急性患者並更好的做臨床任務管理,雖然這項計畫現階段還未導入AI技術,卻也讓人期待未來的可能性。

我想,隨著AlphaGo與李世乭的這場人機大戰告一段落,同時翻新的是我們對AI與圍棋的想像。AI與人類之間的平衡仍在擺盪,而或許在Demis的心中,早就已想好了下一步棋要落在哪裡。

8 [曹家榮]AlphaGo贏了,那人類開始反省了嗎?

電腦與人的圍棋大戰

圖說明
攝影/曾靉。

這幾天如果有關注科技新聞的人,大概都不會錯過AlphaGo這套人工智慧系統與世界棋王李世乭的世紀對弈。

就在我寫這篇文章的當下,AlphaGo已然連續贏得兩場勝利。而在比賽開始之前,不僅棋王認為AlphaGo還不是非常成熟的棋士,也有許多評論家認為,AlphaGo雖然一月時已擊敗歐洲棋王,但要贏過李世乭恐怕還不是時候。

兩天之內,眾多人類們被打臉了。震天作響的巴掌聲中,有些人開始憂慮人工智慧征服人類的那一天真的要到來了,也有些人開始「正面思考」,相信這不失為好事,因為這代表著科技將更進步,而人類的生活將更好──只要我們不喪失鬥志

威脅潛伏:人工智慧

關於人工智慧將帶來的挑戰,已經不是新鮮事。在之前的文章中,我也曾指出,WEF創辦人兼執行主席Klaus Schwab在宣告第四次工業革命即將到來時,也將人工智慧的發展視為最大的挑戰。

更不用說英國物理學大師霍金曾警告,人工智慧終將發展出自我意識。而我們無法預料這個能夠獨立思考、又能持續進化的人工智慧,在超越人類的同時是否也會帶來滅亡。

因此,在這些「警世預言」中,AlphaGo的勝利在某些人看來,等同於宣告著人類正走向這條前途堪慮的道路。也就是說,過去我們也許會認為,人工智慧最多只是扮演輔助性的角色,但AlphaGo的勝利顯然說明了人工智慧不僅能「思考」、學習,甚至在複雜的對奕中還能贏過人類。

那麼,會不會有一天,就像「天網」一樣,人類將被判定是具威脅性的物種而需要毀滅?或者像Tesla創辦人馬斯克的「垃圾郵件滅世論」那樣,在神邏輯下終結人類的命運?

圖說明
圖說:「天網」為電影《魔鬼終結者》中挑戰人類的人工智慧,原本是政府研發的國防電腦系統,卻發展出自己的智慧、判定人類是威脅他們的物種。圖片來自電影劇照。

雖然好萊塢電影不斷上演著類似的情節,但如今要說人工智慧真能發展到滅世的地步,確實悲觀的太早了一點(吧?)。但是,我們因此就可以樂觀地認為,還有大把時間讓我們好好想想,要如何「控制」人工智慧嗎?我認為,在「正面思考」中也存在幾點令人憂心的謬誤。

樂觀的謬誤一:科技終究只是工具

第一個樂觀的謬誤源自於人類根深蒂固的「主宰者」思維:科技終究只是工具。這樣的想法又可以分作兩個層次。

首先,我們經常認為科技就是讓我們能夠達到目的的物質性手段。例如,印刷術可以讓我們快速生產、印製書籍;電視可以讓影音資訊同步在各地放送;而電腦、手機這類數位、多媒體科技更是有各式各樣的功能,滿足人類的需求。

然而,一如傳播學者麥克魯漢所說的,認為各種科技物只是中性、用以達成目的的工具的人,根本就是「白日夢遊者」:以為自己清醒,卻從未從夢中醒來。換言之,他們從未認識到科技物真正施加於人的效果。

圖說明
圖說:傳播學者麥克魯漢。照片來自Len Edgerly via flickr, cc license

知名科技評論作家Nicholas Carr在《網路讓我們變笨?》一書中,正是以麥克魯漢的觀點為基礎,指出了網際網路如何不只是「工具」,而是正在改變人們的大腦與思維模式。

當我們將科技單純地視為是工具時,就會跟著產生第二個層次的問題:相信人類總是科技的主宰者。

一如一些樂觀者所認為的,雖然人工智慧可能顯露出比人類更快、更好的智力、機器人可能已具備比人更有效、有力的生產能力,那都沒有關係。因為這些人工智慧、機器人終究是為我們人類服務、為我們創造價值。

然而,樂觀者也許沒有看見的是,隨著工業革命至今的現代社會發展已顯示出:人類根本無力於成為他所以為的那個主宰者。科技的失控、反撲在一次又一次的生態浩劫與危機中顯現。

圖說明
圖說:科技社會學家Donna Haraway。照片來自Rusten Hogness分享於wikipedia, cc by 3.0

因此,就像科技社會學家Donna Haraway所說的,我們人類其實沒有自己以為的那種「充分的理性」,可以算計出為了進步、發展而可犧牲的「成本」。同樣地,風險社會學家Ulrich Beck在車諾比核爆後也早已指出,風險的不確定性早已侵蝕了人類過去引以為傲的「理性」。

樂觀的謬誤二:科技將帶給人們富足

除了樂觀地認為我們可以控制、主宰人工智慧外,另一種正面思考則是認為:人工智慧的發展是好事,因為它將大幅提昇產能,讓人類社會更加富足。

換言之,這類樂觀的觀點認為,雖然乍看起來,人工智慧與機器人將會搶走人類的工作,但也無須擔心,因為它們相對地也會帶來更多的產能,因此人們即便不工作也不愁吃穿。唯一需要擔心的是,人類會不會因此活得太廢、失去生活的意義。

從某種角度來看,這類樂觀並沒有錯。一方面,當生產全面人工智慧化、機器人化,可能達到的產能與效率絕對可能供給全人類所需。同時,另一方面,在這樣的生活狀態下,我們的確需要憂慮的反而是人的心理問題。

但問題是,先不說類似的觀點聽起來很耳熟,工業革命發生時,也有人預言過機器化的生產將可以解除全人類的貧窮問題。甚至今天,全球浪費掉的食物都足以餵飽所有人好幾次了。但人類社會真的「都已」富足了嗎?

恐怕更接近事實的情況是如《紐約時報》這篇評論所說的:在未來,也許只有天龍人可以享受得到科技進步的果實。

換言之,我們不是不能正面思考人工智慧將帶來的美好未來,問題在於,我們有認真想過這些科技是「為誰發展」的嗎?是誰掌握著這些人工智慧、這些高科技?是誰能夠決定由這些高科技所生產出來的利益的分配?

倘若上述這些問題的答案都是:資本家、資本家、資本家,那麼我們又如何能期待資本家轉性不再追求利潤的累積(即便因此會更大量浪費物資),轉而願意養活在他們看來很廢的「魯蛇」呢?也許不是不可能,但卻未免過於樂觀。

AlphaGo已經贏了兩場,我不知道當這篇文章刊出來時,世界棋王會是被直落三,還是能夠扳回局面。但我知道,人類若當真要開始反省人工智慧發展可能帶來的後果,我們不僅不能過度悲觀、恐慌,也得要避免重蹈「失控的正面思考」的覆轍。

曹家榮

資訊社會研究者。相信人與科技物的關係是理解當代社會的核心。目前為科技部計畫博士後研究員。