他的神经网络由四个层级组成,能够以三种不同方式共同思考棋盘上每一个位置。第一种着眼于国际象棋的全局状态,例如每边棋子的数量和类型,轮到哪一方移动,位置对换等;第二着眼于棋子的特性,例如双方每个棋子的位置;最后就是映射出每个棋子的攻击和防守。
计算机自学下棋
训练这些机器通常采用的方法,是研究人员手动评估每一个位置,并用这些信息指导机器识别出哪些步数是有效的,哪些效果没那么好。但是,Matthew Lai的目标更加雄心勃勃,他想让机器自学这些内容。
他采用了一个引导技术,让人工智能Giraffe自己与自己对决,从而改善对未来下棋走位的预测。在比赛胜利、失败或打平之后,会最终确定每一步的价值。以这种方式,计算机可以了解走哪个位置是有效的,哪些位置效果不好。
在Giraffe经过培训之后,最后一步就是测试它的能力是否达标了。他用一个标准数据库Strategic Test Suite来测试,这一数据库可以测试改计算引擎识别不同的战略构想的能力。他将对这项测试的结果进行评分,总分为15000。
整个训练过程中,他会测试机器的各个阶段成绩。当引导过程开始时,Giraffe很快就达到了6000分的成绩,仅在72小时就达到了9700分。9700分已经可以成为世界上最好的国际象棋引擎了。
Matthew Lai接着使用相同种类的机器学习方法,确定对方一个特定的移动是否值得机器进行跟随。这一点很重要,因为它可以防止不必要的搜索,极大提高计算效率。
结果表明,46%的情况下计算机所走的步数都是最好的一步,70%的时间都能走出排在前三名的好棋。因此,计算机并没有收到对方的动作的影响。
这一方法代表着国际象棋引擎的工作方式发生了重大变革,不过它并不完美。Giraffe的一个缺点是,神经网络比其他类型的数据处理速度慢得多。Giraffe花费的时间比以往的国际象棋引擎要多耗费约10倍。
小编推荐阅读