不用人类知识精通围棋
人工智能的一个长期目标是可以学习到在具有挑战领域超越人类的算法,最近,阿尔法围棋成为第一个在围棋游戏中击败世界冠军的程序。在阿尔法围棋的树搜索中,使用深度神经网络来评估当前形势和选择落子位置。这些神经网络由人类专家的棋谱指导学习训练,并通过自我博弈来强化学习。在这里,我们引入了一种没有使用人类的数据、指导或超越游戏规则的领域知识,只基于强化学习的算法。阿尔法围棋成为了自己的老师:一个神经网络被训练来预测阿尔法围棋自己的落子选择和阿尔法围棋游戏最后的赢家。这种神经网络提高了树搜索的强度,从而提高了在下一次迭代中落子选择的质量和自我博弈的能力。我们的新项目“阿尔法围棋零“取得了超人类的成绩,以100比0战胜了此前公布的冠军阿尔法围棋。
在人工智能方面取得了很大的进展,这些人工智能的学习系统使用监督学习来复制人类专家的决策。然而,专家标定数据集通常是昂贵的、不可靠的或根本不可得到的。即使有可靠的数据集可用,他们也可能会对在这种利用人类经验训练的系统的性能施加一个上限。相比之下,强化学习系统是根据自身经验进行训练的,原则上允许它们超越人类能力,并在缺乏人类专家的领域进行操作。最近,通过强化学习训练的深度神经网络取得了快速的进展。这些系统在电脑游戏中表现优于人类,比如雅达利和3D虚拟环境。然而,最具挑战性的领域——比如围棋——被广泛认为是人工智能的重大挑战——在广阔的围棋搜索空间中,需要一个精确而复杂的预测。在这些领域中,传统的方法以前都没有达到人类水平。阿尔法围棋是第一个在围棋中获得超人性能的程序。2015年10月,我们称其为“阿尔法围棋樊”的版本,击败了欧洲冠军樊麾。阿尔法围棋樊使用了两个深度神经网络:一个输出落子概率的策略网络,一个输出形势评估的价值网络。该策略网络最初是使用监督学习,来准确预测人类专家的行动,随后被策略梯度强化学习所完善。价值网络被训练来预测策略网络对自己博弈的游戏赢家的预测。一旦训练完成,这些网络结合蒙特卡洛树搜索来提供有前瞻性的搜索,利用策略网络来缩小搜索空间来得到高概率的落子,和使用价值网络(结合蒙特卡洛的走子中使用抽到快速走子策略)来评估在蒙特卡洛树中的位置。随后的版本,我们称之为阿尔法围棋李,使用了类似的方法(见方法),并在2016年3月击败了18次国际冠军得主李世石。
我们的程序——阿尔法围棋零,与阿尔法围棋樊及阿尔法围棋李在几个核心的方面有所不同。首先也是最重要的,它是从随机下棋开始,通过自我博弈强化学习训练,没有任何监督或使用人类数据。其次,它只使用在棋盘上的黑子和白子作为输入特征。第三,它使用一个单独的神经网络,而不是把策略网络和价值网络分开。最后,它使用一种更简单的树搜索,并依赖于这个单一的神经网络来评估形势和走子,但不执行任何蒙特卡罗输出。为了实现这些结果,我们引入了一种新的强化学习算法,在训练循环中加入了前瞻搜索,从而得到了快速的性能提升和精确而稳定的学习。在后面的方法一章,对搜索算法、训练过程和网络结构等方面的技术细节,做了进一步的阐述。