众所周知,AlphaGo 是一款由 Google 旗下 DeepMind 团队研发的围棋人工智能程序。它不仅是第一个击败人类职业围棋选手,也是第一个战胜世界冠军的程序,是围棋史上最具实力的选手之一。近期,AlphaGo 的升级版本以”Master / Magister” 的称谓与世界顶级的围棋选手进行了 60 场线上快棋赛,并取得了全胜的出色战绩。那么这位历史上首位获得这些荣誉的非人类棋手是如何进化不断强大起来的呢?Google 官方的这份简介,简单释放了背后的 “玄机”。

AlphaGo 如何进行训练?

193

一直以来,围棋就被认为是传统游戏中,对人工智能而言最具挑战性的项目。这不仅仅是因为围棋包含了庞大的搜索空间,更是因为对于落子位置的评估难度已远远超过了简单的启发式算法。

为了应对围棋的巨大复杂性,AlphaGo 采用了一种新颖的机器学习技术,结合了监督学习和强化学习的优势。通过训练形成一个策略网络(policy network),将棋盘上的局势作为输入信息,并对所有可行的落子位置生成一个概率分布。然后,训练出一个价值网络(value network)对自我对弈进行预测,以 -1(对手的绝对胜利)到 1(AlphaGo 的绝对胜利)的标准,预测所有可行落子位置的结果。这两个网络自身都十分强大,而 AlphaGo 将这两种网络整合进基于概率的蒙特卡罗树搜索(MCTS)中,实现了它真正的优势。最后,新版的 AlphaGo 产生大量自我对弈棋局,为下一代版本提供了训练数据,此过程循环往复。

Google

AlphaGo 如何决定落子?

在获取棋局信息后,AlphaGo 会根据策略网络(policy network)探索哪个位置同时具备高潜在价值和高可能性,进而决定最佳落子位置。在分配的搜索时间结束时,模拟过程中被系统最频繁考察的位置将成为 AlphaGo 的最终选择。在经过先期的全盘探索和过程中对最佳落子的不断揣摩后,AlphaGo 的搜索算法就能在其计算能力之上加入近似人类的直觉判断。

AlphaGo