专栏首页AI研习社Github 项目推荐 | 最小化类 AlphaGo Zero 引擎 —— Nochi

Github 项目推荐 | 最小化类 AlphaGo Zero 引擎 —— Nochi

Nochi 是一个极简的 AlphaGo 引擎,它用 Keras 神经模型代替 Monte Carlo 模拟。Nochi 不会像 Michi 那样受人瞩目,但是它仍有一定的作用。

这不是一个像 AlphaGo 那样真正的「零知识」(zero-knowledge)系统,作者稍微做了一些调整。

Nochi 已经被证实能够在两周内接近 GNUGo 的水平(8500 场比赛,6 线程加一款 Tesla M60 GPU)。

用法:

首先,在脚本的开始处设定 N 的值来确定棋盘的大小,N 默认为 19.

开始训练:

python ./michi.py selfplay

它会自动生成一个 ID 并做周期性快照(这些数字应该乘以线程数来获得真实的局数)。要恢复成其他的模式(比如开始 gameio 或者 gtp),请将 ID 设置为:

python ./michi.py selfplay G171107T013304_000000150

开始游戏,你可以传递 gtp 参数并在 gogui 中启动它,或者让它用 GNUGo 玩游戏:

gogui-1.4.9/bin/gogui-twogtp -black 'python ./michi.py gtp G171107T013304_000000150' -white 'gnugo --mode=gtp --chinese-rules --capture-all-dead' -size 7 -komi 7.5 -verbose -auto -alternate -games 20 -sgffile x

Nochi 还支持监督训练:

while true; do find GoGoD-2008-Winter-Database/ -name '*.sgf' | shuf; done | python ./michi.py replay_train

用 smt 将用于位置输出的实际 MCTS 训练信号和数值监督结合起来:

while true; do find GoGoD-2008-Winter-Database/ -name '*.sgf' | shuf; done | python ./michi.py replay_traindist G171107T224743_R000030000

你可以用快照在自我对局、监督、监督 + MCTS 中自由切换,它们之间是相互兼容的。

Github 地址:

https://github.com/rossumai/nochi

本文分享自微信公众号 - AI研习社(okweiwu),作者:孔令双

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-02-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Github 项目推荐 | GAN 非平稳纹理合成

    该库是论文「Non-stationary texture synthesis using adversarial expansions.」的官方代码。

    AI研习社
  • Github 项目推荐 | 用于构建端对端对话系统和训练聊天机器人的开源库 —— DeepPavlov

    DeepPavlov 是一个开源的会话 AI 库,建立在 TensorFlow 和 Keras 之上,用于以下设计: NLP和对话系统研究; 实施和评估复杂的会...

    AI研习社
  • Github项目推荐 | 用TensorFlow 2.0实现CartoonGAN图片卡通化

    通过本项目,你可以使用由TensorFlow 2.0 Alpha驱动的CartoonGAN(CVPR 2018)工具生成你自己的卡通风格图像。

    AI研习社
  • 重磅推荐 | Flask项目脚手架--Flask-Application

    Flask-App是专门给Flask提供项目初始化的工具,通过该工具可以快速地创建一个Flask的初始项目/应用。新创建的项目/应用会包含良好的目录结构和基础的...

    上帝De助手
  • Python工程的文档结构

    Python工程的文档结构,可以参考https://stackoverflow.com/questions/193161/what-is-the-best-pr...

    SeanCheney
  • Django框架基础知识01-配置环境

    •新建项目的命令: django-admin startproject projectname

    py3study
  • 还是用RSeQC对比对后的转录组数据做一下质控

    那个时候写教程,以软件安装,软件input和output为主,因为觉得新手最容易纠结的就是这些了,但是现在回过头来看,软件安装已经成了小菜一碟,对各种bam/s...

    企鹅号小编
  • Windows下Django项目搭建流程

    声明:本文为原创,作者为 对弈,转载时请保留本声明及附带文章链接:http://www.duiyi.xyz/windows%e4%b8%8bdjango%e9%...

    对弈
  • 多年经验的大牛总结出来的Python案例超详细

    This batch renames a group of files in a given directory, once you pass the curr...

    QQ1622479435
  • Django官方为什么没有标准项目结构

    Django官方并没有提供标准的项目结构,于是网上众说纷纭,百花齐放,一千个读者有一千个哈姆雷特。那我们该怎么设计项目结构呢?在回答这个问题之前,先了解一下Dj...

    dongfanger

扫码关注云+社区

领取腾讯云代金券