查看完整版本 : Leela Zero

assembly.jc 2017-11-29 05:11 PM

Leela Zero

玩開圍棋的 ching 可能都聽過 leela,免費圍棋 AI 中可能是最強的一個。Pascutto 近來仿照 AlphaGo Zero 論文的內容,implements 了 leela zero,但按 Pascutto 推算,如果以以下的電腦配置,訓練 leela zero 到 AlphaGo Zero 的實力,需要 1700 年。

[quote]GTX 1080 Ti
NVIDIA-Caffe + CUDA 9 + cuDNN 7
Memory use is about ~2G.[/quote]
推算方法:[url=http://computer-go.org/pipermail/computer-go/2017-October/010307.html]http://computer-go.org/pipermail/computer-go/2017-October/010307.html[/url]

有興趣的 ching 可看看
[url=https://github.com/gcp/leela-zero]https://github.com/gcp/leela-zero[/url]

[[i] 本帖最後由 assembly.jc 於 2017-11-29 07:35 PM 編輯 [/i]]

xianrenb 2017-11-29 07:54 PM

[quote]原帖由 [i]assembly.jc[/i] 於 2017-11-29 05:11 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471640499&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
玩開圍棋的 ching 可能都聽過 leela,免費圍棋 AI 中可能是最強的一個。Pascutto 近來仿照 AlphaGo Zero 論文的內容,implements 了 leela zero,但按 Pascutto 推算,如果以以下的電腦配置,訓練 leela zero 到 Alp ... [/quote]

我完全無看過 AlphaGo Zero 的 paper 。
但以我所知,那還是用 neural network 。
要 train 的應是那個 neural network 。
估計大概流程應該是:
用 set #1 weights 做 neural network ,試走一些棋局,得出勝負資料。
利用這些資料,調較 weights 得出 set #2 weights 。
用 set #2 weights 做 neural network ,試走一些棋局,得出勝負資料。
利用這些資料,調較 weights 得出 set #3 weights 。
用 set #3 weights 做 neural network ,試走一些棋局,得出勝負資料。
利用這些資料,調較 weights 得出 set #4 weights ……等等。

那麼,又怎可能可以多 d 人一齊 train 就得?
某甲的 set #x weights ,應該不等於某乙的 set #x weights 呀!

如果只是一些棋局走法,個個用唔同的 weights ,那就根本不能 train 同一個 neural network 。

assembly.jc 2017-11-30 12:58 PM

[quote]原帖由 [i]xianrenb[/i] 於 2017-11-29 07:54 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471648589&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


我完全無看過 AlphaGo Zero 的 paper 。
但以我所知,那還是用 neural network 。
要 train 的應是那個 neural network 。
估計大概流程應該是:
用 set #1 weights 做 neural network ,試走一些棋局,得出 ... [/quote]

這是一個好問題,小弟目前對 leela zero 所知有限,唔知佢用什麼方法。

但 training methods 唔只得一種,可參考 Haykin (Neural Networks and Learning Machines 3 edition, ch4, p126),基本分左 batch learning 和 on-line learning,你描述的是 on-line learning。batch learning 可集合 N 個 training samples,然後隨機在集合中抽取 samples。

你說得對,唔可能每個 client 都 training 自己的 weight,然後集合成一個 weight。而事實上,leela client 唔會 training 自已的 weight,唯一的 weight 由 server maintain。
client connect server 後會 download 最新的 weight (可參考 autogtp, main.cpp [url=https://github.com/gcp/leela-zero/blob/master/autogtp/main.cpp]https://github.com/gcp/leela-zero/blob/master/autogtp/main.cpp[/url]),然後在 client side 進行自我對局。對局完成後再回傳 training data。

估計 leela zero server side 已經定了 batch size,一旦接收足夠的 training data (自我對局),就會進行 training,並更新 server side 的 weight。超過 batch size 的 training data 可能會被摒棄。

xianrenb 2017-11-30 02:12 PM

即係用呢個方法, set #x weight 去 set #x+1 weight 都要花好耐時間(以小時計?)。
基本上都係搵來搞。

而且個方法算係抄 AlphaGo Zero 的,咁做無乜意義。

煙民母親生賤種 2017-11-30 03:37 PM

[quote]原帖由 [i]assembly.jc[/i] 於 2017-11-29 05:11 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=471640499&ptid=27090320][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]
玩開圍棋的 ching 可能都聽過 leela,免費圍棋 AI 中可能是最強的一個。Pascutto 近來仿照 AlphaGo Zero 論文的內容,implements 了 leela zero,但按 Pascutto 推算,如果以以下的電腦配置,訓練 leela zero 到 Alp ... [/quote]

Geforce card not for this purpose. Common gpus use 32bit 64bit as native length. It belong to high percision kind. While neural network wont need such a hi percsion calculation, it needs only 8bit. 

assembly.jc 2017-12-1 02:49 PM

[quote]原帖由 [i]xianrenb[/i] 於 2017-11-30 02:12 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471686368&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
即係用呢個方法, set #x weight 去 set #x+1 weight 都要花好耐時間(以小時計?)。
基本上都係搵來搞。

而且個方法算係抄 AlphaGo Zero 的,咁做無乜意義。 [/quote]

如果模仿到 AlphaGo zero 已經好利害。

即使 AlphaGo 前一個版本 (即 AlphaGo Master),雖然都公開了研究的論文,但日本的DeepZen,騰訊的絕艺和其他的模仿者花了好多人力物力,都做唔到與 AlphaGo Master 匹敵的軟件。可能 deepmind 還有些秘密沒有公開,但只單憑這幾編論文,圍棋 AI 的實力由業餘水準一下子達到人類頂尖的水準 (指的是 DeepZen 和絕艺),情況就好似一個只懂駕駛私家車的人一下子變成了一級方程式冠軍一樣。當中包含了什麼意義,是值得深思的。

assembly.jc 2017-12-1 03:17 PM

[quote]原帖由 [i]煙民母親生賤種[/i] 於 2017-11-30 03:37 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471690221&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


Geforce card not for this purpose. Common gpus use 32bit 64bit as native length. It belong to high percision kind. While neural network wont need such a hi percsion calculation, it needs only 8bit ... [/quote]

了解。

xianrenb 2017-12-1 09:57 PM

[quote]原帖由 [i]assembly.jc[/i] 於 2017-12-1 02:49 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471737470&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


如果模仿到 AlphaGo zero 已經好利害。

即使 AlphaGo 前一個版本 (即 AlphaGo Master),雖然都公開了研究的論文,但日本的DeepZen,騰訊的絕艺和其他的模仿者花了好多人力物力,都做唔到與 AlphaGo Mas ... [/quote]

如果模仿都做不到 AlphaGo Zero/Master 的效能,可能是所用資源/硬件級數有分別。
如果都是同級都做不到的話,只能再次說 neural network 是邪門的東西。
[url=http://computer.discuss.com.hk/viewthread.php?tid=26946236&extra=page%3D1]http://computer.discuss.com.hk/viewthread.php?tid=26946236&extra=page%3D1[/url]

煙民母親生賤種 2017-12-2 02:15 AM

[quote]原帖由 [i]xianrenb[/i] 於 2017-12-1 09:57 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471758837&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


如果模仿都做不到 AlphaGo Zero/Master 的效能,可能是所用資源/硬件級數有分別。
如果都是同級都做不到的話,只能再次說 neural network 是邪門的東西。
[url=http://computer.discuss.com.hk/viewthread.php?tid]http://computer.discuss.com.hk/viewthread.php?tid[/url] ... [/quote]可看出, 做呢類野, 唔係 GPU 強項。176 GPU VS 4 TPU。

配置與效能[62]
--------------------
版本         硬件         Elo等級分的理論峰值         戰績
AlphaGo樊         176個GPU[56],分散式         3,144[55]         5比0戰勝樊麾
AlphaGo李         48個TPU[56],分散式         3,739[55]         4比1戰勝李世乭
AlphaGo Master         4個TPU v2[56],單機         4,858[55]         網棋60比0戰勝職業棋士;
3比0戰勝柯潔;1比0戰勝人類團隊
AlphaGo Zero         4個TPU v2[56],單機         5185[55]         100:0 戰勝AlphaGo李;
與AlphaGo Master 對戰勝率達90%

assembly.jc 2017-12-3 08:00 PM

[quote]原帖由 [i]xianrenb[/i] 於 2017-12-1 09:57 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471758837&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


如果模仿都做不到 AlphaGo Zero/Master 的效能,可能是所用資源/硬件級數有分別。
如果都是同級都做不到的話,只能再次說 neural network 是邪門的東西。
[url=http://computer.discuss.com.hk/viewthread.php?tid]http://computer.discuss.com.hk/viewthread.php?tid[/url] ... [/quote]

騰訊可以投入的資源不會比 Google 差,不過之前有點說錯了,騰訊的絕艺應是按 AlphaGo Lee 的論文創造出來的。
AlphaGo Lee,即與李世石比賽的版本,有明顯的缺陷,所以第四局輸了給李世石,之後改良的 Master 在年初橫掃中日韓頂尖高手,59勝1和的戰績,表示AlphaGo Lee的缺陷已經修復了,但如何修復好似沒有公開。目前最強的AI 絕艺和 DeepZen 似繼承了Lee 的缺陷,所以對頂尖高手做唔到 100% 的勝率。

你可以說是邪門,但說到底 neural network 也只不過是其中一個數學模型罷了,前題推論渉及 probability 和 optimization 的理論,運算上運用 linear algebra 的理論。不渉及靈界的東西。

反而有趣的是,DeepZen, 絕艺和 最近拿了世界圍棋AI大賽亞軍台灣的 CGI 都是運用類似的技術,但表現出來的棋風卻有所不同,絕艺好對殺,DeepZen 和 CGI 就比較均衡。

assembly.jc 2017-12-3 08:03 PM

[quote]原帖由 [i]煙民母親生賤種[/i] 於 2017-12-2 02:15 AM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=471768828&ptid=27090320][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
可看出, 做呢類野, 唔係 GPU 強項。176 GPU VS 4 TPU。

配置與效能[62]
--------------------
版本         硬件         Elo等級分的理論峰值         戰績
AlphaGo樊         176個GPU[56],分散式         3,144[55]         5比0戰勝樊麾
AlphaGo李 ... [/quote]

TPU 就不用說了,創造出來的目的就是為了機器學習。而 neural network 本身都渉及浮點運算,GPU 應該都有幫助的
頁: [1]
查看完整版本: Leela Zero