AlphaGo帶給我的感覺 (AlphaGo做到了甚麼?) - Thoughts about AlphaGo
2016/3/9~15,來自 Google DeepMind 的人工智慧 AlphaGo,在世界的注目下,與韓國職業九段棋士李世乭進行了五局圍棋對弈,取得了 4:1 的勝利。
這樣的比賽結果,不同的人在不同的角度下,產生了差異相當大的迴響。對我也引發了相當程度的震撼,深刻且迴盪的衝擊感,促使著我花了不少時間去瞭解與消化,寫下這篇文章。
AlphaGo 是什麼?
如前面所提,AlphaGo 是由 Google DeepMind 所開發的圍棋人工智慧。它是個程式軟體,相當“巨大”的程式,唯一功能是用來下圍棋,有單機式跟分散式兩個版本,兩者皆需要相當程度的硬體來運作。
- 單機式版:48 個 CPU 和 8 個 GPU
- 分散式版:1202 個 CPU 和 176 個 GPU
為何 AlphaGo 如此轟動?
圍棋的19路棋盤有361個位置可以落子,一局圍棋往往可以進行到上百手,據說總棋局的排列組合數高達10的170次方。因為圍棋的變化之多及複雜,一直以來都沒有一個電腦程式或人工智慧可以如人類般下棋,人類的智慧(經驗)往往可以在圍棋棋局上做出優秀的判斷,擊敗只能依循暴力或簡單規則下棋的電腦。
2015年10月,AlphaGo 就在一次秘密測試中以 5:0 擊敗了歐洲的圍棋冠軍樊麾二段,並在 2016年1月發出論文公開相關消息後,引起圍棋界及學術界兩界的注意。
AlphaGo 向李世乭發出挑戰時,各方人士皆認為李世乭可以輕鬆地應對,畢竟在這之前能跟職業棋士抗衡的電腦程式根本不存在,李世乭也一度充滿自信的說要以 5:0 取勝 AlphaGo。然而自第一天起 AlphaGo 就跌破大家眼鏡,快速地取得三勝,大家甚至曾擔心李世乭將會以全敗坐收,這樣的結果連 AlphaGo 的開發人員都相當驚嘆。
這比賽讓人查覺到,人工智慧已開發的潛力已經遠遠超越了大多數人的想像。
AlphaGo 如何下棋?
AlphaGo 下的每一步棋,大致都要經過三個步驟:猜測(採取)數個可能的落子位置、判斷這些落子可能性對整體棋局的引響、找出可能的最佳落子。這三個步驟跟其他許多下棋程式大同小異,甚至許多人或許也是依循這樣的步驟去考慮下棋方式。不過 AlphaGo 一個很重要的不同處在於,它使用了「類神經網路」來判斷每個落子的好壞。
如果一個人擅長圍棋,是因為經過長年的練習及思考,培養出了獨有的「棋感」來判斷棋局局勢,來幫助他下好每一子棋。AlphaGo 也辦到了相似的事情,它透過瀏覽大量的棋譜,以及跟自己或其他電腦不停地練習對弈,在「類神經網路」中累積對弈結果,培養(訓練)出它自己獨有的局勢判斷方式,用來評斷每一步棋的走向。
這個「類神經網路」是一種數學模型,AlphaGo 經過了無數次的對弈(大多數是跟自己下),在其中累積了「經驗」,所以可以對棋盤上的黑子白子做出相當程度的判讀,再利用電腦的優勢,快速地計算所有可能落子位置對勝率的影響,做出最可能獲勝的判斷。
到底 AlphaGo 累積了怎樣的經驗?這可能連他的開發者都無法回答。但是開發者們不斷調整這個像黑盒子般的數學模型,造就了 AlphaGo 的強大。
網路上對於 AlphaGo 的一些問題
- AlphaGo 不會打劫?所以 AlphaGo 總是避開打劫? AlphaGo 知道如何打劫,但它是否不善於此,這點無法確定,畢竟剛剛說過開發者也很難說明 AlphaGo 究竟理解圍棋到何種程度。或許就它的經驗上,認為打劫這件事在這幾盤棋都不是那麼必要的。
- Google DeepMind 與李世乭秘密協定了特殊規則? 不可能!光是提出這個問題就很不尊重比賽雙方了!一個代表學術界,一個代表圍棋界,一定都是慎重其事地看待這場比賽,過程跟結果一樣重要。
- 其實 AlphaGo 連接網路的背後,有著大型團隊支援它擊敗對手? 這說法我是在這裡看到的。嗯 … 這新聞認真的嗎?認真解釋的話,這場比賽的 AlphaGo 是分散式版本,而所謂的分散式,就是串連許多台超級電腦通力合作,在彼此連接上會需要網路,但也只有在所有電腦串連起來時才能稱為 AlphaGo,並不是很多個 AlphaGo 合作。
- AlphaGo 可能的弱點是甚麼? 這點無法確認,大多數人認為 AlphaGo 在開局與收官(局末)的處理偏弱,這可能是真的,但也只是「人」們這樣認為。AlphaGo 的大局觀可能與大多數職業棋士所認為的不太一樣,AlphaGo 有它自己獨特的準則,可能在我們眼中不太好的棋路,是因為我們跟 AlphaGo 所著重的重點不一樣所致。 AlphaGo 的弱點目前還未被證實,但能確定擊敗 AlphaGo 是可能的,李世乭做到了。
- AlphaGo 可以被訓練成其他領域的高手,取代人類的許多工作? 不行。AlphaGo 就是專為圍棋設計,除了跟別人下圍棋,它能做的就是跟自己下圍棋。或許 AlphaGo 的開發經驗可以引領另一領域的人工智慧誕生,但那不會是 AlphaGo。
- AlphaGo 的出現代表甚麼?人工智慧將取代人類?人工智慧將統治一切? 讓我們進入下一段。
AlphaGo 的出現代表甚麼?我對人工智慧的想法
接下來是我自己的想法,我對人工智慧與機器學習的瞭解也只比一般人多一點,但是我對相關技術抱持著相當期待與開放的態度。
AlphaGo 這次的曝光,已經在歷史上寫下了一筆紀錄,同時它也展示了我們對人工智慧的研究發展到何種程度。如文章開頭所說,我相當的驚訝這番成果,因為我接觸過相關技術,所以可以想像造就 AlphaGo 是多麼的不容易,它以事實來證明人工智慧發展的可能性。以 AlphaGo 的成就為基礎,相關技術將吸引更多的資源投入發展,人類將越來越接近更加完善且全面的人工智慧。
就像電腦帶來了資訊革命,人工智慧也勢必推動人類的另一項革命。就像 AlphaGo 讓圍棋界窺探到了更多的可能性是人類所以可以再進步的,在我的想法中,人工智慧將是個探照燈,為人類探索未知的領域,繪製航海圖等待人類去前進、進步。
而人工智慧是否有危險性?我想這無人可以保證。但絕大多數的電影中所出現的人工智慧,與今日的 AlphaGo 相比,其實不能當作一樣的東西。如今的科技要創造可以獨立思考各式各樣的事物,擁有相似於人類的情緒情感的人工智慧,是辦不到的,AlphaGo 與之相比只能歸類為弱人工智慧。電影中那彷彿擁有靈魂般的人造體,超樂觀估計也要十年左右才會出現,悲觀一點更需要五十年後才能完成,在那之前人類還會有很大的變化,現在擔心還過早了。
未來人工智慧將統治一切?反正許多人已經被電子產品統治了,換個厲害一點的也無訪(玩笑話)。當初電腦發明時,是否也有不少擔心電腦會反噬人類的言論呢?未知的事物的確是讓人既期待又害怕受傷害,但人類不就是這樣一路進步過來的嗎? 未來人工智慧會取代人類?這很有可能,人類的工作被電腦已經是進行式,如果有了商業化的人工智慧,人類需要親自處理的事情將更少。但這樣人類不就可以花更多心力在無法被取代的部分嗎?為何面對人工智慧要充滿未戰先降的想法呢?試著別被取代吧!
相關參考
- Google DeepMind 於2016年1月發表的論文:Mastering the game of Go with deep neural networks and tree search
- 黃士傑闢謠:請別再攻擊李世乭,打敗他的是分散式版的 AlphaGo (http://technews.tw/2016/03/12/do-not-attack-li-shishi-alphago/)
- 騰訊訪問樊麾 (http://tech.qq.com/a/20160308/018666.htm)
- 李喆:這兩盤棋 沒人會比李世石做得更好! (http://news.sina.com.tw/article/20160311/16357111.html)
- Facebook 研究員解析演算法技術:AlphaGo 為什麼這麼厲害? (http://technews.tw/2016/03/14/about-alphago-algorithm/)
- 淺談Alpha Go所涉及的深度學習技術 (https://dotblogs.com.tw/allanyiin/2016/03/12/222215)
2016/04/20 新增,參考連結