賭場穹頂上華麗的枝形吊燈盞盞相接、玻璃水晶反射下的燈光明亮的讓人分不清白天與黑夜。「加注。」 加注。」 「再加注。」
牌桌前很安靜,能聽見的只有這幾句話。
你凝視著手裡關鍵的AA,還沒有思路,荷官給你了KK9。一位深藏不露的玩家從pre-flop就跟住了3-bet,你不得不認真地考慮他手握的究竟是AK還是KK?你猶豫極了,不甘心fold掉手上的一對Aces,卻在此時無法跟住對方的Raise。「咬著牙上吧」你心中暗想。緊接著,轉牌竟然發出了一張A。手握AAAKK Full House,血液在暗湧。下注,對方毫不猶豫地跟注。河牌,空氣牌。意識到該你收割了。你check,可是對方竟然全推all in。對方真的是KK嗎?
你的目光落在籌碼上,幻想對手只是AK。棄牌嗎?你腦子一片混沌……
很難想像,這位招招沉穩且步步緊逼的玩家,是臉書公司與卡內基梅隆大學合作開發的一款新型人工智慧系統。
它在世界上最流行的撲克遊戲——六人德州撲克中擊敗了人類職業玩家。一場為期 12 天的比賽,打出 10000 手牌,15 名頂尖職業玩家慘澹收場。
赫赫戰績,不容小覷。
《麻省理工科技評論》稱,「一系列策略都令人驚訝:領先下注,或叫牌結束隨即押注下一場。十分到位的虛張聲勢,很像資深玩家。」
六人德州撲克被攻陷,人工智慧新賭神的故事翻開了新的篇章。
一、人工智慧打撲克的歷史
學術界研究德州撲克遊戲中的人機對戰歷史悠久,原因是——在解非完全信息博弈的問題上,德州撲克作為其中一個測評基準,非常有代表性。所以,學術界喜歡用德州撲克中的勝負來衡量算法的進展。全球有多個研究團隊關注這個問題,另有研究小組和六人德撲賭神研發團隊是競爭關係。
他們早在十幾年前就已經在領域裡聲名鵲起。他們是2007年NIPS論文的作者團隊,來自加拿大頂尖研究型大學阿爾伯塔大學。2015年,他們也有一篇《科學》的論文,基於神經網絡打撲克的算法,也沒有用超算。
風雲詭譎,這既是科學團隊之間的競爭,也是人機兩界賭神的戰爭。
2017年卡耐基梅隆大學團隊又勝一籌。人工智慧德州撲克系統 Libratus戰勝人類。
顯然,這是戰爭高發地區。時隔兩年,硝煙再起。
回到開頭一幕,2019年,卡耐基梅隆大學團隊的人工智慧系統再次戰勝人類,而且是德州撲克六人組。
研究人員布朗談到,「六人遊戲要複雜得多,遊戲結果很難預測。儘管在任何有限制的對戰中都會存在納什均衡,多人玩家遊戲中納什均衡難以有效計算,是否存在單一最優策略,即納什均衡,還不能確定。」
研究團隊不公開算法原始碼。據推測,原因可能是,在線賭博和在線遊戲平臺的老闆會非常生氣。
不過為了科研交流,這項研究的細節以及與人類玩家的對弈的過程會在《科學》雜誌上刊登。兩個關鍵點:擊敗人類玩家、權威期刊認可。所以,不少中外科技媒體絲毫不吝嗇讚美之詞,評價為:「裡程碑式的進步」,或者「人工智慧新突破」。但是,這究竟是多大的進步,六人德州撲克淪陷了。下一站是哪?是不是中國的麻將、撲克升級、詐金花。
帶著問題,我找到了美國喬治亞理工大學計算科學與工程系終身副教授宋樂博士。他也是第35屆機器學習技術國際會議署名論文數量排名第三的作者。
宋樂博士
二、解讀「賭神」算法
理解人工智慧打撲克的原理,需要先了解一下,究竟是圍棋難,還是德州撲克難?
第一、德州撲克和圍棋的玩法不一樣,圍棋的棋子在棋盤上皆可看到,而德州撲克是一種非完全信息問題,有公有牌、有私有牌。看得到自己的私有牌,看不到對手的私有牌,可以簡單理解為信息不完全問題。所以,解決撲克牌的好方法是「非完全信息博弈下的悔恨值最小」這套方法。悔恨是一個讓人反感的結果,人生的三個好詞,久別重逢、虛驚一場與失而復得,雖然都包含過悔恨,但是最終都反轉了結局才算是好詞。八卦掌傳人宮二,也是在生命快走到盡頭的時候從 「人生如棋,落子無悔」中悟出「如果真無悔,那該多無趣。」
第二、 從「撲克牌狀態空間很大」這個問題談起。狀態空間大就是可能的出牌的組合很大。在幾輪下注的過程中,比如說打多少錢?要採取什麼動作?打牌動作在這裡的意思是,跟還是不跟?加大籌碼還是不加籌碼?籌碼是十塊錢還是二十塊錢?這些事組合在一起有很大的一個空間。「狀態空間」越大,問題越難解。以狀態空間為標準來討論難度,百歲的德州撲克超過了千年的古老遊戲圍棋。
宋樂教授繼續講解:「回到『六人德撲賭神』這個話題上,難點在於遊戲的狀態空間很大,並不是在一臺機器可以解這麼一個東西,需要用超算。
這次『賭神』的技術亮點怎麼做到大規模,算力和存儲都比較有限的情況下,解決一個大規模的非完全信息的博弈問題。」
「六人德撲賭神」和Counterfactual regret minimization這個算法有很大的關係。如前文第一部分「人工智慧打德州撲克的歷史」中提到的,這個算法在2007年人工智慧機器學習頂級會議NIPS大會的論文《Regret Minimizationin Games with Incomplete Information》中提出。
人生戲與夢,賭場風與雲。
轉眼十二年了,諸多研究者依然在解決「非完全信息博弈的問題」的道路上不斷前進。
宋樂教授一語道出了這個十二年前的算法的關鍵,「亮點就是簡單、有效,且能在理論上證明可以得到納什均衡。」
十二年前的算法為後人鋪下了道路。
《數學簡史:確定性的消失》一書曾說,數學不是天然的寶石,只是人工的。那麼我們可以理解為,每一步有價值的研究都是科研工作者用心血打磨的寶石,普通的道路石子鋪成的,而科研之路則由寶石鋪就。
該人工智慧系統的研究團隊自己也在文章中寫得很清楚,只是把這個十二年前的算法用在德州撲克上,並且在實踐中效果好,理論上沒有任何保證。也就是說Counterfactual regret minimization算法在二人德州撲克上具有理論保證,能夠達到納什均衡,但是用到六人德州撲克上不行。如果記得還不夠清楚,請回到本文開頭研究人員布朗原話——「多人玩家遊戲中納什均衡難以有效計算,是否存在單一最優策略即所謂的『納什均衡』,還不能確定。」
換句話說,這次新賭神算法雖然實現效果好,但是無理論保證。
宋樂博士解釋:「可以理解為,算法是針對於德州撲克做了一個提高版。」。他進一步強調:「算法本身就是寫在紙上的這麼一個方法。算法思想是好的,但每個不同遊戲,算法都要適配。」也就是說德州撲克賭神的算法並不是說直接就可以用到麻將、撲克升級、炸金花上去。
讀到這裡,在線賭博和在線遊戲平臺的老闆們默默地在微信裡收藏了本文,並轉發給賭場運營人員。而人工智慧的骨幹技術人員則繼續往下閱讀,找到該技術的創新亮點。
三、解讀「賭神」算力
很多人可能不清楚,舉行一次人機對戰的成本很高,其中一項就高在電費。這些機器人或者人工智慧系統都是典型的「用電大戶」。一場比賽對計算資源的消耗非常大。網友戲言李世石吃飯,人工智慧用電。舉一例來說,天河二號超級計算機,如果正常運行,每年耗電量約為2億度,電費會超過1億元。而阿爾法圍棋下一盤的電費成本是3000美元,約合人民幣20000多元。
這位「六人德撲賭神」會不會也面臨著天價電費帳單?
然而,答案是否定的。這篇《科學》在職的論文最大的亮點是它不用超算,只需要很少的計算資源就能完成,少到只需不到150美元的雲計算資源。算法好了,就不用這麼多計算資源,這確實是算法的進步。
《麻省理工科技評論》也點評了算力,「值得注意的是,以前的算法都要在超級計算機上運行,而人工智慧德州撲克選手的算法在單個伺服器上就能運行。」
問題一:真的用150美元的算力實現的?
不能用一句話簡單的概括為,150美元的算力打敗了人類選手。過程分為兩個,一個是訓練的過程,一個是實際打牌的過程。該研究團隊有一系列打撲克的文章,研究團隊算法以前的版本使用了超算。換句話說,用超算計算出一個精準、全面的模型。在實際打牌的過程中,算力少了是因為使用了近似的算法。
什麼是近似算法呢?簡單的說,就是研究人員觀察到一種現象,用近似的算法去做這個問題,換句話說,改進主要是對原來的算法做了一個近似。能達到同樣的效果,也是一種算法的改進。但是如果沒有前期超算的算力投入,沒有得出一個精準、全面的模型的情況,近似算法就是空中樓閣。沒有第一層樓,哪有第二層樓?
問題二:如何解釋近似算法呢?
宋樂教授解釋說:「有點像真實世界一個場景,讓不同的畫家儘量真實的把它畫下來。每個人的畫法不同。有的畫家畫得特別好,寥寥數筆在畫布上呈現景物動態。算法用藍圖策略模型的方法對遊戲的收益函數做了一個降維的近似表徵。這是《科學》雜誌這篇論文技術上最大的亮點。在很小的存儲和計算條件下做到了。但是這個提高,比較起二人德州撲克變化不大,算法用了在六人德撲上,並且人類德州撲克選手試了。主要出來是實際效果好。文章自己也這麼說,沒有太多新方法,更不能理解為機器學習和人工智慧的裡程碑。」
講到這裡,《人工智慧新賭神:六人德州撲克被攻陷》的故事似乎可以落幕了,這並不能認為是機器學習的巨大進步。
四、人工智慧反思:不要「裡程碑」,要日拱一卒
人工智慧機器人阿爾法擊敗韓國圍棋選手李世石已三年有餘。
對公眾來說,人機對戰實錘了人類圍棋智慧的脆弱。對科技界來說,深度學習技術的爆發與廣泛應用會載入科技史冊。技術發展往往會按月度計算進程。摩爾定律以十八個月為周期。比爾·蓋茨說微軟永遠離破產只有十八個月。在人工智慧的紀元,三年已經很久了,但是這股自信轉化為對人工智慧無所不能的樂觀情緒似乎沒有消散。把舊的生產力給幹掉,換成新的生產力。人工智慧似乎在狂歡之中開上了高速公路。
計算機科學與技術專家、中國科學院院士、清華大學博士生導師,現任清華大學人工智慧研究院院長,張鈸2019年5月在接受《經濟觀察網》專訪時公開表示:
「人工智慧奇蹟短期難再現,深度學習技術潛力已近天花板。」
很多人工智慧研究人員、從業者認可這個觀點。他們對鼓吹人工智慧大踏步前進的論調非常反感:「什麼時候有新算法,降低算力需求才是有意義的。」
人工智慧的計算非常非常耗電,對環境的負面效應顯著。而加大算力支撐這種勢頭似乎難以遏制。
有機構一出手就買60塊英偉達DGX-2超算,近兩億人民幣。
微軟亞洲研究院首席研究員劉鐵巖,曾在MSRA,AI講堂2019校園行首站活動中談到,「很多研究都在追求 『大力出奇蹟』」。
另一位重量級學者,微軟亞洲研究院副院長、國際計算語言學協會主席周明,在雷鋒網2019CCF-GAIR大會上談到, 「無休止的計算資源軍備競賽。」
看來,算法不夠,算力來湊,成了人工智慧的「新款「解決方案。
但是算力真的會一直奏效嗎?
谷歌AI在一篇新論文《The Evolved Transformer》中提出的神經網絡架構搜索技術,將用於英語到德語翻譯的雙語評估替換分數提高了0.1,為了這點提高,卻花費了3.2萬TPU小時。人工智慧發展的車速在被高昂的算力硬拽,但是加速度卻沒有相應的提升。
機器學習的學術進步,積其跬步,日拱一卒。
這篇論文並不能帶來機器學習的突破性發展。只是在大眾比較關注的話題——六人德州撲克上取得了很好的效果。《科學》雜誌一年十二期,每個月一期。一般幾篇到十篇左右,並不是每篇都值得被讚頌為裡程碑。
宋樂教授強調了科學進展的普遍規律:「前人的方法,加上後來者的努力,方法積累方法,進而帶動提高,每一點的提高都非常不容易,科學研究就是慢慢地一步一步發展過來的。」
人工智慧已經進入攻堅期,會有更多的困難等待著技術推動者。