尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

2小时练出能下赢你的AlphaZero五子棋AI,不靠人类棋谱

2小时练出能下赢你的AlphaZero五子棋AI,不靠人类棋谱 2小时练出能下赢你的AlphaZero五子棋AI不靠人类棋谱【免费下载链接】AlphaZero_GomokuAn implementation of the AlphaZero algorithm for Gomoku (also called Gobang or Five in a Row)项目地址: https://gitcode.com/gh_mirrors/al/AlphaZero_Gomoku只靠自我对弈AI自己跟自己下五子棋每一步、每一局都在变强人类棋谱一子不用。AlphaZero五子棋能在你的电脑上直接跑起预训练模型、立刻和AI下棋也能只用2小时从零练出一个像样的对手。先跑起来3步和AI对一手环境要求只想用预训练好的模型下棋两个库就够了Python 2.7、Numpy 1.11。打算从零训练的话环境里再装上下面任意一个深度学习框架Theano 0.7另需 Lasagne 0.1PyTorch 0.2.0TensorFlow拉代码并开局把仓库克隆下来在目录里敲一条命令就能开局git clone https://gitcode.com/gh_mirrors/al/AlphaZero_Gomokupython human_play.py默认情况下human_play.py 会用预训练模型在 8x8 棋盘上打五子连珠你按2,3这样的坐标格式落子即可。想换别的预训练模型、或者换一套不依赖神经网络的纯 MCTS 对手改一下这个入口文件就行。AI是怎么自己学会下棋的把它理解成一对搭档。一个是蒙特卡洛树搜索MCTS一种往前推演的决策办法给每个候选落点快速模拟若干种后续局面再挑期望收益最高的那个。另一个是策略价值网络一个神经网络看一眼棋盘就能猜出哪手棋最值得下、当前谁占优。关键在于老师就是它自己AI 和自己对弈每局结束把棋局和搜索过程存下来当作训练素材再拿去更新网络。下一局它找好棋的方向更准判断胜负也更稳。这个循环不停转AI 就从完全不会下棋长成一位有模有样的对手。从零训练你的棋力模型选一个框架用项目备好了 Theano/Lasagne、PyTorch、TensorFlow、Keras 四套网络实现。切换很简单改 train.py 里的一行导入——把不用的框架关掉把你用的那个打开。PyTorch 想跑 GPU 的话把use_gpuTrue打开即可。启动训练与模型保存python train.py启动后自我对弈、素材积攒、网络更新全部自动进行。每 50 次更新会落盘两个模型文件best_policy.model历史最强和current_policy.model当前状态期间还会定期让纯 MCTS 对手来验收水平。中途按 CtrlC 即可退出之后用已保存的模型作初始模型接着练。3条实战训练建议6x6棋盘打四子连珠起步自我对弈 500~1000 局大约2小时通常就能拿到一个不错的模型默认参数就是这套配置。8x8棋盘五子连珠要加码约需 2000~3000 局在单台普通PC上大概要跑2天。三个关键参数可动learn_rate默认 2e-3、n_playout每手棋的模拟次数默认 400、batch_size默认 512。机器余量足就提高模拟次数换棋力时间紧就压低它。项目文件地图game.py棋盘与规则本体落子合法性、胜负判定全在这mcts_pure.py不接网络的 MCTS 版本纯随机模拟兼做训练时的考官mcts_alphaZero.py搜索策略价值网络的组合对局和自我对弈真正用的对手policy_value_net.py、policy_value_net_pytorch.py、policy_value_net_tensorflow.py、policy_value_net_keras.py各框架的网络实现policy_value_net_numpy.py负责加载预训练模型不依赖任何框架train.py整条训练流水线从自我对弈到网络更新都在这里human_play.py人机对战入口写在最后整个流程其实就三步玩起来、看懂它、练起来。 不妨先拿 6x6 棋盘跑 500 局自我对弈看看 AI 的落子怎么一步步变聪明小棋盘稳了再上 8x8 打五子连珠。【免费下载链接】AlphaZero_GomokuAn implementation of the AlphaZero algorithm for Gomoku (also called Gobang or Five in a Row)项目地址: https://gitcode.com/gh_mirrors/al/AlphaZero_Gomoku创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表