最新科学与科技文章

Image credit:

谷歌 DeepMind 资深研究员黄士杰博士介绍 AlphaGo 的背后系统

Andy Yang
2016 年 3 月 18 日, 中午 11:30


如果大家有看李世石与 AlphaGo 的对奕的话,应该都会注意到在李世石对面有个将 AlphaGo 的棋步下到棋盘,并且将李世乭的棋步再输到电脑上的人。这位就是谷歌 DeepMind 的资深研究员,也是 AlphaGo 的主要程序开发者,台湾出身的黄士杰博士。黄士杰博士毕业于台湾师范大学,博士论文就是以「应用于电脑围棋之蒙地卡罗树搜索法的新启发式演算法」,本身也是业余六段的围棋棋手。


AlphaGo 的祕密,就在于它的深度学习网络。围棋是最终极的信息公开游戏,也就是说所有的信息都摆在电脑面前,因此困难度不在于「猜测」,而是在于如何能分析看似无限的信息与可能。AlphaGo 有两个主要的网络,一个称为「策略网络(Policy Network)」,一个称为「值网络(Value Network)」。前者是由学习人类的棋谱而来,经由分析数十万个人类的棋谱,它可以选出 20 个胜率最高的下一步棋,有效地减少分析的广度。后者则是盘面优势的判断机制,计算每种不同的下法进行后,胜率的变化。如果 AlphaGo 在试走了两三步棋后,发现胜率不足的话,就会放弃这个走法,改试其他的可能。换言之,值网络可以有效地减少分析的深度。如果值网络发现所有的走法胜率都不足 20% 的话,AlphaGo 就会投降啰。这两者加起来,让 AlphaGo 在有限时间内可以做出更多棋步的运算,成为远超过去围棋程序的存在。

黄士杰博士也分享了他坐在李世石九段前对奕的心得。因为自己也是棋手的关系,他完全知道李世乭面对的压力有多大,所以他尽量不出声,也不做什么大动作来影响对方。不过他自己也是非常辛苦的:AlphaGo 所有的参数都是以 AlphaGo 自己拥有的时间为基准,如果黄需要做任何事 -- 例如上厕所 -- 的话,用的都是 AlphaGo 的时间,所以这些额外用时都是愈少愈好的。

DeepMind 团队还在分析这次的比赛,特别是输掉的第四场,要了解是程序有 bug,还是学习网络终究有限制。目前 AlphaGo 还没有下一步的计划,特别是对于大家都在谈论的挑战棋王柯洁,目前还没有这样的准备。不过考虑到 AlphaGo 的开发仅三年就有这样的成果,再加上未来电脑运算能力只会愈来愈高,如果再给 AlphaGo 一年半载的话,说不定李世石真的就是史上唯一赢过 AlphaGo 一场的人了...