作者BluffKing (毒奶王)
看板GO
標題Re: [問題] 贏少目的勝率會高於贏多目的勝率?
時間Fri May 26 23:07:48 2017
原PO底下推文不夠精闢 恥於同流另回一篇
※ 引述《solomn (九米)》之銘言:
: 看了討論文
: 說AI只考慮勝率
: 那麼為什麼贏少目的勝率會高於贏多目的勝率?
: 棋理是如何解釋
: 謝謝
這跟「棋理」沒有關係 是AG的運算模式所造成
簡單講就是
剪枝對勝率影響的效果在某些時候會大過目數對勝率的影響效果
比如說今天要收官了 盤面大概AG贏20目
假設這時候有兩個選點:
A點:先手5目,可是後續一套比較複雜
B點:後手-5目,而且盤面上明顯在送,但可以減少10M個節點的計算量
由於AG「只管贏棋不管贏多少」的目標設定
經過勝率計算後很可能反而去選B點這種莫名其妙送菜的點
因為反正它現在還贏20目
它不需要去冒這10M個節點的計算風險 搞不好其中有殺龍翻盤手段
請注意...哪怕狗狗的TPU算度再強
程序本身所使用的蒙地卡羅法並沒有人類所謂「局部算清」的這種概念
它永遠面對的是仍有無數可能著點的全域...
在沒有辦法窮舉的情況下
大量減少分枝但是還可以贏的著點 雖然表面上在送
對電腦來講反而是最沒有風險的著點
這種為了減少計算量進行退讓的事情其實人類職棋也是常常在幹...
你看那讀秒階段 勝勢一方真的有辦法處處局部算清官子滴水不漏????
哪有可能~~~~~~~~
幾乎多少都會送一點 換取棋形的穩定
............只是說職棋送著送著送到被翻盤屢見不鮮
AG貌似送了一堆而且送的很荒謬但還是很穩
最後回到所謂「棋理」的部分...
所謂「棋理」我個人定義為窮舉後的最佳手法
在開局階段無論電腦或人類都不可能進行窮舉......
所以即使是AG也只能說是近於道 無法真正描述什麼是道
可是官子階段就不同了...
不只是職棋有辦法憑藉強大的局部計算能力算清
舊式的以暴力計算為基礎的圍棋軟體更是滴水不漏
我覺得AG應該設定成:
比如說它覺得勝利(或認輸)的標準是70%(或30%)
那接下來的遊戲進程就交給另一套以暴力計算為基礎的軟體來進行目數極大化的工作
以免後續的官子根本不能看XD
如果覺得這樣不保險
甚至可以嘗試寫一套判斷何時應該切換模式的學習程序讓AI學習...
只要抓住了轉換模式的時機
以AG強大的硬體配備跑暴力計算軟體 在後盤血虐職棋根本不是夢!
有夢最美...讓我們期待見證「棋理」的那一天!
哈哈哈哈~~~~~~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.13.133.170
※ 文章網址: https://webptt.com/m.aspx?n=bbs/GO/M.1495811271.A.FC9.html
1F:推 darkseer: 最後一段的學習程序可能有點困難? 既然不切換下也贏,05/26 23:11
2F:→ darkseer: 說不定它自己穩定的學習結論就是永遠不切換 :p05/26 23:12
3F:→ darkseer: 或者說缺乏適合的對練對象來進行這個學習05/26 23:14
4F:噓 ilw4e: 精闢你__,廢話一堆05/26 23:20
5F:→ Uizmp: 我倒是覺得因為雙方接近的棋局, alphago展開的分支比較詳盡05/26 23:21
6F:噓 LeeSeDol: 謝謝你另回這篇可以放心噓05/26 23:22
7F:→ Uizmp: 在新版本學習的過程中,被原本系統評估勝率過低而投降局05/26 23:23
8F:推 doom3: 最後不太可能 Google想做學會下棋的AI 不是完美的下棋機器 05/26 23:23
9F:→ Uizmp: 其後分支還會不會展開很難說05/26 23:23
10F:→ Uizmp: 換言之,如果AG判斷已經輸掉的局,他會投降而不是等對方出錯05/26 23:29
11F:→ Uizmp: 像今天配對賽,在AG投降之後,價值和策略網路大概就失效了05/26 23:30
不是 我的意思就是說把AG改成如果它要投降那就改由暴力計算軟體接手
也就是根本上取消投降機制的意思
用目數極大化方式後盤狂追逆轉才能真正體現棋道!
※ 編輯: BluffKing (101.13.133.170), 05/26/2017 23:35:37
12F:推 shyangs: 大優勢和大劣勢行棋 AG 不會. 因為大劣勢的AG會投降05/26 23:37
13F:→ shyangs: 所以大優勢, 大劣勢行棋永遠不會學習到網路中05/26 23:38
這就是為什麼我說要另寫一個學習程序的原因
切換模式的判斷必須也只能是獨立的
※ 編輯: BluffKing (101.13.133.170), 05/26/2017 23:40:56
14F:→ Uizmp: 目前看來AG只學到從頭開始穩穩贏,還有勝率過低的時候會投降05/26 23:41
15F:推 aegis43210: 絕藝就是類似這樣的設計,所以死活問題很嚴重05/26 23:45
可能還在學習吧
另外一個重點是程序本身計地部份必須毫無bug...
我覺得這部份沒弄好很可能是其他軟件輸AG的原因
16F:推 OROCHI97: 重點是,誰能讓AG大劣勢投降....05/26 23:49
AG自己
17F:推 shyangs: 優勢退讓, 劣勢送頭. 最後學到半目勝05/26 23:53
18F:推 hotisaac: 關鍵點:誰能讓阿法狗出現大劣勢 這已經是不可能的了05/26 23:54
19F:推 shyangs: 李世石, 三寶, 醫療, 太空05/26 23:55
20F:→ Uizmp: 看後續數據會不會公布今天配對賽有沒有風向大逆轉05/26 23:56
21F:噓 ilw4e: 在版上發5篇篇篇廢文也不簡單05/26 23:58
分明U文,懂? 不要謾罵
22F:噓 HeterCompute: 你的最後一段毀了這篇......05/27 00:18
想見證棋理難道臭了嗎?
※ 編輯: BluffKing (101.13.133.170), 05/27/2017 00:34:51
23F:推 MicroB: 收官時 如果都算清了 所謂多五目但有風險是何種風險?05/27 00:29
24F:→ MicroB: 如果到官子時真的都算清了 送5目和多拿5目勝率應該都是100 05/27 00:31
25F:→ MicroB: 在勝率100時決策方式任意選或是單純選計算複雜度低吧 05/27 00:32
26F:→ MicroB: 若是官子時還有機率問題表示以AG算法那時也還沒算清吧?05/27 00:33
我上面有提到,蒙地卡羅無法算清
全域計算必須剪枝使得算清變成不可能
但用暴力計算軟體只計算局部
局部算清是可以做到
只是說又會碰上老問題
就是棋形切割判斷和死活問題
※ 編輯: BluffKing (101.13.133.170), 05/27/2017 00:44:54
27F:→ indium111: 如果都算清了,贏1目和贏10目對電腦都是一樣的 05/27 00:35
28F:→ MicroB: 其實設個門檻當勝率到100時在100的步中選贏最多的 05/27 00:36
29F:→ indium111: 亂下就很合理了,只要不亂下到會輸棋就可以了 05/27 00:36
30F:→ MicroB: 是都一樣 所以沒必要特別選1目的啊 所謂贏10目有風險那是 05/27 00:37
31F:→ MicroB: 沒把贏10目那個算清吧 05/27 00:37
32F:噓 HeterCompute: 因為你根本不懂官子要好到底是要加強MCTS還是VN啊 05/27 00:37
33F:→ indium111: 對於AG組成之一的MCTS,結果只有勝和敗兩種,不存在 05/27 00:37
34F:→ indium111: 贏多少目和輸多少目的差別 05/27 00:38
35F:→ indium111: 或許這就是AG在自覺必勝和必敗時會出現亂下的原因吧 05/27 00:40
36F:推 MicroB: 若是在人類可"算清"的情形還有MCTS決策 是否有極為小可能 05/27 00:41
37F:→ MicroB: 的機率在AG必勝時意外下錯讓人反敗呢? 因為人已算清但MCTS 05/27 00:42
38F:→ MicroB: 仍有機率巧合? 05/27 00:42
39F:→ indium111: 當盤面越小時,MCTS的勝率估算會越接近真實的機率 05/27 00:44
40F:→ indium111: 而且Alphago不是只有MCTS而已,還有深度學習的兩套網路 05/27 00:46
41F:推 MicroB: 若是真可算清 真實機率就是100 那MCTS給的就是99.9和99.8 05/27 00:47
42F:→ MicroB: 我的意思就是比方說在MCTS機率大於99時 讓VN做主 05/27 00:47
43F:推 ksm: 我會定義棋理為無法窮舉下大多情況下的近似最佳解 05/27 00:49
44F:→ indium111: 人類對於最佳解的定義和AG不一樣吧,除非AG打掉重練 05/27 00:53
45F:推 aegis43210: 重點還是RL策略網路的強度,愈強就愈不依賴MCTS 05/27 01:19
46F:→ aegis43210: 深度學習是為了讓AI能用直覺贏得比賽 05/27 01:21
47F:→ aegis43210: 而不是更加強化搜尋的準確度,那要等量子電腦實用化了 05/27 01:22
48F:推 iamstudent: 玩RTS兵力贏太多時可以不用控兵輾過去,虧也沒關係 05/27 01:34
49F:→ ykes60513: 180打120人口怎麼輸 飛龍騎臉也贏了 老子專業解說!! 05/27 03:27
50F:推 mathbug: 解釋得很清楚 05/27 06:32
51F:推 shehrevar: 我看比賽改成柯潔讓阿法狗3子好了,最後勝負在2目之內 05/27 07:24
52F:→ shehrevar: ,反正贏棋的局面狗就亂放子 05/27 07:24
53F:推 tim32142000: 感覺原PO演算法懂很多,加個收官模式,隨局面切換, 05/27 08:13
54F:→ tim32142000: 然後判斷何時用什麼模式的精確度夠高,就又會贏 05/27 08:14
55F:→ tim32142000: 又能贏很多目了 05/27 08:14
56F:噓 xhakiboo: 紅明顯 還是很多人覺得贏就是要贏到最多(? 05/27 08:39
57F:推 tim32142000: 收官損目可以說AlphaGo收官能力不如職業棋士嗎? 05/27 08:41
58F:→ tim32142000: 還是寧願損目也要搶先手是更高強的棋藝? 05/27 08:42
59F:→ tim32142000: 在人工智慧上,減少硬體的計算負擔的確很重要 05/27 08:43
60F:→ tim32142000: 對AG開發團隊,能用最少的計算量確保一定獲勝, 05/27 08:45
61F:→ tim32142000: 應該是他們的終極目標? 05/27 08:45
62F:推 indium111: 以計算來說,不管是下在哪裡都是在減少分枝吧 05/27 08:54
63F:→ indium111: 個人覺得出現官子亂下最大的原因還是在於MCTS 05/27 08:56
64F:推 Kydland: 只要贏就好 這對於設計程式比較簡單 幹嘛去下一堆設定 05/27 10:07
65F:→ Kydland: 更何況人工智慧雖然進步飛速 都還是在開發階段 確立簡單 05/27 10:07
66F:→ Kydland: 可執行的目標比設定一堆目標還來得實際多 05/27 10:08
67F:→ Kydland: 而且這本來就不是只為了陪人類下棋設計的 05/27 10:08
68F:→ Kydland: 贏越多越好 那AG就會下超猛的 從頭猛到尾 05/27 10:10
69F:→ Kydland: 這又更不像人類了 05/27 10:10
70F:→ yenchieh1102: 好奇原po從什麼資料位基礎做出這篇分析(? 05/27 10:37
71F:→ ssccg: 單純是目標設定問題,AG目標就只有估計勝率,勝率接近到它 05/27 11:45
72F:→ ssccg: 分不出來的都是一樣的,沒有特別因為什麼理由選什麼變化 05/27 11:45
73F:→ ssccg: 都只是從一堆以目標來說都一樣的變化隨機選而已 05/27 11:45
74F:推 kenco: 現在目標根本是設定贏最少目吧 05/27 12:33
75F:→ Uizmp: 那是因為贏多的時候AG早就投降了 05/27 12:37
76F:推 bxxl: 可以看deepmind CEO演講, 他們的目標是通用型AI平台 05/27 12:53
77F:→ bxxl: 希望作的東西可以應用到其他地方,且盡量靠演算法自己學規則 05/27 12:54
78F:→ bxxl: 而不會把人類經驗規則寫進去 05/27 12:55
79F:推 bxxl: 可以推測他們不會把alphago打些補丁變成人類理想的高手 05/27 12:59
80F:→ bxxl: 這件事會變得太過特化,對他們的長遠目標沒價值 05/27 13:00
81F:→ Uizmp: 圍棋特化可能絕藝那邊會比較有興趣 05/27 13:01
82F:推 aegis43210: 會一直朝最強圍棋軟體前進的只有zen吧,zen7快出吧 05/27 14:34
83F:→ CGary: 但換個角度想 如果你想要局部優化 就很難建立真正的大局觀 05/27 15:02
84F:→ CGary: 當然你可以設計一個轉換模式演算法訓練他 但每個轉換都是不 05/27 15:02
85F:→ CGary: 精確的 05/27 15:02
86F:→ KMSNY: 轉換模式跟deepmind理念背道而馳 05/27 15:53
87F:推 Kydland: C大講得沒錯 局部計算 電腦絕對做得到 05/28 13:24
88F:→ Kydland: 重點是從以前大家都覺得電腦做不到大局觀 05/28 13:24
89F:→ Kydland: 所以真正的挑戰是建立大局觀 這才是AG的價值 05/28 13:24
90F:→ Kydland: AG證明他們的演算法可以讓電腦模擬人類的棋局判斷 05/28 13:25
91F:→ Kydland: 這就很厲害了 至於旁枝末節的局部計算 05/28 13:25
92F:→ Kydland: 對圍棋或許很重要 但這不是Google團隊真正要做的 05/28 13:26
93F:→ Kydland: 只要不要太離譜下到輸棋 這一點點和人類不一致無傷大雅 05/28 13:26
94F:→ Kydland: 要記住 Google不是燒錢設計電腦來下棋的 05/28 13:27
95F:→ Kydland: 它們要做的是把這一套演算法應用到不同領域 05/28 13:28