12月7日,谷歌旗下人工智能实验室DeepMind的研究团队在《科学》杂志上发表了封面论文,并公布了通用算法AlphaZero和测试数据。003010杂志评论说,单个算法可以解决许多复杂问题,这是创建通用机器学习系统和解决实际问题的重要一步。本文作者包括核心研发人员大卫西尔弗;AlphaGo的d员工和DeepMind的创始人戴密斯哈萨比斯。
AlphaGo在2016年与围棋世界冠军李世石比赛时首次为人所知,最终以4: 1的总比分夺冠。事实上,早在2016年1月,谷歌就在国际学术期刊《科学》上发表了一篇封面文章,介绍了AlphaGo以5:0,毫无退让地战胜了欧洲冠军、专业围棋第二段范辉。
2017年10月18日,DeepMind团队宣布了Alpha Go的最强版本,代号为AlphaGo Zero。当时DeepMind说象棋AI的算法主要基于复杂枚举,需要人工评估。在过去的几十年里,人们已经把这种方法做到了极致。而AlphaGo Zero在围棋上的超人表现,就是通过和自己下棋练出来的。
现在DeepMind研究团队已经将这种方法扩展到了AlphaZero的算法中。AlphaZero花了长达13天的时间“自学”,然后与世界冠军国际象棋AI对质:
在国际象棋比赛中,AlphaZero四小时内首次击败了第九季TCEC世界冠军斯托克菲什。
在象棋比赛中,AlphaZero在2小时后击败了国际象棋联合会的世界冠军Elmo。
在围棋中,AlphaZero经过30个小时的战斗,在李世石击败了AlphaGo。
AlphaZero:一个算法吃掉所有三个象棋。
最开始,前几代AlphaGo用人类玩家的棋谱训练了上千盘,学习如何玩围棋。当你到达AlphaGo Zero时,你跳过这一步,通过自我游戏来学习下棋,从零开始。系统从一个对围棋一无所知的神经网络开始,将这个神经网络和强大的搜索算法结合起来,自己下棋。游戏过程中,神经网络不断调整升级,预测每一步和最终的赢家。
和AlphaGo Zero一样,AlphaZero依靠深度神经网络、通用强化学习算法和来自随机小游戏的蒙特卡洛树搜索,通过自我游戏进行强化学习,除了游戏规则外没有任何知识背景。强化学习是一种通过“试错”的机器学习。
DeepMind在博客中介绍,AlphaZero一开始是完全失明的,但随着时间的推移,系统从和平游戏的输赢中学习,调整神经网络的参数等等。每一轮过后,系统的性能提升了一点,自我游戏的质量提升了一点,神经网络越来越精准。神经网络需要的训练量取决于游戏的风格和复杂程度。经过实验,AlphaZero花了9个小时掌握象棋,12个小时掌握象棋,13天掌握围棋。
Azero继承了AlphaGo Zero的算法设置和网络架构,但两者有很多不同之处。例如,围棋中很少出现平局,因此AlphaGo Zero在假设结果不是赢就是输的情况下估计并优化了获胜概率。阿尔法零将考虑平局或其他潜在结果,并估计和优化结果。
其次,棋盘旋转反转,结果不会改变,所以AlphaGo Zero会通过生成8幅对称图像来增强训练数据。但是在国际象棋和象棋中,棋盘是不对称的。因此,AlphaZero不会增强训练数据,也不会在蒙特卡洛树搜索过程中改变棋盘位置。
在AlphaGo Zero中,自我游戏是由之前所有迭代中最好的玩家生成的,自我游戏也与新玩家有关。但AlphaZero只从AlphaGo Zero继承了一个单一的神经网络,不断更新,而不是等待迭代完成。自我博弈是利用这个神经网络的最新参数生成的,因此省略了评估步骤和选择最佳玩家的过程。
此外,AlphaGo Zero使用贝叶斯优化调整搜索到的超参数;在Azero中,所有游戏都重复使用相同的超参数,因此无需针对特定游戏进行调整。唯一的例外是保证探索噪音和学习率。
研究团队在一场AlphaZero玩白色,Stockfish玩黑色的象棋游戏中,展示了AlphaZero蒙特卡洛树在1000次、10000次……和100万次模拟后的内部搜索状态。每个树形图显示了十个最常搜索的状态。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!