国产成+人+综合+亚洲 欧美-国产成+人+综合+亚洲专-国产成+人欧美+综合在线观看-国产成a人片在线观看视频-国产成a人片在线观看视频99-国产成a人片在线观看视频下载

您現在所在的位置:首頁 >關于奇酷 > 行業動態 > “人機大戰”受矚目,Python簡易版AlphaGo領略智能魅力

“人機大戰”受矚目,Python簡易版AlphaGo領略智能魅力

來源:奇酷教育 發表于:

  如今,人工智能的勁風勢不可擋,甚至在政府報告上都劃為重點。回顧2016年人工智能界的頂級盛事,人機圍棋大戰絕對榜上有名。面對人類棋

  如今,人工智能的勁風勢不可擋,甚至在政府報告上都劃為重點。回顧2016年人工智能界的頂級盛事,人機圍棋大戰絕對榜上有名。面對人類棋手的失利,從2017年伊始,再度出山的AlphaGo化名Master在網絡圍棋平臺上已經打遍棋界無敵手,而5月23日-27日,在中國最負盛名的水鄉古鎮、世界互聯網大會永久會址--浙江烏鎮,中國圍棋協會將攜手谷歌共同舉辦“中國烏鎮圍棋峰會”,人工智能和人類棋手的對決將作為峰會的一個重要環節亮相,谷歌AlphaGo將對決圍棋世界冠軍中國棋手柯潔。
  無論結果如何,這場人機大戰必然會被載入史冊。作為現階段人工智能的最高成就,AlphaGo一直十分受人矚目。雖然目前GOOGLE公司并未向外公布AlphaGo的編程語言,但提起人工智能、深度算法,人們第一個想到的自然是Python語言,GitHub一名用戶 Brian Lee(brilee)就發布了一款用Python實現,效仿 AlphaGo的極簡圍棋引擎。
  這是 AlphaGo 基本組成部分的一個純 Python 實現。
  就已經公開的數據所知,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 文件中的特征提取步驟,你還需要重新預處理。
  python main.py preprocess data/kgs-*
  注:這句代碼用了通配符,比如說:KGS 目錄可以名為 data/kgs-2006-01、data/kgs-2006-02 等等
  監督學習(策略網絡)
  使用上面預處理過的 SGF 數據(默認輸出目錄是 ./processed_data/),你可以訓練策略網絡。
  python main.py train processed_data/ --save-file=/tmp/
  網絡訓練好了之后,當前模型會被保存在 --save-file。你可以通過如下代碼繼續訓練這個網絡:
  python main.py train processed_data/ --read-file=/tmp/savedmodel
  --save-file=/tmp/savedmodel --epochs=10 --logdir=logs/my_training_run
  此外,你也可以使用 TensorBoard 跟蹤你的訓練過程--如果你為每一次運行定義了一個不同的名字(如:logs/my_training_run、logs/my_training_run2),你可以將這些運行彼此重疊起來:
  tensorboard --logdir=logs/
  與 MuGo 對弈
  MuGo 使用了 GTP 協議,你可以通過任何兼容 GTP 的程序來使用它。要調用原始策略網絡,使用如下代碼:
  python main.py gtp policy --read-file=/tmp/savedmodel
  要調用集成了 MCTS 的策略網絡版本,使用:
  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 的有趣方式。
  gogui-twogtp -black 'python main.py gtp policy --read-file=/tmp/savedmodel' -white 'gogui-display' -size 19 -komi 7.5 -verbose -auto
  另一種通過 GTP 玩的方式是對抗 GnuGo,同時還能觀看比賽:
  BLACK="gnugo --mode gtp"
  WHITE="python main.py gtp policy --read-file=/tmp/savedmodel"
  TWOGTP="gogui-twogtp -black \"$BLACK\" -white \"$WHITE\" -games 10 \
  -size 19 -alternate -sgffile gnugo"
  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 查看你自己的游戲。
  從結果來看,使用Python實現的這款引擎雖然不能與AlphaGo相提并論,但也實現了圍棋的部分基本功能。這也再次說明了,Python是人工智能、深度學習開發語言的不二之選。奇酷教育Python高級開發培訓班,0元入學,先就業后付款;一周免費試聽,不滿意不繳費;完善的就業服務體系,保障就業。在這里,你不光能夠學會如何編寫程序,還能夠學會如何編寫高質量的程序,一躍成為專業的工程師!
  奇酷教育原創開發的Python培訓課程http://m.53542.cn/不僅涵蓋Web前后端開發和網絡爬蟲技術,還包括獨有的數據分析和機器學習,前端、服務端一網打盡。可從事Web前端、Web服務端、服務器運維、網絡爬蟲、大數據分析、機器學習等多種熱門職業,學員百分百高薪就業!
主站蜘蛛池模板: 97av在线播放 | 欧美一级视频免费观看 | 亚洲精品成人 | 国产精品福利久久2020 | 欧美日韩色视频 | 亚洲福利一区二区三区 | 婷婷自拍 | 日日拍夜夜嗷嗷叫视频 | 欧美日韩视频精品一区二区 | 欧美亚洲三级 | 欧美日韩精品国产一区二区 | 久久精品国产这里是免费 | 中文一区二区 | 亚洲好视频 | 国产九九视频在线观看 | 国内精品久久久久久久久久影视 | 国产亚洲精品国产 | 国产精品一区二区三区免费 | 国产极品嫩模在线观看91精品 | 九九在线精品视频播放 | 亚洲小视频在线观看 | 亚洲国产字幕 | 狠狠躁夜夜躁人人爽天天miya | 秋霞在线观看成人高清视频51 | 四虎永久免费在线 | 伊人久久大香 | 高清二区 | 久热免费在线观看 | 91久久综合九色综合欧美98 | 色综合天天综合网亚洲 | 精品国产亚洲一区二区三区 | 成人国产午夜在线视频 | 91精品国产品国语在线不卡 | 性夜影院爽黄a爽免费看网站 | 老司机久久精品 | 亚洲成人一区二区 | 亚洲精品一区二区三区在线观看 | 久久999视频 | 久久影院一区二区三区 | 欧美视频在线观看 | 夜夜做夜夜爽 |