作者在论文中写道,AlphaGo Zero 证明了即使在最具挑战的领域,纯强化学习的方法也是完全可行的:不需要人类的样例或指导,不提供基本规则以外的任何领域知识,使用强化学习能够实现超越人类的水平。此外,纯强化学习方法只花费额外很少的训练时间,但相比使用人类数据,实现了更好的渐进性能(asymptotic performance)。
AlphaGo Zero 得到这样的结果,是利用了一种新的强化学习方式,在这个过程中,AlphaGo Zero 成为自己的老师。这个系统从一个对围棋游戏完全没有任何知识的神经网络开始。然后,通过将这个神经网络与一种强大的搜索算法相结合,它就可以自己和自己下棋了。在它自我对弈的过程中,神经网络被调整、更新,以预测下一个落子位置以及对局的最终赢家。
这个更新后的神经网络又将与搜索算法重新组合,进而创建一个新的、更强大的 AlphaGo Zero 版本,再次重复这个过程。在每一次迭代中,系统的性能都得到一点儿的提高,自我对弈的质量也在提高,这就使得神经网络的预测越来越准确,得到更加强大的 AlphaGo Zero 版本。
在进行了3天的自我训练后,AlphaGo Zero 在100局比赛中以100:0击败了上一版本的 AlphaGo——而上一版本的 AlphaGo 击败了曾18次获得围棋世界冠军的韩国九段棋士李世乭。经过 40 天的自我训练后,AlphaGo Zero 变得更加强大,超越了“Master”版本的 AlphaGo——Master 曾击败世界上最优秀的棋士、世界第一的柯洁。
在经过数以百万计的 AlphaGo vs AlphaGo 的对弈后,这个系统逐渐从零开始学会了下围棋,在短短几天内积累了人类数千年积累的知识。AlphaGo Zero 也发现了新的知识,开发出非常规的策略和创造性的新下法,这些新下法超越了它在与柯洁和李世乭比赛时发明的新技巧。
尽管目前仍处于早期阶段,但 AlphaGo Zero 成为了朝着这个目标迈进的关键一步。DeepMind 联合创始人兼 CEO Demis Hassabis 评论称:“AlphaGo在短短两年里取得了如此令人惊叹的成果。现在,AlphaGo Zero是我们项目中最强大的版本,它展示了我们在更少的计算能力,而且完全不使用人类数据的情况下可以取得如此大的进展。
图1:AlphaGo Zero 自我对弈训练的流程:a. 程序自己和自己下棋,标记为s1, ..., sT。在每个位置st,一个MCTS αθ被执行(见图2),使用最新的神经网络fθ。每个走子选择的依据是通过MCTS, at ∼ πt计算的搜索概率。最终的位置sT根据游戏规则计算对局的最终胜者z。b. AlphaGo Zero 中神经网络的训练。该神经网络将棋盘位置st作为输入,与参数θ一起讲它传送到许多的卷积层,并同时输出表示每一走子的概率分布的向量 pt 和一个表示当前玩家在位置 st 上的赢率的标量值 vt。
MCTS 使用神经网络 fθ 指导其模拟(参见图2)。搜索树中的每条边 (s, a) 都存储了一个概率先验 P(s, a),一个访问数 N(s, a),以及动作值 Q(s, a)。每次模拟都从根节点状态开始,不断迭代,选择能将置信区间 Q(s, a)+ U(s, a) 的上层最大化的落子结果,直到走到叶节点 s′。
论文中,为了分开结构和算法的贡献,DeepMind研究人员还比较了 AlphaGo Zero 的神经网络架构和先前与李世乭对弈时的 AlphaGo (记为 AlphaGo Lee)的神经网络架构的性能(见图4)。
我们构建了4个神经网络,分别是在 AlphaGo Lee 中使用的分开的策略网络和价值网络,或者在 AlphaGo Zero 中使用的合并的策略和价值网络;以及 AlphaGo Lee 使用的卷积网络架构,或 AlphaGo Zero 使用的残差网络架构。每个网络都被训练以最小化同一个损失函数(公式1),训练使用的是 AlphaGo Zero 在72小时的自我对弈之后产生的同一个自我对弈棋局数据集。
图4:AlphaGo Zero 和 AlphaGo Lee 的神经网络架构比较。使用分开的策略和价值网络记为(sep),使用组合的策略和价值网络记为(dual),使用卷积网络记为(conv),使用残差网络记为(res)。“dual-res”和“sep-conv”分别表示在 AlphaGo Zero 和 AlphaGo Lee 中使用的神经网络架构。每个网络都在同一个数据集上训练,该数据集由 AlphaGo Zero 的自我对弈产生。a,每个训练好的网络都与 AlphaGo Zero 的搜索相结合,以得到一个不同的玩家。Elo等级分是由这些不同玩家之间的评估游戏计算得到的,每一步棋有5秒的思考时间。b,对每个网络架构的职业棋手的走法(从GoKifu数据集得来)的预测准确性。c,每个网络架构的人类职业棋手的棋局结果(从GoKifu数据集得来)的MSE。