本篇博客讲解AlphaGo Zero算法。它对比于AlphaGo的改进在于它并不是学习人类棋谱。学习人类棋谱有一定的局限,第一就是人类下棋有局限,创新比较少;第二就是人类的棋谱少。AlphaGo Zero算法通过自我对弈完成棋力提高,可以克服以上两点。在学习AlphaGo Zero之前需要先学习MCTS搜索。
MCTS搜索
首先看下公式:
score = w i n i + c ln N i n i \text{score = }\ \frac{w_i}{n_i}+c\sqrt{\frac{\ln N_i}{n_i}} score = niwi+cnilnNi
其中, w i w_i wi是 i i i节点的胜利次数, n i n_i ni是 i i i节点的模拟次数, N i N_i Ni是所有模拟次数, c c c 是探索常数,理论值为 2 \sqrt{2} 2
比如对于下面的棋局,对于根节点来说,有3个选择,第一个选择7胜3负,第二个选择3胜5负,第三个选择0胜3负。
见下图,如Selection,白色为白子走,黑色为黑棋走; 11 / 21 11/21 11/21表示走此棋根据经验21局11胜。对于此节点来说,有3个选择,第一个选择7胜3负,第二个选择3胜5负,第三个选择0胜3负。

根据公式算出score,设 C = 10 C=10 C=10
第一个节点:
s c o r e ( 7 , 10 ) = 7 / 10 + C ⋅ log ( 21 ) 10 ≈ 6.2 score(7,10) =7/10 + C \cdot \sqrt{\frac{\log(21)}{10}} \approx 6.2 score(7,10)=7/10+C⋅10log(21)≈6.2
第二个节点:
s c o r e ( 3 , 8 ) = 3 / 8 + C ⋅ log ( 21 ) 8 score(3,8) = 3/8 + C \cdot \sqrt{\frac{\log(21)}{8}} score(3,8)=3/8+C⋅

本文深入解析AlphaGoZero算法,介绍其如何通过自我对弈提升棋力,而非依赖人类棋谱。文章详细阐述MCTS搜索原理及在AlphaGoZero中的应用,包括选择、扩展、仿真和回溯四个阶段。此外,还探讨了AlphaGoZero的神经网络结构及其在自我对弈学习、神经网络训练和网络评估三个阶段的作用。

103

被折叠的 条评论
为什么被折叠?



