1楼. 真正的Alphazero其实是C库开发的,这里发布的基于python的代码。原版的核心算法代码是一个大佬复现的alphazero-go的版本,我在另一个大佬的国际象棋版下改出将棋版本。
整个代码分为四大步骤:预训练、自我博弈、训练及评估,其中第一个步骤是一次性的。首先通过`python src/shogi_zero/run.py sl`这个指令将/scripts/kif中的棋手的kif棋谱进行少回合的监督训练,得到一个“粗通将棋”的预训练模型。通过`python src/shogi_zero/run.py self`这个指令使用当前最好的模型(预训练模型)开始自己下棋,生成棋谱;通过`python src/shogi_zero/run.py opt`这个指令使用通过知识蒸馏、直接复制等手段得到的新模型对self得到的棋谱进行学习,不断迭代更新网络参数;通过`python src/shogi_zero/run.py eval`这个指令让opt模型与self模型对局,如50盘赢28盘,则self模型参数覆盖opt模型,opt模型用新参数接着自己打谱。
通过上述三个“死循环”,AI不断地迭代更新
(1/2)
下一段 天哪名字不好起 4-25 16:15