Minigo

Minigo
預覽版本
v199-lightning[1]
(2018年1月30日2018-01-30
源代码库github.com/tensorflow/minigo
编程语言PythonC++
类型電腦圍棋
许可协议Apache License 2.0[2]
网站github.com/tensorflow/minigo

Minigo是一套電腦圍棋軟體。

簡介

Minigo是一套依照DeepMind在《自然》上對於AlphaGo Zero所發表的論文《[3]》所實做出的開源電腦圍棋程式[4],也就是不使用人類棋譜與累積的圍棋知識,僅實做圍棋規則,使用單一類神經網路從自我對弈中學習(不像AlphaGo以人類角度思考,設計了Policy Network與Value Network)。

軟體是基於Brain Lee的MuGo繼續開發[4],使用PythonC++撰寫[4],並且透過TensorFlow實做類神經網路的部份[4]。程式碼以Apache License 2.0釋出[2],訓練資料以公有领域()釋出[5]

專案的目標包括了[4]

  • 提供使用TensorFlowKubernetes以及Google雲端平台實做强化学习英語:)的範例。
  • 盡可能重製論文裡所提到的方法,並提供開源的程式與工具。
  • 提供資料以及訓練成果,讓圍棋界、機器學習領域以及Kubernetes社群都能夠受益。

除此之外,專案也希望藉由獨立另外實做,驗證Leela Zero所產生的疑問[6]

與Google及DeepMind的關聯

這個計畫雖然是掛在TensorFlowGitHub下(且TensowFlow是由Google研發出的軟體),而且主要的專案貢獻者Andrew Jackson[7][註 1]與Tom Madams[註 2]都是Google員工[6],但官方一再強調這並非TensorFlow專案的一環[6],也不是DeepMindAlphaGo官方版本[4],而是由獨立的團隊依照AlphaGo Zero的論文而實做出的版本[4][8]

版本演進

雖然GoogleDeepMind沒有正式參與Minigo計畫,但Andrew Jackson使用的是Google所提供的20%時間[6],並且得到Google贊助提供硬體資源進行運算,供Minigo團隊確認程式正確性[4][9]

第一階段(2017年十月)
使用約1000 CPU cores(沒有GPU)跑兩週,訓練9x9棋盤,主要是確認程式實做的正確性。
第二階段(2017年十二月至2018年一月)
使用約1000 GPU跑四個禮拜,訓練19x19棋盤,使用20 blocks x 128 filters,在更大的規模上邊修正bug,邊對程式做出各類改善,並摸索論文裡沒有提到的細節要如何實做。在160個迭代()後,團隊將訓練結果放到KGSCGOS上對弈,以somebot為名,後面的數字表示是哪個迭代。最終大約跑了250個迭代。
第三階段(2018年1月20日至2月1日)
在確認論文內不清楚的地方,嘗試後從錯誤中學到不少事情。
第四階段(2018年2月7日後至三月)
因為19x19的成果受限,改回使用9x9訓練,在大約一個禮拜的訓練後達到職業水準。
v5(2018年三月至四月)
引擎部份改用C++重寫,以改善效能。
v7a(2018年五月的第一周)
v7(2018年5月16日至7月17日)
v9(2018年7月19日至8月1日)
取得新的資源,使用600個TPU(v2)訓練。
v10(2018年8月28日至9月14日)
v11(2018年9月14日至9月17日)
v12
v13
v14
v15

合作

Leela Zero同樣也是依照AlphaGo Zero論文所獨立實做出來的軟體[10],而Minigo專案取得Google贊助的計算資源,透過大量計算資源得到品質還不錯的訓練網路資料。因此Leela Zero的團隊與Minigo的團隊基於雙方的經驗,討論參數的調整能帶來的改善,以及雙方訓練資料共用的可能性[11]

成績

Minigo的第二階段在CGOS上以somebot開頭的名稱參與19x19的對戰[12],排名最高的帳號為somebot-199b[13],取得約2600分的BayesElo成績[12]

相關連結

  • AlphaGo,所參考論文的電腦圍棋軟體。
  • AlphaGo Zero,所參考論文的電腦圍棋軟體。
  • Leela Zero,另外一套也是依照AlphaGo Zero所實做的開源電腦圍棋軟體。
  • MuGo,由Brain Lee依照AlphaGo的論文所開發的電腦圍棋軟體。
  • TensorFlow,Minigo所使用到的框架。
  • 電腦圍棋
  • 圍棋軟體

參考資料

  1. . [2018-02-01]. (原始内容存档于2019-02-17).
  2. . [2018-02-01]. (原始内容存档于2019-02-17).
  3. . 自然 (期刊). 2017-10-18 [2018-02-01]. (原始内容存档于2018-04-12).
  4. . [2018-02-01]. (原始内容存档于2020-11-09).
  5. . [2018-02-01]. (原始内容存档于2019-02-17).
  6. . 2018-01-30 [2018-02-01]. (原始内容存档于2018-09-04).
  7. . [2018-02-01]. (原始内容存档于2019-02-17).
  8. . 2018-01-29 [2018-02-14]. (原始内容存档于2020-01-28).
  9. . [2018-02-01]. (原始内容存档于2019-10-18).
  10. . [2018-02-02]. (原始内容存档于2018-10-16).
  11. . [2018-02-02]. (原始内容存档于2019-10-18).
  12. . [2018-02-01]. (原始内容存档于2018-01-17).
  13. . [2018-02-01]. (原始内容存档于2020-07-10).

註解

  1. Andrew Jackson在GitHub上的帳號是amj
  2. Tom Madams在GitHub上的帳號是tommadams

外部連結

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.