看板 GO 關於我們 聯絡資訊
※ 引述《qweewqq (風一樣的男子)》之銘言: : DeepMind指出,他們不使用任何人類知識,AlphaGo Zero用上的是新的「強化學習」方法 對於 "不使用任何人類知識" 這句, 我心中始終有個大問號. 首先, 在一開始的 random play, AZ 根本不知何時要停. 必須人工設定去停它. 這用到了人類知道這樣的遊戲, 應該有限步要停. 雖然 AZ 的參數是經由自我對戰學的, 但整個架構呢? 要有幾層的的類神經網路? 每層有多少節點? 層跟層間的結構? covolution 要用 5x5 還是怎樣的大小? 要怎樣配合 VN, PN? 要用 MCTS 來尋找? 這些都沒用到人類的圍棋知識嗎? 這整個大架構, 是在學人類棋譜時, 發現這樣的架構, 可以訓練出不錯的 AI. 這架構不是隨便設就行得通的吧? 經由人類棋譜訓練, 找到一個好的大架構, 這樣可以稱作不使用人類知識? 如果今天一個完全不懂圍棋的人, 只針對規則, 就去訂了大模型架構, 然後經由自我對戰去學參數. 這樣的結果, 那叫做不使用任何人類圍棋知識. 現在這樣算嗎? 我心中實在有很大的黑人問號. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.109.74.113 ※ 文章網址: https://www.ptt.cc/bbs/GO/M.1510143808.A.51B.html
HeterCompute: 說實話,只是你的文字跟他的文字定義不同而已, 11/08 20:29
HeterCompute: 今天Deepmind就是在說我今天進入一個新的領域,我不 11/08 20:29
HeterCompute: 需要這個領域的知識,只需要最基礎的規則就行,然後 11/08 20:30
tlchen: Deepmind 傳達的是,不需要人類棋譜 11/08 20:31
HeterCompute: 就能用我豐厚的神經網路知識配合一些搜索去解決它 11/08 20:31
tlchen: 但它的整個大架構真的沒用到嗎? 我是認為用到了 11/08 20:31
HeterCompute: 你的意思是,他新的這套神經網路有用也是基於之前的 11/08 20:32
tlchen: 深度學習的架構要怎麼設, 不用的領域, 設法不同 11/08 20:32
HeterCompute: try&error,所以現在像星海這種就是很好的試基石 11/08 20:33
tlchen: 現在是先因為人類棋譜, 它選了適合的模型 11/08 20:33
HeterCompute: 如果可行,應該也可以用類似的架構幹出星海zero 11/08 20:33
HeterCompute: 如果不行,那就沒這麼好,所以就靜待星海的發展吧 11/08 20:34
tlchen: 就看最簡單的,把 5x5 換成 3x3 or 11x11, 行得通嗎? 11/08 20:40
birdy590: 規則不算是知識 沒有規則遊戲本身根本不成立 11/08 20:40
tlchen: 規則有了, 但什麼時候要停? 11/08 20:41
birdy590: 它的判斷是從雙方完全亂下開始慢慢訓練出來 11/08 20:41
tlchen: 沒有人為去設個停止, 電腦會自己填自己的地 11/08 20:42
HeterCompute: 你可以看一下AZ最一開始的棋譜,幾乎是把整個棋盤 11/08 20:42
birdy590: 把棋盤填滿為止 規則不是這樣嗎 11/08 20:42
HeterCompute: 填滿了 11/08 20:42
tlchen: 因為電腦無法判斷, 繼續下, 會不會比較有機會贏? 11/08 20:42
birdy590: 它真的會 但不用多久就會學會這樣對局面不利 11/08 20:43
tlchen: 是幾乎,但是, 為什麼不繼續下? 因為有人為設步數限制 11/08 20:43
HeterCompute: 另外他判斷規則勝利的方法是Tromp-Taylor scoring 11/08 20:44
birdy590: 你需要搞懂它的原理 判斷輸贏都是把棋盤填滿為止 11/08 20:44
HeterCompute: 這個規則應該是有讓終局well-defined,所以嘗試過 11/08 20:45
birdy590: 沒有什麼人為限制 填死自己一開始真的會 11/08 20:45
HeterCompute: 一陣子就知道把棋盤填滿無意義,填自己的空更不可能 11/08 20:45
tlchen: 一陣子它會了, 但第一盤呢, 第一盤為什麼有辦法停下來? 11/08 20:48
birdy590: 棋盤填滿如何不停? 11/08 20:48
tlchen: 棋盤怎麼填滿, 自己的地可以填啊 11/08 20:50
HeterCompute: MCTS本身就有防呆啊,兩眼不可能自己填死自己 11/08 20:50
HeterCompute: 只要不填死自己,就繼續填啊 11/08 20:50
tlchen: 當一開始什麼都不知道,為什麼知道不能填? 11/08 20:51
HeterCompute: 因為你兩眼填成一眼,你就要被提了,MCTS就知道不能 11/08 20:52
birdy590: 它不知道 這是學會的 11/08 20:52
HeterCompute: 很直觀吧? 11/08 20:52
birdy590: 下了會輸的 這種很快就會避免了 11/08 20:52
tlchen: 下了會輸,可以避免. 但第一盤呢? 11/08 20:53
birdy590: 一開始連1,1這種自殺步可能都會下 11/08 20:54
tlchen: MCTS 之所以有用, 它知道怎樣是終 11/08 20:54
tlchen: 你自填死後, 為什麼不可能後來反而贏? 11/08 20:54
birdy590: 一開始MCTS還是一樣計算 只是準確性很差 11/08 20:55
birdy590: 第一盤還是一樣算啊 啥都不會就接近亂數 11/08 20:56
birdy590: 有公布初期自戰棋譜 看了就懂了 11/08 20:57
tlchen: 這都不足以解釋,第一盤怎麼停的. 11/08 21:47
tlchen: MCTS是要看停的結果,但問題不知道什麼叫停 11/08 21:47
birdy590: 那都是規則的一部分 所以一直只會下中國規則 11/08 21:57
birdy590: 規則如果有大變動 就可能需要砍掉重練 11/08 21:58
HeterCompute: 別誤導,不是用中國規則,是用Tromp-Taylor 11/08 22:02
aegis43210: 用Tromp-Taylor,那難怪連笑打個連環劫,CGI就算不清 11/08 22:14
aegis43210: 因為Tromp-Taylor為了算的快,只算前八子有沒有禁同形 11/08 22:14
HeterCompute: Tromp-Taylor有規定八子?那是Deepmind自己規定的? 11/08 22:17
birdy590: 在棋局完全結束的時候,Tromp-Taylor規則可以視為等同 11/08 22:19
birdy590: 於中國規則 11/08 22:19
birdy590: 然後它允許填子自盡 所以初期自戰一定會出現 11/08 22:20
CodingMan: 看一下論文好不好 11/08 22:29
kero9420: 這篇感覺只是想要抓語病+引戰吧 11/08 23:16
Chothort: 鑽牛角尖 11/08 23:55
yys310: 對於這句有問號可以去挑戰nature editor阿 11/09 00:02
Yibooo: 抱歉打岔 其實最最最最原始的圍棋規則就是下到不能下為止 11/09 00:05
Yibooo: 所以有些人認為還棋頭是更合理的圍棋規則 11/09 00:05
Yibooo: 因為「你自己下不進去的地方就不是你的地」 11/09 00:05
tlchen: 模型的大架構有沒有受助人類棋譜,跟他們的claim,是大問題 11/09 00:48
tlchen: 還是抓語病,鑽牛角尖? 我就不多辯了 11/09 00:50
birdy590: 模型其實來自規則 不是人類棋譜 11/09 00:50
birdy590: 對zero來說人類棋譜根本不存在 11/09 00:50
OverInfinity: 第一盤會停就是因為按照規則沒地方下了 11/09 01:27
OverInfinity: https://www.youtube.com/watch?v=uKPtFxnmzm0 11/09 01:28
jpg31415926: 你乾脆說AlphaGo是人做出來的就等同用了人類知識算了 11/09 01:47
s89162504: 你的邏輯這麼差怎麼會來逛圍棋板= = 11/09 02:03
Eriri: 真無言 11/09 05:38
tlchen: O大,你貼的那盤,可以解釋為什麼不繼續填自己地? 11/09 08:50
tlchen: 至於模型來自規 則? 這是大問號, CNN 要幾層? convolution 11/09 08:50
tlchen: 的 size 要是多大, 這是來自規則? 11/09 08:51
tlchen: 這些參數, alphago zero 沒用到 alphago 先前版本? 11/09 08:52
tlchen: 邏輯該如何,夠懂 learning 自然懂我在說什麼.不懂,我說再 11/09 08:53
tlchen: 多也是多說 11/09 08:53
CGary: 有些東西paper裡面的確沒有說 其實上次DM的AMA你應該可以問 11/09 09:11
CGary: 問看... 11/09 09:11
birdy590: 為什麼不繼續填自己地? 你知道規則怎麼判定棋局結束嗎 11/09 09:31
birdy590: 就算用到 alphago 先前版本的演算法 也與人類棋譜無關 11/09 09:31
birdy590: 這些其實都是工程決定 像Tromp-Taylor等於用容易程式化 11/09 09:34
birdy590: 的方法把中國規則寫成清楚的條文 11/09 09:34
chigi: 你不懂的地方,說實話你應該去詢問作者。已經公布的paper 11/09 10:15
chigi: 來challenge一點意義都沒有,也許你說的對她沒交代清楚 11/09 10:16
chigi: 其中的細節也只有發表的人知道。無論是什麼原因沒寫到, 11/09 10:16
chigi: 在這討論還是沒意義阿,你當版友有參與開發嗎Orz 11/09 10:17
tlchen: 我之前看Tromp-Taylor規則,是連兩個pass,還是我誤會了? 11/09 10:24
tlchen: 重點是,黑白有一方知道 pass 後會輸,那為什麼要 pass? 11/09 10:24
tlchen: 為什麼不繼續下下看? 11/09 10:24
tlchen: 至於演算法跟人類棋譜無關?一開始在設架構時,直接定了? 11/09 10:26
tlchen: 還是通常是,試各種定法,看哪種可以學得好? 11/09 10:26
tlchen: 學的時候, 沒用到人類棋譜? 11/09 10:27
tlchen: 這樣可以說是大架構沒用到人類棋譜? 11/09 10:27
tlchen: 我原文有說,若由一個只懂規則的人,直接定了架構就自戰 11/09 10:28
tlchen: 那是沒有用到人類圍棋知識, 沒有問題 11/09 10:29
tlchen: 但是 alphago zero 似乎不是這樣啊 11/09 10:29
tlchen: 對不起,好的方法的確是問作者,我只是發表個心得 11/09 10:30
tlchen: 讓大家看得不舒服,抱歉了 11/09 10:30
birdy590: 那是工程判斷 不叫用棋譜 棋譜是猴子下的也沒影響吧? 11/09 10:31
birdy590: 為什麼要 pass? 那得計算結果得到 pass 會贏才會選 11/09 10:33
birdy590: 計算顯示填自己地比 pass 差 那為什麼會填? 11/09 10:34
birdy590: 為什麼用 40-block 不用 20-block 同樣是一種工程判斷 11/09 10:36
birdy590: 別人評估用不起就只能用 20, 這種決定又不是絕對的 11/09 10:36
saulesmeitas: 你去看AGZ的自戰 一開始真的是亂扔加自填地 最後的 11/09 12:12
saulesmeitas: 停止方法是 下到全局都只剩禁著點了 於是白棋投降 11/09 12:12
saulesmeitas: 局面圖 https://imgur.com/a/fRDeC 11/09 12:15
thomaspig: 這篇在幹嘛 11/09 13:41
harrybbs: 樓上上的解釋正確 11/09 16:16
tlchen: s大,請問一下,白棋其實還可以填自己的地啊,可不可能自己全 11/09 16:19
tlchen: 被提後,反而可以反敗為勝?我們知道不可能,但電腦呢? 11/09 16:19
tlchen: 為什麼電腦知道不可能? 11/09 16:20
saulesmeitas: 呃…你是不是不會下圍棋?白棋全盤死得一個子都不剩 11/09 16:28
saulesmeitas: 而且你看到的那些空格都是白方不能落子的點 11/09 16:29
shellpig: 至少這AI懂圍棋規則...反觀 11/09 17:37
birdy590: 現在通行的規則絕大部份都禁止自殺 就這樣 11/09 17:39
ddavid: 白棋自填自殺是規則禁止,只存在於金庸小說裡面 11/09 17:47
ddavid: 下到所有空處都是禁著,就是被迫Pass 11/09 17:49
tlchen: 所以規則有禁止自殺? 我真的不知道. 11/09 18:32
tlchen: 會下棋的人知道那樣是自殺,但一開始不會下棋的AI呢? 11/09 18:33
tlchen: 好像問一下,禁止自殺的規則,是多大的自殺算自殺? 11/09 18:34
birdy590: "棋盘上的任何一点,如某方下子后,该子立即呈无气状态 11/09 18:37
birdy590: 同时又不能提取对方的棋子。这个点叫做“禁着点”。" 11/09 18:38
ddavid: 你可以先去把規則弄清楚再繼續這個討論嗎XD 11/09 18:39
birdy590: 另一個限制 "着子后不得使对方重复面临曾出现过的局面" 11/09 18:40
ddavid: 連wiki查圍棋都可以找到的基礎規則,在連此都還沒搞清楚前 11/09 18:41
ddavid: 你的立論不具有任何穩固的基礎 11/09 18:42
tlchen: 規則我查過啊,但是我有兩眼,自填一眼,違反了什麼規則? 11/09 19:04
Uizmp: 你看一下那個圖吧.... 11/09 19:04
birdy590: 自填一眼可以提取對方的棋子嗎? 不行就是禁著點啊 11/09 19:08
birdy590: 禁著規則就是要避免其中一方賴皮會讓棋局下不完 11/09 19:09
birdy590: 所以你可以不用懷疑 因為照著規則走最後一定會雙方 pass 11/09 19:09
Uizmporm: 他是在說 已經做活 下到後面自填的狀況啦 那就繼續下啊 11/09 19:20
tlchen: s大的圖,明明還有黑地可以填.而o大的youtube,最後白還有三 11/09 19:21
tlchen: 眼 11/09 19:21
tlchen: 然後 youtube 中,兩邊都有自己地填子過,所以我不相信那是 11/09 19:22
tlchen: 禁著 11/09 19:22
Uizmporm: 那就繼續下啊 11/09 19:23
tlchen: 可是電腦停了,為什麼會停?有沒有設計停的方式,是根據人的 11/09 19:24
tlchen: 圍棋知識,這是我有問題的地方 11/09 19:24
ywchenz: 學下圍棋,答案自然就出現了 11/09 19:30
Uizmporm: 合理的解釋是 這已經不是AGZ的第一盤棋了 11/09 19:37
ddavid: 下到最後必然可以下到一方徹底剩下禁手(另一方仍可自填) 11/09 19:48
ddavid: ,這時無法可下的一方Pass,規則賦予我們計算盤面勝負的能 11/09 19:50
ddavid: 力。當盤面已經勝利,則另一方Pass結束。若否,另一方可以 11/09 19:51
ddavid: 自填繼續下下去直到下次又成為應落子一方只剩禁手的時間點 11/09 19:52
ddavid: 即可。 11/09 19:52
ddavid: 如果這樣還覺得不滿意,還有一個大招可以開:禁同型反覆。 11/09 19:53
ddavid: 在禁同型反覆規則之下,絕對不會有一盤下不完的棋,終究會 11/09 19:53
ddavid: 有一個時刻雙方全禁手必須雙方Pass的情況 11/09 19:54
ddavid: 這也是規則賦予的條件而非額外人類圍棋知識,絕對沒有問題 11/09 19:54
saulesmeitas: 你可以先去查一下「禁著點」 如果還是不懂再問吧 11/09 20:01
saulesmeitas: 不會圍棋真的超難解釋的… 11/09 20:01
s347: 這個問題我在用論文重新製作AZ的時候也有遇到,解法就是 11/09 20:24
s347: 把自己的眼也定義為禁著點就好了 11/09 20:25
s347: 神經架構用到圍棋知識確實比較有效率,但其實不是必需的 11/09 20:26
milkdragon: 電腦為什麼會停?因為論文裡說了 "Games terminate wh 11/09 20:53
milkdragon: en both players pass or after 19 × 19 × 2 = 7 11/09 20:53
milkdragon: 22 moves. ",這也正是他們使用 Tromp–Taylor scori 11/09 20:53
milkdragon: ng 的原因 11/09 20:53
HeterCompute: 推樓上,我真忘記有這句子了 11/09 21:39
tlchen: 謝謝m大,所以跟我原文說的,需要人為設定是一樣的.我之前聽 11/09 21:48
tlchen: 說過,但沒有查到. 11/09 21:48
KenshinCS: 不過這人為設定的還是算在"規則"裡 11/09 21:52
birdy590: 雙方照著規則下叫做人為設定?這方向真怪 11/09 21:55
KenshinCS: 基本上不可能沒有規則就學得出東西來... 11/09 22:44
tlchen: 規則裡有跟19x19x2有關的東西?AZ的學習,加入了這人為設定, 11/09 23:19
tlchen: 跟規則有什麼關係? 11/09 23:20
birdy590: 那只是規則裡的棋局結束條件 11/09 23:25
birdy590: 用Tromp Taylor規則只是因為方便 特色就是容易程式化 11/09 23:27
birdy590: 所以一開始就講了alphago只會下中國規則 11/09 23:28
birdy590: 要用其他規則不是不可能 但判斷複雜可能降低效率 11/09 23:28
birdy590: 另外訓練成本也很驚人 是不為也非不能也 11/09 23:29
tlchen: 19x19x2是Tromp Taylor規則裡的東西嗎?不是的話,我要問的 11/10 00:03
tlchen: 是,加了這條給AI,是不是其實偷偷用到了人類對圍棋的了解? 11/10 00:04
staristic: 這當然不是,這是演算法問題 11/10 00:07
staristic: 你去找一下停機問題,維基就有了 11/10 00:08
staristic: 圍棋因為規則上全局禁同,必定停止,但是這個停止可以 11/10 00:09
staristic: 太長以後,實務計算上硬體有限,不可能去計算太長的局 11/10 00:09
staristic: 所以問題變成能否在有限步數內結束棋局,一種停機問題 11/10 00:10
staristic: 的變形,要解決這個問題最快的演算法就是加一個上限 11/10 00:10
staristic: 722只是一個讓你覺得好像和圍棋知識有關的數字 11/10 00:11
staristic: 實際上這個數字是多少不太重要,重要的是能讓程式停下 11/10 00:12
birdy590: 19*19*2其實只是上限 實際還是雙方pass就結束 11/10 00:14
staristic: 說真的我很懷疑啦,490萬譜裡超過400手的有幾譜 11/10 00:15
staristic: 搞不好一譜都沒有 11/10 00:15
birdy590: 從規則上就已經避免無限鬼打牆 11/10 00:16
birdy590: 既然規則上確保棋局必然會結束且無平手 11/10 00:17
birdy590: 自然就看不懂他在問啥 11/10 00:17
staristic: 我就一直在問他他口中「人類圍棋知識」的定義 11/10 00:18
staristic: 到現在沒個回答,根本討論不下去 11/10 00:19
staristic: 其實我停機問題的例子用在這不太對…不過算了…… 11/10 00:21
monyo: 到底在執著什麼... 守護人類最後的尊嚴是嗎? 11/10 00:54
monyo: 拜託先去學圍棋好不好 11/10 00:55
ddavid: 那個停止條件明明是工程、數學上的條件,他硬要扯到那就是 11/10 03:19
ddavid: 圍棋知識而且還不能算是規則部分以維護他的論點 11/10 03:20
ddavid: 事實上就連第一局那種自填到最後滿盤皆子都根本沒有到上限 11/10 03:24
ddavid: 手數便停止了,那個上限手數根本等於虛設,原本規則上都已 11/10 03:25
ddavid: 經有能力在上限手數以內結束棋局了 11/10 03:26
ddavid: 之所以要那個上限了不起只是工程上的保險,因為實際上要估 11/10 03:27
ddavid: 計填來填去下到全部禁手到底平均可能到達幾手不太容易 11/10 03:28
ddavid: 所以只是事前工程上理由給個合理值叫停罷了 11/10 03:29
CGary: 其實這個問題不是爛問題 因為今天在AI Conf, Google來的講 11/10 10:18
CGary: 者也challenge了這點... 11/10 10:18
birdy590: 目前的確不存在通用的架構, 但這其實還是工程問題 11/10 11:04
birdy590: 以現在硬體的計算能力, 連工人智慧精心調整出來的架構 11/10 11:07
birdy590: 都跑的很吃力, 實在很難想像通用的架構會長什麼樣子 11/10 11:08
staristic: CGary 願聞其詳? 11/10 11:31
raiderho: 整串討論下來,就看到原po在浪費大家時間 11/10 11:37
HeterCompute: 簡單說就是神經網路架構也是base on master之前的研 11/10 11:39
HeterCompute: 究得出,那就某方面還是借助了master人類棋理的部分 11/10 11:39
HeterCompute: ,aja回答那不是借助人類圍棋的知識,是借助人類工 11/10 11:39
HeterCompute: 程上對圍棋的認識 11/10 11:39
CGary: aja回答時其實有點不開心 不過我覺得紀挑那個問題就跟原Po 11/10 11:46
CGary: 差不多的概念 因為你懂了圍棋 所以那個框架你設計得出來 但 11/10 11:46
CGary: aja回答我覺得也合理 他覺得基於圍棋的知識雖然是因素 但結 11/10 11:47
CGary: 果卻是可以通用化到任何的game(完全公開資訊)上, 所以他認 11/10 11:48
CGary: 為那是可以這麼說的... (我是蠻能接受這點說法,但同時也 11/10 11:48
CGary: 覺得這個問題本質不是爛問題) 11/10 11:49
raiderho: 工程或學術上的術語定義,大家以之方便溝通,除非能啟迪 11/10 11:49
raiderho: 新的智慧,不然戰這類定義問題實在是浪費大家時間 11/10 11:49
CGary: 並不是這樣的 因為我們完全不知道強AI到底是怎樣 現在討論 11/10 11:50
birdy590: 嚴格說來 那個框架和圍棋知識還是沒有關係 11/10 11:50
CGary: 任何弱AI, 其實都是大量探討定義 因為我們甚至不知道怎麼說 11/10 11:50
birdy590: 誰說圍棋知識瞭解多的人就能對架構調整有幫助了? 11/10 11:50
CGary: 明這件事 不過在圍棋版討論這個沒意義就是了 他應該去那天 11/10 11:51
birdy590: 真正重要的還是工程知識 而非圍棋知識 11/10 11:51
CGary: Silver的AMA去問的... 11/10 11:51
porkerman: 奇文共賞 12/30 05:54