成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何利用 Python 打造一款簡易版 AlphaGo

大數據
2017 年伊始,再度出山的 AlphaGo 化名 Master 在網絡圍棋平臺上打遍棋界無敵手。你是否也想打造一個自己的 AlphaGo 呢?GitHub 用戶 Brian Lee(brilee)發布了一個效仿 AlphaGo 的極簡圍棋引擎的 Python 實現 MuGo。

[[181511]]

2017 年伊始,再度出山的 AlphaGo 化名 Master 在網絡圍棋平臺上打遍棋界無敵手。你是否也想打造一個自己的 AlphaGo 呢?GitHub 用戶 Brian Lee(brilee)發布了一個效仿 AlphaGo 的極簡圍棋引擎的 Python 實現 MuGo。

這是 AlphaGo 基本組成部分的一個純 Python 實現。

AlphaGo 邏輯/控制流(logic/control flow)其實并不非常復雜,本項目就是其復現。AlphaGo 的秘密武器是在于其各種神經網絡之中。

就我所知,AlphaGo 在對弈過程中使用了三個神經網絡。

***個神經網絡是一個速度很慢但很準確的策略網絡(policy network)。這個網絡被訓練用來預測人類的走子(大約 57% 的準確度),它會輸出一個可能走子的列表,并且每一種走子方式都對應了一個概率。這個網絡為蒙特卡洛樹搜索(MCTS)提供了可能的走子起點。這個神經網絡很慢的一大原因是它具有很大的規模,這是因為這個神經網絡的輸入是圍棋棋盤上的各種計算成本高昂的屬性——氣的數量、叫吃、征等等。

第二個神經網絡也是一個策略網絡,它比***個更小更快,但準確度更低(大約 24%),這個網絡并不使用復雜的屬性作為輸入。一旦到達了當前 MCTS 樹的葉節點(leaf node),這個第二個更快的網絡就會被用來得到一個棋盤局面的可能走子,并且對這個這個最終局面進行評分。

第三個神經網絡是一個價值網絡:它為棋盤輸出一個預期獲勝的范圍,而不會自己下任何棋。

然后,將使用第二個神經網絡的蒙特卡洛得到的結果和使用第三個神經網絡的價值計算結果進行平均,然后這個值被記為該 MCTS 節點的近似結果。

開始

安裝 TensorFlow

開始需要安裝 TensorFlow,并使用 GPU 驅動器(即英偉達顯卡的 CUDA 支持)

獲取用于監督學習的 SGF

接下來需要一個 SGF 文件源。你可以在 https://u-go.net/gamerecords 獲取 15 年時長的高段位對局數據。你也可以從其它來源下載專業比賽的數據庫。

預處理 SGF

第三,對你的 SGF 文件進行預處理。這需要 SGF 文件中的所有局面并提取出每一個局面的特征以及記錄正確的下一步走子。

然后將這些局面分割成塊(chunk)——一塊用于測試,其它的都用于訓練。這個步驟需要一定時間,而且要是你修改了 features.py 文件中的特征提取步驟,你還需要重新預處理。

  1. python main.py preprocess data/kgs-* 

注:這句代碼用了通配符,比如說:KGS 目錄可以名為 data/kgs-2006-01、data/kgs-2006-02 等等

監督學習(策略網絡)

使用上面預處理過的 SGF 數據(默認輸出目錄是 ./processed_data/),你可以訓練策略網絡。

  1. python main.py train processed_data/ --save-file=/tmp/ 

網絡訓練好了之后,當前模型會被保存在 --save-file。你可以通過如下代碼繼續訓練這個網絡:

  1. python main.py train processed_data/ --read-file=/tmp/savedmodel  
  2. --save-file=/tmp/savedmodel --epochs=10 --logdir=logs/my_training_run 

此外,你也可以使用 TensorBoard 跟蹤你的訓練過程——如果你為每一次運行定義了一個不同的名字(如:logs/my_training_run、logs/my_training_run2),你可以將這些運行彼此重疊起來:

  1. tensorboard --logdir=logs/ 

與 MuGo 對弈

MuGo 使用了 GTP 協議,你可以通過任何兼容 GTP 的程序來使用它。要調用原始策略網絡,使用如下代碼:

  1. python main.py gtp policy --read-file=/tmp/savedmodel 

