推 danine: 簡單明瞭 11/09 23:33
→ jamesho8743: 還有 alpha go 並不是因為人類棋譜才找出一個好的大 11/09 23:35
→ jamesho8743: 架構 而是本來就設計出一個架構 才拿人類棋譜來驗證 11/09 23:35
→ jamesho8743: 或先得到一個還不錯的結果 11/09 23:35
推 tlchen: 樓上這個可有根據?我抱懷疑的態度 11/09 23:40
→ tlchen: 電腦圍棋的演進,如何設定,不斷在改變 11/09 23:41
→ tlchen: 而改變的原因,很大的因素是看跟人下,怎樣改變可提升勝率 11/09 23:42
→ tlchen: AlphaGo 的架構,完全跟之前的無關? 11/09 23:43
→ tlchen: 講個較極端的例子,假設今天有個工程師分別用VGGNet, 11/09 23:45
推 birdy590: 你應該先看一下 DZG作者那串文 11/09 23:45
→ tlchen: GoogLeNet, 及 ResNet 設計了三個AI. 並分別用人類棋譜去 11/09 23:46
→ birdy590: alphago實際上是用現有的一些技術拼湊實驗出來 11/09 23:46
→ tlchen: 學參數.然後三個AI對打,假設最後ResNet贏了,所以工程師之 11/09 23:47
→ birdy590: 過去就算有人想到 也沒有足夠資源做出來 11/09 23:47
→ birdy590: zero就更不用說了 成本高的誇張 11/09 23:48
→ tlchen: 後就只用ResNet的版本,然後用自我對戰學參數. 11/09 23:48
→ tlchen: 這樣的AI,算不算沒有用到人類的圍棋知識? 11/09 23:49
推 birdy590: 無言 顯然沒看懂這篇 11/09 23:50
→ tlchen: 根據這篇的說法,那似乎是沒有用到人類的知識 11/09 23:50
→ birdy590: alphago一開始就拋棄了人類的「圍棋知識」 11/09 23:51
→ tlchen: 在我的認知,它用到了人類的圍棋知識.因為所謂的優化,並不 11/09 23:51
→ birdy590: 餵人類棋譜的時候 還可以說會受人類決策的影響 11/09 23:52
→ tlchen: 不只是參數的優化.這位工程師,一開始還做了一個三種模型 11/09 23:52
→ birdy590: 麻煩先定義一下 什麼叫「圍棋知識」 11/09 23:52
→ tlchen: 間的優化.而這個優化,用到了人類圍棋知識 11/09 23:52
→ Uizmp: 不用人類棋譜, 純粹自戰可能也會得到 ResNet 最適合的結論 11/09 23:53
推 staristic: tlchen,我建議你先定義一下你的人類圍棋知識是哪些 11/09 23:53
推 staristic: 你從來沒定義過你這個用詞指涉的範圍,這樣討論不下去 11/09 23:53
→ tlchen: 類似的情況是我之前文章說的,大架構的優化,沒用到人類的 11/09 23:54
→ tlchen: 知識嗎? 11/09 23:54
推 birdy590: 這些根本不是圍棋知識 而是寫程式的知識 11/09 23:54
→ staristic: 人類的知識和人類的圍棋知識差很多耶?你指哪個? 11/09 23:54
→ Uizmp: 人類的知識, 但不見得是圍棋的 11/09 23:55
→ birdy590: 只要規則定義清楚 程式設計師根本不需要會下圍棋 11/09 23:55
→ tlchen: 我說的是人類圍棋知識,而棋譜是它的表現 11/09 23:55
→ Uizmp: 不過以DM說可以應用在其他領域(伺服器省電),應該是泛用的 11/09 23:56
→ tlchen: 若選大架構是可以從自戰選的,我就認為是沒用到人類圍棋知 11/09 23:56
→ tlchen: 識,這是我在先前文章就這樣說的 11/09 23:57
→ Uizmp: 不用, 反而需要的是神經網路方面的知識 11/09 23:57
推 staristic: 所以不要鬼打牆啦,你的「人類的圍棋知識」的定義是? 11/09 23:57
推 birdy590: master之前 訓練過程會從人類棋譜取得特徵 11/09 23:57
→ birdy590: 所以可以視為間接接收了人類的圍棋知識 11/09 23:58
→ staristic: 我們先來搞定最基礎的定義再繼續往下討論 11/09 23:58
→ tlchen: 這些不只是寫程式的知識,每個領域,要用怎樣的架構,是不同 11/09 23:58
→ birdy590: 但是演算法本身和圍棋知識並沒有關係 11/09 23:58
→ Uizmp: 棋譜可以從人類來,但大多是自戰 (後來就純粹自戰了 11/09 23:58
→ birdy590: 寫程式的人也不需要會下棋 11/09 23:59
→ tlchen: 為什麼在圍棋適合用ResNet,這不需要對圍棋的了解? 11/09 23:59
→ Uizmp: 這個就是寫程式的知識 和規則有關, 和棋力無關 11/09 23:59
→ birdy590: 實驗一下就知道了 為什麼需要額外的知識? 11/10 00:00
→ Uizmp: 不需要, 因為 ResNet 和 圍棋沒有關係啊 11/10 00:00
推 birdy590: 從論文也看的出來 過程中試過又丟掉的東西肯定很多 11/10 00:03
→ birdy590: 這些和圍棋本身並沒有關係 圍棋高手也看不出來哪種好 11/10 00:03
推 tlchen: 實驗一下就知道,但怎麼實驗的?有沒有用到人類的棋譜?或是 11/10 00:07
→ tlchen: 跟人下? 11/10 00:07
→ tlchen: 或許真的可以用自我對戰去選大架構,而這樣做出來的,如我文 11/10 00:09
→ tlchen: 所說,我認為這樣是不靠人類圍棋知識.但 alphago zero是嗎? 11/10 00:09
→ tlchen: 這是我主要的疑問 11/10 00:10
推 birdy590: 要實驗就兩個演算法對下 需要什麼棋譜? 11/10 00:12
推 staristic: 我再問一下,你所謂「人類圍棋知識」的定義是? 11/10 00:14
→ Uizmp: 結論只有誰贏, 這個不需要有棋力吧? 11/10 00:14
→ staristic: 你一直不定義清楚,是要怎麼討論下去? 11/10 00:14
→ Uizmp: 他大概覺得被李世石找出問題,AG要用同個架構訓練更久也算吧 11/10 00:19
→ Uizmp: 3天的AGZ打不過Master,要40天,但因為Master有人類棋譜所以. 11/10 00:20
→ jamesho8743: 簡單來說 Alpha go 餵人類棋譜或自我對戰 訓練出來 11/10 00:28
→ jamesho8743: 的是參數 相當於人類的記憶 而alpha go 程式則相當 11/10 00:28
→ jamesho8743: 於大腦本身 11/10 00:28
→ jamesho8743: 記憶可以換可以訓練 但這並不會去影響大腦本身的結構 11/10 00:34
→ jamesho8743: 不清楚這點也不用再扯了 這是run time 的東西 11/10 00:34
→ jamesho8743: 除非在build time的時候 工程師把除了圍棋規則以外 11/10 00:37
→ jamesho8743: 的想法寫了進去 或加進結構 這點本文已有說明 11/10 00:37
推 tlchen: 人類圍棋知識,就是除了圍棋本身規則,人類根據這規則而有 11/10 00:41
→ tlchen: 的想法或產品 11/10 00:41
→ tlchen: 問題是這個大腦的結構是人為建構的,人為如此建構,是否經 11/10 00:43
→ tlchen: 某種優化過程,而過程是否用到人類圍棋知識 11/10 00:43
→ tlchen: 像我舉的例子,要用某模型,決定的過程是否用到了跟人對戰 11/10 00:45
→ tlchen: 或其它人類圍棋知識 11/10 00:46
→ staristic: AlphaGo Zero 沒有,就這樣 11/10 00:47
→ tlchen: 當然實驗可以是兩個AI對下,但兩個AI對下,它們用的參數是 11/10 00:47
→ tlchen: 怎麼來的 11/10 00:47
→ jamesho8743: 了解tlchen 他現在把AG工程師如果因為用人類棋譜得 11/10 00:47
→ jamesho8743: 到的結果 使得工程師去選擇了某個演算法 所造成對AGZ 11/10 00:47
→ jamesho8743: 的影響 也認為是"人類的圍棋知識"的影響 11/10 00:47
推 birdy590: 其實alphago從一開始就沒有 11/10 00:48
→ tlchen: AlphaGo Zero 的大架構是跟 AlphaGo Master 類似的 11/10 00:48
→ tlchen: 你確定這個架構沒有? 11/10 00:48
→ birdy590: zero是連人類知識的間接影響都拋棄不要 11/10 00:48
→ birdy590: 寫程式的又不用會下圍棋 11/10 00:49
→ jamesho8743: 但前面已說過即使有 這是人類工程上的圍棋知識 而不 11/10 00:49
→ jamesho8743: 是人類棋盤上的圍棋知識 11/10 00:49
推 staristic: 如果tlchen的理解像james大講的,那也不用討論了 11/10 00:50
→ birdy590: 建立適合圍棋的模型 不需要什麼圍棋知識 11/10 00:50
→ tlchen: MCTS這方法不是AlphaGo先用的,它也拿來用,不是根據之前的 11/10 00:51
→ tlchen: 經驗? 11/10 00:51
→ birdy590: 幾乎都是工程考量 想辦法提高演算法的效率 11/10 00:51
→ jamesho8743: 如果工程師完全只用圍棋規則推導出來的 那就肯定沒 11/10 00:53
→ jamesho8743: 有人類棋盤上的知識在裡頭 11/10 00:53
→ tlchen: 不需要圍棋知識,就可以知道怎樣選擇適合的模型? 11/10 00:53
→ birdy590: 說穿了都是剪枝的方法 哪種好是比較出來的 11/10 00:53
→ birdy590: 初期弱的時候 判斷好壞包括比對和人類棋手決策的命中率 11/10 00:54
→ tlchen: 人類工程上的圍棋知識是怎麼來的?難道不是先前的實驗,利用 11/10 00:54
→ tlchen: 到人類的圍棋知識 11/10 00:54
→ birdy590: 變強以後這招就不靈了 直接對下個100盤最快最直接 11/10 00:55
→ birdy590: 什麼叫工程上的圍棋知識? 11/10 00:55
→ tlchen: 我這篇推文的一開始例子看一下,那算不算用到人類圍棋知識? 11/10 00:55
→ birdy590: 比較好壞跟人類棋譜何干? 11/10 00:56
推 staristic: AlphaGo前的AI和AlphaGo的架構完全不同啦 11/10 00:56
→ staristic: 是不是機器學習這點是決定性的差別啊 11/10 00:57
推 birdy590: 所以前面就說DZG作者專訪先看一下 11/10 00:58
推 tlchen: b大,回去看一下我的例子,那些AI的參數是用棋譜學的 11/10 00:58
→ birdy590: 裡面講以前的做法 那些才叫「圍棋知識」 11/10 00:59
→ birdy590: 棋譜是拿來訓練用的 跟架構也沒有關係 11/10 00:59
→ birdy590: 這裡的參數又是指啥? 11/10 01:00
→ tlchen: s大,MCTS之前的AI有沒有用?AlphaGo也拿來用,這沒用到經驗? 11/10 01:00
→ tlchen: b大,我講的圍棋知識,前面有定義.棋譜是其展現 11/10 01:01
推 birdy590: MCTS跟圍棋知識毫無關係 11/10 01:01
→ birdy590: 你不知道MonteCarlo是指什麼嗎 11/10 01:02
→ tlchen: 參數是類神經網路的那些 weights, master 是用人類棋譜學 11/10 01:02
推 staristic: MCTS是一種通用演算法,不止用在圍棋 11/10 01:03
→ tlchen: 而 AZ 的參數是經由自我對戰學的 11/10 01:03
→ birdy590: 原始的演算法可是亂下下到完 11/10 01:03
→ jamesho8743: 要用AI當然就不想用人類知識 看不出要把人類的圍棋 11/10 01:04
→ jamesho8743: 知識加入幹嘛 圍棋可以光數學純綷推導 優化 加入人 11/10 01:04
→ jamesho8743: 類知識只是更多例外更難寫 以AGZ來說 沒有 end 你要 11/10 01:04
→ jamesho8743: 堅持你自己的想法跟世界不同 那就繼續吧 大家都錯了 11/10 01:04
→ jamesho8743: deep mind 也説謊 你是對的 11/10 01:04
→ tlchen: MCTS當然不止用在圍棋,但之前在圍棋上有成功的經驗,而 11/10 01:04
→ birdy590: zero證明了master之前也只是抄近路 11/10 01:04
→ tlchen: AlphaGo 也用了, 沒用到前人經驗? 11/10 01:05
→ birdy590: 從亂下開始慢慢訓練起 結果還可以更強 11/10 01:05
→ birdy590: 那跟圍棋知識根本無關 11/10 01:06
→ staristic: 是前人的經驗沒錯啊,但是這不是在人類圍棋的知識內吧 11/10 01:06
→ staristic: 你到底有沒有搞清楚自己在問啥? 11/10 01:07
→ staristic: 演算法的知識 != 人類圍棋的知識 11/10 01:07
→ jamesho8743: 人類工程上的圍棋知識怎麼來的?當然是思考跟推導來 11/10 01:08
→ jamesho8743: 的 這不需要會下圍棋 只要會思考 數學 跟基本規則 11/10 01:08
→ monyo: 他定義的"人類圍棋知識"其實是"人類開發電腦圍棋累積知識" 11/10 01:12
→ monyo: 我這樣解讀對不對? 11/10 01:12
推 birdy590: 樓上這定義也太小看deepmind了 11/10 01:14
→ birdy590: 它用的技術雖然之前多半都存在 11/10 01:14
→ birdy590: 要把它們湊在一起並不是件容易的事 11/10 01:15
→ monyo: 啊? 我只是試圖解讀tl的定義啊 11/10 01:21
推 birdy590: tl沒有意識到一件事 就是MCTS和圍棋知識是背道而馳 11/10 01:27
→ birdy590: 就連隨機亂下到完 都能得到一定的棋力 11/10 01:28
推 JasonHuang: T大什麼神邏輯?照這樣講世界上沒人能稱作無師自通了 11/10 01:39
→ JasonHuang: 。因為學習過程就算沒問過其他人,沒參考過書籍,但因 11/10 01:39
→ JasonHuang: 為其他人類已證明人腦是學得會且有效的,所以只要有人 11/10 01:39
→ JasonHuang: 成功做過的事,那就算有用到前人經驗?? 11/10 01:39
推 wadashi1: tlchen有沒有看過zero自戰的第一盤?很精彩,建議看看 11/10 01:45
→ wadashi1: 一開始沒有做活跟吃子的觀念,亂下碰觸到規則才發生吃子 11/10 01:47
→ wadashi1: 還會自己把空填滿自殺 11/10 01:50
→ wadashi1: 而黑子181枚,白子180枚,共361枚,下完就沒得下了,最後由 11/10 01:51
→ wadashi1: 規則來定出勝負。Zero就是從這種模式訓練過來的! 11/10 01:51
→ wadashi1: 看了一下,不止..40block下到共541步,20block下到共469步 11/10 02:02
推 ddavid: 我是覺得可以放棄解釋了,基本上他就是用他的自定義在做討 11/10 03:08
→ ddavid: 論,或者說根本不是要討論而只是想講他的定義 11/10 03:09
→ ddavid: @wadashi1 沒有子下完這種事。規則上萬一真的雙方子用完, 11/10 03:10
→ chris610020: 應該說初始的價值網絡都是一片空白的,完全只依靠人 11/10 03:10
→ chris610020: 類給的算式求最佳解 11/10 03:10
→ ddavid: 可以用交換死子的方式重新取得可下的子。 11/10 03:10
→ ddavid: @chris610020 你解釋這個已經沒有用了,因為那就是認為那 11/10 03:11
→ ddavid: 個一片空白的網路也算是靠「他認為的圍棋知識」選出來的 11/10 03:11
→ ddavid: 他就是 11/10 03:12
→ chris610020: 他講的偏向演算法優化,盡量不要做無意義的事 11/10 03:23
→ chris610020: 不優化只是跑的比較慢,解果還是一樣的 11/10 03:26
→ chris610020: 結果 11/10 03:27
→ ddavid: 這倒未必,選取的架構不同也許會落到不同的Local Max裡面 11/10 03:31
→ ddavid: 而落到Local Max裡面並沒有什麼理論保證一定出得來 11/10 03:32
→ wadashi1: 感覺起來tlchen認為..因為圍棋規則來修正Zero就算是用到 11/10 11:43
→ wadashi1: 人類圍棋知識,但..不給Zero規則,它怎麼知道怎麼玩?什麼 11/10 11:44
→ wadashi1: 不能下?怎麼決定勝負? 人類的定石,征子,棋譜,所有人類的 11/10 11:45
→ wadashi1: 技巧,Zero完全沒有,有的只是定義的圍棋規則對它的修正。 11/10 11:45
→ raiderho: tlchen沒說的那麼淺,但是他認為繼承上一版本的原始架構 11/10 11:59
→ raiderho: 參數都是圍棋知識,這和大多數的定義不同,問題是他的定 11/10 12:00
→ raiderho: 義目前沒引出什麼有建設性的討論。 11/10 12:01
→ mothertime: 這篇不是很明確說出人類棋譜等於人類圍棋知識了嗎? 11/10 12:14
→ mothertime: 規則比較像邊界條件,不屬於知識吧 11/10 12:15
推 oldTim: 如果只是棋譜本身不是知識,是資訊。要將資訊歸納整理後 11/10 16:18
→ oldTim: 才能稱為知識,比如說你如果不懂化學拿到元素週期表 11/10 16:21
→ oldTim: 就算能夠全部背起來也不能說懂得週期表裡面的化學知識 11/10 16:22
推 oldTim: 拿電腦圍棋來說,AG出世前的第一波專家系統AI通常都有真對 11/10 16:26
→ oldTim: 判斷局部攻殺部分輸入人類的定石Data,與AG的最大差別並非 11/10 16:29
→ oldTim: 輸入不同的data,而是使用了人類圍棋知識中"局部"的觀念 11/10 16:30
→ oldTim: 來做死活判斷,而局部這個觀念是人類自行總結的規則裡沒有 11/10 16:33
推 siyaoran: tlchen一開始就對參數這東西理解錯了 weight怎麼給的也 11/10 19:33
→ siyaoran: 是靠機器學習自己修正的 須要人給weight還能算機器學習? 11/10 19:34
推 peterhuo: 辛苦,那廝基本上就是自尊心太強的X孩 11/10 20:41
→ peterhuo: 別再浪費時間回啦 11/10 20:42