# 1. AlphaGo介绍

# 1.1. 两篇论文

  1. David Silver et al., Mastering the Game of Go with Deep Neural Networks and Tree Search, Nature, 2015.
  2. David Silver et al., Mastering the Game of Go without Human Knowledge,Nature, 2017.

三个深度策略网络 (Policy Networks),一个深度估值网络(Value Network)

img

# 1.2. 深度策略网络 pσ : (Supervised Learning Policy Network)

  • 输入:当前棋盘状态
  • 输出:下一步的走法
  • 训练数据: KGS Go SERVER上的 三亿个样本
  • 网络设置: 13层深度网络。
  • 输入的特征如下图

img

  • 结果:57%正确率,3ms一步

这里的正确率指,通过棋盘的状态预测下一步走棋,判断是否和高手下的是否一致。57%是很高的数字,因为上一次这样走、下一次还这样走的可能性比较低。

具体参数如下:

img

优化分析 :

img

棋盘特征:

img

# 1.3. 深度策略网络 pρ : (Reinforcement Learning Policy Network)

  1. 网络结构、输入输出与 pσ 完全一样
  2. 一开始初始化网络参数ρ = σ
  3. 参数更新策略,自己和自己下棋,不断下下去直到分出胜负

img

上式中, pρ(at|st) 为在第t步走下一步at的概率,当胜利时,Zt 等于1,否则 Zt 等于0。

强化学习训练策略:

img

对手是比他差一点,然后他提升一点,让他的对手也提升一点

训练细节和结果:

img

# 1.4. 深度策略网络pπ: (Rollout Policy Network)

  1. 输入特征比pσ 和 pρ少。

img

  1. 网络结构更简单。

换句话说,这个网络以牺牲准确率换取速度。24.2%正确率,2um一步

# 1.5. 深度估值网络vθ: (Rollout Policy Network)

  1. 输入:当前棋盘状态 (与 pσ输入一样),以及执黑或执白
  2. 输出: 获胜的概率(一个0到1的数)
  3. 参数更新策略:

img

用pρ来预测z

步骤:

img

多次模拟未来棋局,然后选择在模拟中获胜次数最多的走法

img

蒙特卡洛树搜索 (Monte Carlo Tree Search)最终确定走棋。

img

  1. 一个是专家的意见,一个是真实的走法,兰姆达是其平衡因子
  2. 除以N是赋予其随机性,就是不要陷入局部走法,给其他位置以一定的机会

img

# 1.7. AlphaGo Zero 的改进

  1. 完全不需要人类棋谱,采用自己和自己下棋的方式学习
  2. 将走棋网络和估值网络合并为一个网络

img

img

自学习过程和神经网络训练过程

img

标签π的生成

img

目标函数