Skip to Content Facebook Feature Image

人機大戰之深度學習

政事

人機大戰之深度學習
政事

政事

人機大戰之深度學習

2016年03月14日 19:51 最後更新:20:19

世界棋王李世石鬥人工智能程式AlphaGo的世紀大戰,步向尾聲,雖然李世石在周日終於扳回一局,已擺脫食光蛋的災難,但在五局三勝制中,李世石已有輸無贏,無法逃離被電腦KO的厄運。

上一次人機大戰是1997年那場國際象棋對決,電腦深藍擊敗國際象棋大師卡斯帕羅夫,但如我上次所講,卡斯帕羅夫誤判深藍的一個錯誤為妙著,搞到自己情緒大受影響而落敗,雙方棋力未分高下。如今AlphaGo玩的是複雜很多的圍棋,可以行走的選擇比宇宙內的原子數量還多,這才是電腦人工智能的真正考驗,而AlphaGo可以清脆獲勝,可見它和深藍已經不可同日而語。

開發AlphaGo這個人工智能軟件的是谷歌旗下的DeepMind公司,這間公司在2010年創立,負責人哈薩比斯(Demis Hassabis)本身就是國際象棋高手,1997年他還是牛津大學學生時,就親身旁觀了深藍對的世紀大戰。

哈薩比斯設計AlphaGo,要超越深藍那種水平,深藍的特色是「人手研發」,等如程式設計師教電腦捉棋,設計師篩選出多個國際象棋大師的下棋資訊,將其轉化為具體規則和啟發,叫深藍去模仿。深藍強在記憶力和運算力,但它捉棋的能力,理論上不會超過程式師教他的東西。

但AlphaGo卻植入了學習能力,它可以通過練習和學習,積累「自己的」經驗,這與人類的思維方式更為相似。它絕對可以學到超過程式設計師輸入的資料。

技術一點去講,傳統的人工智能用的方法是建構一棵「搜索樹」(search tree),去幅蓋所有可能性,在圍棋中因為可能性太多,令這種方式失效。所以AlphaGo是用另一種建構方式,首先它也建構一棵「高級搜索樹」,但更重要的是和一個「深度神經網絡」(deep neural networks)結合。所以謂神經網絡就是模仿人類以神經元為單位的思考方式,神經元之間會溝通。而AlphaGo的深度神經網絡有12層,包含了數以百萬計類似神經元的連接單位。其中一個神經網絡是政策網絡,它負責行下一步棋,另一個神經網絡叫評價網絡,每一刻都在評估誰會贏出這一個棋局。

好了,哈薩比斯設計好AlphaGo後,就當小孩子那樣培訓它,首先讓它學人類棋手在過去的棋局中的3000萬種下子方法,直至訓練到AlphaGo有57%機會估中人類對手的下子方法(在AlphaGo之前的紀錄是47%)。

但這還不夠,哈薩比斯的目標不是叫AlphaGo去模仿人類的下子方式,而是要去打敗他們,為此目標,AlphaGo要學習發展自己的新下棋策略,方法是自己和自己捉棋,在神經網絡之間捉棋,這個試誤法(trial and error)有個特別名稱,叫加強式學習(reinforcement learning),這就是它自己和自己捉棋的不斷自學的方式。人類捉棋一天只能捉三局,但電腦一天可以捉100局,AlphaGo至今捉了的棋局,其對手李世石捉到100歲也捉不到那麼多。當然背後還要有谷歌超大的雲計算能力去支持。

AlphaGo練好工夫後,就要打實戰,先和所有玩圍棋的人工智能軟件比賽,所向無敵後挑戰歐洲冠軍,如今再戰世界冠軍李秀石。

AlphaGo這樣一個有超強自學能力的電腦,除了令人驚嘆外,亦有少少恐怖。真實版鋼鐵人馬斯克(Tesla電動車公司老闆)就有點擔心,他和谷歌老闆佩吉(Larry Page)很熟,馬斯克一直擔心谷歌大搞人工智能,終於會有一個瘋狂科學家,開發出一個失控人工能系統,操控全世界。馬斯克見到AlphaGo大勝李世石之後,話人工智能的發展,比他想像快了10年。我們將來可能不止要擔心人工智能機械人搶了我們的工作,還要怕它們會統治全世界!