要調用集成了 MCTS 的策略網絡版本,使用:

  1. python main.py gtp mcts --read-file=/tmp/savedmodel 

通過 GTP 下棋的一種方式是使用 gogui-display(它有一個兼容 GTP 的 UI)。你可以在 http://gogui.sourceforge.net/ 下載 gogui 工具套件。參見 http://gogui.sourceforge.net/doc/reference-twogtp.html 了解使用 GTP 的有趣方式。

  1. gogui-twogtp -black 'python main.py gtp policy --read-file=/tmp/savedmodel' -white 'gogui-display' -size 19 -komi 7.5 -verbose -auto 

另一種通過 GTP 玩的方式是對抗 GnuGo,同時還能觀看比賽:

  1. BLACK="gnugo --mode gtp"  
  2. WHITE="python main.py gtp policy --read-file=/tmp/savedmodel"  
  3. TWOGTP="gogui-twogtp -black \"$BLACK\" -white \"$WHITE\" -games 10 \  
  4. -size 19 -alternate -sgffile gnugo"  
  5. gogui -size 19 -program "$TWOGTP" -computer-both -auto 

還有一種玩法是通過 GTP 連接 CGOS(http://yss-aya.com/cgos/ 計算機圍棋在線服務器)。由 boardspace.net 運營的 CGOS 服務器已經關閉了;你需要在 yss-aya.com 接入 CGOS 服務器。

配置好了你的 cgos.config 文件之后,你可以通過 cgosGtp -c cgos.config 連接到 CGOS,以及使用 cgosView yss-aya.com 6819 查看你自己的游戲。

MuGo 項目地址:https://github.com/brilee/MuGo

責任編輯:武曉燕 來源: 網絡大數據
相關推薦

2015-11-27 09:18:11

AngularJSWeb應用

2014-12-16 10:11:22

2021-11-17 15:36:04

鴻蒙HarmonyOS應用

2023-12-29 08:31:49

Spring框架模塊

2022-03-04 09:05:55

StarRocks數據湖數據質量

2021-07-12 15:50:55

Go 語言netstat命令

2022-10-20 11:49:49

JS動畫幀,CSS

2024-11-27 06:39:28

2022-04-30 09:49:58

終端工具插件

2022-02-11 13:44:56

fiber架構React

2017-03-06 11:02:59

產品軟件Power Desig

2021-12-30 08:56:57

Python摸魚倒計界面Python基礎

2013-09-04 13:27:05

Linux發行版

2017-08-11 10:38:12

LinuxCoreOS發行版

2023-03-31 14:51:46

CSS圖案背景開發

2015-08-10 11:41:00

SQL注入SQL注入工具Sqlmapi

2015-07-28 10:51:03

私有云AWS企業IT

2015-08-18 09:11:34

杜長偉APP

2020-12-03 09:00:02

Java外賣系統

2021-01-10 08:14:01

Go語言TCP掃描器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国内自拍真实伦在线观看 | 久久久片 | 欧美性生活视频 | 91精品国产综合久久婷婷香蕉 | 欧美一区二区在线免费观看 | 福利视频网站 | 日韩理论电影在线观看 | 天天综合成人网 | 中文字幕视频免费 | 欧美专区在线视频 | 亚洲免费人成在线视频观看 | 亚洲免费视频在线观看 | 欧美日韩一区二区在线播放 | 成人精品一区亚洲午夜久久久 | 欧美亚洲日本 | 亚洲福利av| 日韩欧美在线免费 | 精品免费国产一区二区三区四区介绍 | 91av免费看| 99精品久久 | 亚洲一区二区 | 一级欧美 | 亚洲视频在线免费 | 亚洲免费大片 | 国产精品欧美一区二区三区 | 久久久国产一区二区三区四区小说 | 亚洲精选久久 | 国产高清美女一级a毛片久久w | 国产免费看 | 久草.com | 国产蜜臀97一区二区三区 | 国产一级片一区二区三区 | 国产欧美一区二区三区在线看 | 日韩在线精品 | 九九精品在线 | 日本成人福利 | 琪琪午夜伦伦电影福利片 | 四虎最新视频 | 久色视频在线观看 | 一区欧美 | 国产成人av在线 |