Re: [討論] 對電腦戰勝人類的看法
我是一個業餘演算法愛好者,棋力只有入門。
想以資工系出身的角度來分享一下我的感受和一些猜測跟對未來的期許。
我很想一一回應原文和回覆底下推文有關演算法的問題,
但AlphaGo論文已經在網路上公開那麼久,對演算法有興趣的人應該已經看過。
我想藉著比較偏哲學的開頭,再慢慢帶到我想說的東西,
試著用其他領域的東西來比喻我想表達的感受。
以下,正文。
--------------------------------------------------------------------
「電腦有沒有辦法下出人類無法下出的一步棋?」
理論(1)上是不行的。
這裡的理論上是架構在:電腦不創造新規則的前提下。
只要:數目方式一樣、貼目規則一樣、黑先白後等等圍棋規則都不變,
判斷目前情勢的方式是只要是人寫的,電腦就永遠不可能超越人類。
他只是以極高的速度無限逼近人類能給出的結果而已。
這個理論的關鍵在於:電腦如何判斷情勢?
只要判斷情勢的方法步驟是固定的,人類只要照著一模一樣的原則,
夠細心、不出錯、花足夠多的時間,都能夠做出一樣的事。
就好像你給電腦一個解二元一次的規則,並且不斷亂數給他新參數,
他可以以非常快的速度不斷給出你新參數的答案。
(並且在理論上是可以無限地做下去的)
任何二元一次的方程式給一個人類,只要他擁有足夠的時間,
知道二元一次求解的方法步驟,他都可以在紙筆上作出答案。
只是人類無法達到電腦的速度罷了。
那麼,電腦要是能夠創造新的判斷情勢規則呢?
你只是給他一個二元一次方程式的規則,
他自己解著解,便創造出了解二元二次、三元一次等等的方法,
這裡我們先假設:解二元二次、三元一次等等,都是在解方程式的範圍內。
如同電腦創造出的判斷情勢規則,也是適用現有規則的圍棋這個範圍內。
在理論(2)上,這個過程是不可逆的。
人類也無從理解電腦是如何辦到的。只能知道電腦透過某種方式辦到了。
或許有些人會有疑問:咦?你上面不是才說,人類只要有足夠時間,
只要是人類寫出來的東西,一步一步來都能夠重現嗎?
對,理論(2)上可以做出一樣的結果,但卻是無法理解的。
就好像四維以上的空間很難用圖形去理解,五維以上根本是難以想像了。
但我們可以用代數去解決這個困境,而且規則都是從三維的特性去延伸的。
用比喻上來說就是:
人類理解情勢判斷的方式是圖形化空間,
電腦創造出的情勢判斷是代數系統。
透過人類給的圖形化空間規則,電腦自行創造了四維、五維的代數系統。
人類可以透過觀察電腦的步驟方法,去重現四維、五維代數系統的運作,
卻永遠也沒辦法以圖形化空間去理解五維以上的運作。
在理論(2)的假設下,機器不需要發展出心靈。
人類就可以寫出自己無法完全理解其複雜運作的演算法了。
理論(2)以實務上來說就是:
參數、變數量、變化量、規則等等過多到單一人類無法同時記憶並理解。
或許擁有極大量紙筆的人類,依靠團隊一代一代做下去有辦法創造出來。
但現況就是單人絕對無法抵過CPU複雜運算的成果。
現有的AlphaGo我認為還沒有達到理論(2)的境界,
就我個人認為,目前AlphaGo的步數,即使現在沒有發現,
未來十年、二十年、百年後的人類也會發現的。
人機大戰賽前我有在資訊相關的社團和好友圈內發表過我的預測,
當初認為人機大戰戰績會是人:機 = 1:4。
在人類三連敗後,有人問過我會不會被橫掃,會不會我的預測被打臉。
我給的答案是:「雖然前面幾場的差距大到有點超乎我想像,
但我還是保持原看法,認為人類還是有機會掰回一場,maybe第五吧。」
沒想到李世石真的很給力,在第四場獲勝了。
讓AlphaGo進入排名系統,也讓我賽前的預測矇中。
心情上由於我一開始就認為機器會獲勝,所以並沒有一些棋手的失落感。
那麼,究竟為什麼我會在賽前預測人:機 = 1:4這個數字呢?
那是因為我假設AlphaGo是理論(1)近完全體的情況下和李世石交手。
對,你沒有看錯,我認為在理論(1)的情況下,人類棋手就已經敵不過電腦了。
詳細原因牽扯到一些個人撰寫演算法的心得,
和一些測試原理和AlphaGo採用的演算法特性,
但真的要說,賽前預測,情緒上的感覺多過於實際上理論。
講一個比較無關乎演算法理論的層面,
由於AlphaGo一直以來都是自己和自己對弈,
在賽前,官方發出的消息並沒有指出AlphaGo有持續和人類棋手對弈的經驗。
只要出現一手超出電腦事前運算的強手,人類就有機會。
沒道理五盤棋中不會出現一手,這是我會預測人機1:4很大的原因。
用事後諸葛的角度去說就是:
只要有一手強手是超出電腦事前運算的,就會導致連續性的參數錯誤。
不過,也像前三場差距超越我賽前的想像一樣,AlphaGo連續失誤的嚴重性也超乎我想像。
依照官方消息所說,
事後的修正是對於樹的廣度深度參數修正,演算法規則並沒有修改。
現在去研究他為什麼會失誤那步是無理的,
因為他並不是針對那步的計算出錯,而是單純沒有算到。
沒有算到的情況並不是人類眼中的漏算、失算,
而是他把資源用在計算更有價值的步數上。
雖然這樣說好像有點冒犯,
但情況就是:在當時的AlphaGo眼裡那是較無價值的一步,
他沒有想到對手會愚蠢到下那一步,所以資源沒用在上面。
用比喻來說就是只顧著殺對方玩家結果被小兵拆塔。
也可以理解為高估對方對於價值的判斷力。
對於廣度深度的參數修正,用簡單的方式說就是:
分一些深入計算高價值後續步數的資源,到價值比較低的步數上。
可以理解為:從傾全力投資高科技軍武、太空科技這種極端高科的狀態中,
修正成撥部分經費去處理原始步兵、騎兵。
用這個比喻去看待力挽狂瀾中的AlphaGo也很有趣:
因為只會用戰鬥機和火箭,於是拿一台戰鬥機(一步棋)去對付一個步兵(一步棋)。
在投資報酬率極低的情況下,國家就破產滅亡了。
以下幻想:
現在的AlphaGo,其實只要不斷和人類對弈,
對人類來說就已經無限逼近理論(2)了。
就像AlphaGo沒和李世石對弈前,並不知道自己對於高價值步數投入過多。
只要不斷和人類棋手對弈,遲早能夠得到針對人類棋手的最佳參數。
在人類極限範圍內投入所有資源就好。
這種投資策略對於人類來說幾乎是當前局面的窮舉結果了。
再進一步,透過對弈過程獲取對方習性去修正情勢判斷或廣度深度的參數,
針對對方棋力下出對方算不清的步數甚至是騙著。
對人類來說就已經是理論(2)下的演算法了。
至於人機再戰,我認為依照現有的比賽規則,人類的勝率只會越來越渺茫。
原因非常單純:處理速度。
即使人類思維方式再怎麼進化,
只要是可以量化、可以轉換為數值的,電腦皆可處理。
只要圍棋規則不變,目數、官子就是可精確計算的。
即使演算法效能再也不提升,只要硬體效能進步就夠打趴人類棋手了。
現有的AlphaGo持續自我對弈下去,
會不會進化到每一手皆得最佳解的境界?
這裡先假設最佳解存在,我個人的臆測是不會。
這純粹是我個人對於蒙地卡羅演算法的理解。
蒙地卡羅的本質還是機率統計理論,
有亂數、有機率、有統計,就會有誤差。
問題只是誤差的大小而已。
另外一個假想問題是樣本的問題。
若從古至今的圍棋棋譜皆有著一種根本性的問題存在,
AlphaGo也無法擺脫這個根本性的問題。
(假設這個問題存在,很有可能這種根本性問題是超乎人類所能理解的,
若有個演算法可以找出這個問題並解決他,那就是貨真價實的理論(2)演算法。)
再來討論,何謂最佳解?
勝率最高?勝目數差最大?
大家都知道,目前的AlphaGo是以勝率高取向,
其實在前首戰時就已經有資訊背景的人猜測是如此,
事後相關人員的社群動態以及發佈在網路上的AlphaGo相關論文也證實了。
會以勝率高為取向,我個人認為是演算法特性綜合優化效能的結果。
以我個人理解,人機大戰的AlphaGo是沒辦法做到高目數勝差取向的。
勢必得加入其他演算法才有辦法做到。
但這似乎只是要不要放的問題,而不是能不能放的問題。
至於會不會放,我也很難說,但我傾向於不會放。
畢竟現有圍棋規則並不是追求最大目數勝差。
就好比目的是求解二元一次,能在時間內解出來就是最佳解,
並不需要過程優美。(更何況為了優美必須付出的成本或許會高到時間內無法得解。)
本來還想講一些,
個人覺得圍棋演算法對人類棋手的輔助功能和未來可以發展的方向,
礙於篇幅和我累了,真的有興趣可以私信討論。
以上多數內容純屬個人看法和臆測,歡迎對演算法有興趣的朋友來信討論。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.234.153.156
※ 文章網址: https://www.ptt.cc/bbs/GO/M.1478054628.A.464.html
※ 編輯: hioska (36.234.153.156), 11/02/2016 10:46:57
→
11/02 10:54, , 1F
11/02 10:54, 1F
→
11/02 10:54, , 2F
11/02 10:54, 2F
我是認為在理論(1)架構下接近理論(2)但還沒達到理論(2)的境界啦,
畢竟現在AlphaGo看起來很新穎的下法,人類還是能夠分析,
感受到那一步的強大。
要達到理論(2)的境界我認為要第一步讓人類完全無法理解到底在做什麼。
直到AlphaGo連續下了五手,人類看了後五手,回去推算才發現原來第一手極神。
這才算是下出一步人類無法理解的棋吧。
※ 編輯: hioska (36.234.153.156), 11/02/2016 11:02:40
→
11/02 10:56, , 3F
11/02 10:56, 3F
→
11/02 10:57, , 4F
11/02 10:57, 4F
→
11/02 10:58, , 5F
11/02 10:58, 5F
→
11/02 10:59, , 6F
11/02 10:59, 6F
→
11/02 11:00, , 7F
11/02 11:00, 7F
→
11/02 11:00, , 8F
11/02 11:00, 8F
我中段有提到,我認為現在的AlphaGo只是下出人類未來十年、二十年後才會發現的步數,
人類現在下不出來,不代表未來下不出來。
至於關於第四戰挖的修正,時間久遠我也記不清楚原文是怎麼說,
我是看內部人員Twitter提到,是修正關於廣度價值的判斷。
※ 編輯: hioska (36.234.153.156), 11/02/2016 11:08:49
推
11/02 11:06, , 9F
11/02 11:06, 9F
如果有需要的話歡迎阿。
→
11/02 11:07, , 10F
11/02 11:07, 10F
→
11/02 11:08, , 11F
11/02 11:08, 11F
→
11/02 11:09, , 12F
11/02 11:09, 12F
感覺得出氣勢磅礡表示還是在同一個層次,
看不出用意結果被打很慘是高出一個層級。
這是我的區分方式啦,畢竟我是想分享我的感受。
我認為你說的很有道理。
※ 編輯: hioska (36.234.153.156), 11/02/2016 11:15:11
→
11/02 11:10, , 13F
11/02 11:10, 13F
→
11/02 11:11, , 14F
11/02 11:11, 14F
→
11/02 11:11, , 15F
11/02 11:11, 15F
→
11/02 11:11, , 16F
11/02 11:11, 16F
→
11/02 11:11, , 17F
11/02 11:11, 17F
→
11/02 11:11, , 18F
11/02 11:11, 18F
→
11/02 11:12, , 19F
11/02 11:12, 19F
→
11/02 11:13, , 20F
11/02 11:13, 20F
→
11/02 11:14, , 21F
11/02 11:14, 21F
→
11/02 11:15, , 22F
11/02 11:15, 22F
----------高光-----------
→
11/02 11:15, , 23F
11/02 11:15, 23F
感謝啊!原來有中文資料阿,害我還在想要不要回去翻Twitter苦惱中 (?
所以的確是策略網路在正解算太深以致無法算到機率極小的挖,
但並不是靠工程師修正參數而是他自己變強就解決了 XDDDD
-------------------------
→
11/02 11:15, , 24F
11/02 11:15, 24F
的確不衝突,但我認為追求勝率最高和追求目數最高還是有點不同。
我不知道這樣比喻是否同樣可以用在圍棋上,
但這就像分岐度小、終端值小、路徑加權高,
和分歧度大、終端值高、路徑加權低的差別。
高風險高報酬 (?
→
11/02 11:16, , 25F
11/02 11:16, 25F
→
11/02 11:18, , 26F
11/02 11:18, 26F
→
11/02 11:23, , 27F
11/02 11:23, 27F
→
11/02 11:24, , 28F
11/02 11:24, 28F
我好像沒有分析到兩個理論的效能問題,
不過理論(2)演進過程需要吃比較多堆疊空間這是肯定的。
※ 編輯: hioska (36.234.153.156), 11/02/2016 11:30:47
→
11/02 11:29, , 29F
11/02 11:29, 29F
→
11/02 11:29, , 30F
11/02 11:29, 30F
→
11/02 11:29, , 31F
11/02 11:29, 31F
理論(1)翻出來的就像現在的google小姐,
這就是我想表達的境界不同 (ˊ˙_˙ˋ)
→
11/02 11:34, , 32F
11/02 11:34, 32F
→
11/02 11:34, , 33F
11/02 11:34, 33F
AlphaGo已經透過了我們還不能理解的方式下出了威猛的棋。
我上面的說法的確有瑕疵。
不過我的假設是未來的人類有機會研究出那一步棋。
也就是對於人類整體來說並不算是理論(2),
但對於現代棋手來說,似乎當作理論(2)也沒什麼不妥。
也就是我論述的基礎是:
現代人能夠理解的東西,未來人自然有機會發現。
現代人完全無法理解的東西...未來人能否發現是未知。
而理論(2)就是用來發展人類沒有機會理解的東西。
※ 編輯: hioska (36.234.153.156), 11/02/2016 11:40:29
→
11/02 11:39, , 34F
11/02 11:39, 34F
不會 (ˊ˙_˙ˋ)
有看完文章和回文的人比我想像中的多一些,小小感動。
※ 編輯: hioska (36.234.153.156), 11/02/2016 11:44:49
→
11/02 11:51, , 35F
11/02 11:51, 35F
→
11/02 11:51, , 36F
11/02 11:51, 36F
→
11/02 11:51, , 37F
11/02 11:51, 37F
→
11/02 11:51, , 38F
11/02 11:51, 38F
好像有點主觀。但不論是哪一個理論我都蠻佩服的。
現在的AlphaGo強度也遠遠超乎我當初的想像。
不過我認為AlphaGo還沒脫離理論(1)的感受主要源自開局還是古老棋譜中常見的。
我不認為圍棋的開局會止步於此,未來還是會有發展的。
等未來的發展輸入棋譜庫後,或許還會再進化。
這或許是主因吧,總之就是個人感受。
畢竟本系列串討論的就是對於機器戰勝人類的看法。
而我認為機器目前還處在人類同等級階段,只是跑在前面一點。
還沒有達到完全擺脫人類影子的階段。
另外回覆一下上面,
說明一下我對於高勝率和高勝目數選擇會不同的看法,
這是個假想情境:
整盤棋已確定局勢,其他部分不論先後手結果皆是+0目。
某步若對方正確應手我方-1目,對方若錯過程任何一手我方+5目,
另一步不論對方應手如何我方皆+1~2目,
前者的期望值,略高於後者,但後者勝率100%,前者有輸的可能。
※ 編輯: hioska (36.234.153.156), 11/02/2016 12:12:36
→
11/02 12:54, , 39F
11/02 12:54, 39F
→
11/02 12:54, , 40F
11/02 12:54, 40F
→
11/02 12:55, , 41F
11/02 12:55, 41F
→
11/02 12:57, , 42F
11/02 12:57, 42F
推
11/02 12:57, , 43F
11/02 12:57, 43F
→
11/02 12:57, , 44F
11/02 12:57, 44F
→
11/02 12:58, , 45F
11/02 12:58, 45F
→
11/02 13:00, , 46F
11/02 13:00, 46F
→
11/02 13:01, , 47F
11/02 13:01, 47F
→
11/02 13:02, , 48F
11/02 13:02, 48F
→
11/02 13:04, , 49F
11/02 13:04, 49F
→
11/02 13:04, , 50F
11/02 13:04, 50F
→
11/02 13:05, , 51F
11/02 13:05, 51F
→
11/02 13:06, , 52F
11/02 13:06, 52F
→
11/02 13:07, , 53F
11/02 13:07, 53F
→
11/02 13:08, , 54F
11/02 13:08, 54F
推
11/02 13:14, , 55F
11/02 13:14, 55F
→
11/02 13:15, , 56F
11/02 13:15, 56F
→
11/02 13:18, , 57F
11/02 13:18, 57F
→
11/02 13:19, , 58F
11/02 13:19, 58F
→
11/02 13:19, , 59F
11/02 13:19, 59F
有可能對我來說,圍棋是個不需要理論(2),
人類就有辦法自己達到終點的問題吧。
這可能信仰多過於實際理論了,
簡言之電腦只是加速了這個進程。
在未來人類可以發現出每一手棋的假設裡面,
在圍棋裡或許沒有理論(2)出現的餘地。
由於我的理論(2)是創造新的規則,而不是新的下法。
所以我比較想說的或許是對於圍棋規則本質上的改變。
不過對於情勢判斷上,AlphaGo似乎也讓不少棋手開始改觀,
或者開始分析AlphaGo的著手,依照這個觀點來說,
AlphaGo的確已經達到理論(2)的境界,
也沒有必要用這種定義去區分他是哪個理論。
※ 編輯: hioska (36.234.153.156), 11/02/2016 17:29:31
推
11/03 09:00, , 60F
11/03 09:00, 60F
→
11/03 09:00, , 61F
11/03 09:00, 61F
→
11/03 09:01, , 62F
11/03 09:01, 62F
→
11/03 09:01, , 63F
11/03 09:01, 63F
→
11/03 09:03, , 64F
11/03 09:03, 64F
→
11/03 09:03, , 65F
11/03 09:03, 65F
→
11/03 09:04, , 66F
11/03 09:04, 66F
→
11/03 09:05, , 67F
11/03 09:05, 67F
推
11/07 13:42, , 68F
11/07 13:42, 68F
→
11/07 13:43, , 69F
11/07 13:43, 69F
討論串 (同標題文章)