盧永雄

往下看更多文章

電腦KO世界棋王前傳

 

電腦的能力震驚世界。谷歌的人工智能電腦阿爾法圍棋(AlphaGo)和來自南韓的世界圍棋冠軍李世石展開世紀大戰,在五盤三勝制的比賽,電腦AlphaGo已贏了兩局,周六可能已是決勝局了。

賽前李世石滿有信心,話他打贏人工智能電腦並無懸念,如果他5:0戰勝AlphaGo後,AlphaGo下次又會再來挑戰。他甚至認為AlphaGo和他比賽只為收集他的數據。

也不止李世石看好自己,事前有很多人看好李世石,棋聖聶衛平話,人工智能機器和人類對弈,基本沒有什麼機會,100%是李世石贏得勝利,因為電腦有它不可克服的問題。圍棋每一種局面變化都會有一種判斷,第一招有361個選擇,這個時候還好判斷。但到圍棋第100招時,就已經有100*361個判斷,這中間會有巨大的計算,這種巨大變化是機器無法解決的問題。

幾日前的話音未落,到如今李世石已連輸兩局,他已經改口,目標變成為「希望自己能贏一局」。

在評論如今這場世紀大戰之前,不得不提提1997年那場電腦深藍擊敗國際象棋大師卡斯帕羅夫的世紀之戰,這是如今棋王電腦對決的前傳。當日卡斯帕羅夫事前也是滿有信心,結果卻鍛羽而回,關鍵是在轉捩點的第二場比賽,深藍在其中一步,當各方都認為它應該用皇后進攻,但深藍「思考」了異常長時間後,卻選擇換卒子。

卡斯帕羅夫想不通深藍為何下這步棋,他猜疑電腦有能力往前預測20步,它已懂得戰略思維。本來按當時的形勢,卡斯帕羅夫已落於下風,但仍有很大機會守和。但他認為電腦可以提早算出20步,不會犯錯,深藍這樣下棋,顯示它已計好即將獲勝。卡斯帕羅夫心想還有四場比場要打,所以選擇棄守這一場比賽。

第二天卡斯帕羅夫的助理對他說,他們整晚在重擺棋局,發現那一場比賽只要再下7個回合,就會逼得打和。至此卡斯帕洛夫信心大為動搖,他現在已在失敗邊沿,他犯下國際象棋至高無上的罪:他放棄了本來可成和局的棋,這是一個令人困窘的錯誤。在隨後幾場比賽,卡斯帕羅夫都打不出水準。在最後決勝局,他在第7步犯上大錯,在12步之後放棄,大發脾氣離場。

深藍贏了,但沒有贏得轟轟烈烈,卡斯帕羅夫充滿抱怨,認為深藍在第二局那著怪棋,是設計者IBM作弊,是「馬勒當那的上帝之手」,馬勒當那在1986年世界杯決賽用手把球撥入龍門。但IBM事後解釋,深藍下那一著問題棋,既非一種詐術來誤導卡斯帕羅夫,也不是深藍聰明得下一著怪棋,真相簡單不過,這只是電腦程式設計上的一個漏洞(bug)! 只是卡斯帕羅夫想得太複雜了。卡斯帕羅夫當然不接受這個答案,不斷批評,讓這場世紀對決,留下了遺憾。事實似乎是,深藍的確運算能力超強,深藍甚至懂得戰術,但其實他不懂戰略。只是對手斯帕羅夫以為深藍懂得戰略,又想不到它有漏洞,錯判對手,才致落敗。當然,勝了就是勝了,但單從棋力的角度而言,深藍未證明它能超過人類。

不過今次亮相的AlphaGo,下棋卻展現大師風範,在第二局後,李世石都承認AlphaGo每一著都下得完美。它學習了人類的思維方式,再加超強的學習能力,它在下遠比國際象棋複雜的圍棋,但卻展現了戰略思維能力。電腦在下棋方面的思考能力,很可能已超過人腦,它是如何做得呢? 這樣聰明無比的電腦,會否威脅到人類的安全?

盧永雄

你 或 有 興 趣 的 文 章