如何战胜阿尔法围棋? 两条路:黑客和棋道

2017年01月06日10:23    新浪体育 微博 收藏本文
资料图资料图

  文章来源:微博 metameta

  ■  知己知彼,可黑可道。在这个后六十连胜的时代,来聊聊怎么样才可能赢master版的阿狗。

  A-阿狗的机制

  要讲黑道先得了解一下alpha go的基本运行机制。它一共有四个大模块1.MCTS,2。快速展开网络,3。走子网络,4,估值网络。名词听着很陌生,其实不难理解。快速展开网络的功能就是对一个目前棋局做快速的展开下到棋局结束,然后程序判断是赢还是输,这是阿狗判断的一个依据。走子网络的功能是选下一步走在哪里的一些可能性。走子网络有两个选择(其实是三个),一个是通过KGS高水平对局训练出来的走子网络(SL),另一个是在此基础上通过reinforcement learning训练出来的走子网络(RL)。两个网络结构差不多,但参数不一样,RL是左右互搏来提高自己水平的,它有优点也有缺点,这里不展开。价值网络的用处是估算目前局势好不好,是基于全局输赢的判断。它是通过RL左右互搏几千万,现在可能更多,盘棋训练出来的。MCTS是阿狗用来搜索并且确切的挑出下一手是什么的算法。其它网络是基础的支撑。MCTS先挑几个有希望的下一手,然后在这些手的基础上再展开几手,这样就有一个树形结构,到达第L层时,不再用走子网络展开搜索而是直接用快速展开网络展开到底。这样就把一次模拟做完,这样重复很多次,MCTS可以通过自己的算法挑一个最好的下法,然后落子。

  这么轻描淡写的运行机制其实是建立在巨型运算之上的,这个计算不光是对弈时的运算量,更重要的是这些网络的训练需要耗费极大的运算量。更可贵的是程序员的智慧,因为里面的技术小细节可以决定网络质量,继而影响机器下棋水平。没有这些阿狗就没有今天,因此归根到底,狗是人类的朋友和宠物。

  这个运行机制是如何提高阿狗类人工智能棋力的呢?deep mind的论文里告诉大家每一个模块对胜率都有重要的影响力。比如快速走子展开网络,它的影响的可能主要是局部对杀的能力。走子网络主要提高机器的布局能力,也就是说它其实是建立在人类智慧之上的。估值网络的功效在于给机器提供一个对整盘局势的判断的依据,虽然MCTS选落子的时候,它不是唯一选择。如果算法只用它,机器棋力会下降。事实上,阿狗的算法里控制了一个平衡:exploitation 和exploration。失去平衡的机器可能要么特别有想象力但有时会发疯,要么墨守成规比较好预测。MCTS和其它模块一起运行保障机器随时以大局为重并且眼光深邃而且宽广。用围棋语言就是算路深,妙手多,大局好。

  这就很好的解释了人类高手在快棋时面临的困境和结局。通常是在一顿拼杀后不知不觉中,master已经围出一个蔚为壮观的巨大空,此为大局好;或者在大家意想不到,人类的‘棋理’通常不会考虑的地方,来一手或者犀利或者让人迷惑但又不好对付的棋,此为创意多;又有时人类想要和master拼杀,但大师总是在平稳的腾挪里,面不改色的泰然处之,此为算路深。有这三个特点,快棋里人类不崩溃才应该是新闻。它简直就是接近围棋之神的机器。

  阿狗算法里从高层总结有几个特点:1。汲取了人类的下棋直觉,通过走子网络来获得;2。算路很深,主要靠MCTS和展开网络;3。时刻以大局为重,一切以赢棋为目的;4。最后,有一定的随机和意外手段。

  B-黑客战略

  然后这么霸道,冷酷,而全面的master,肯定不是不可击败。即使是人类,也有希望。

  前一篇 人类所欠的围棋债  里提到,master官子一般,这是事实,但也是事出有因。训狗时,算法的唯一目标是输赢,所以怎么赢更多目数并不在它考虑范围内。但每次都是馆子亏损,也说明它的官子算法里可能有缺陷。如果有缺陷,我觉得也是有原因的。因为官子其实需要在棋盘的多处轮流处理,次序很重要,也没有固定的下法。它的走子网络,展开网络,还有估值网络对这个就不那么敏感。这也造成它收官时灵活度和计算大小上不是特别准确。但这一波,人类前面落后实在大多,官子的问题没有凸显。但这个是人类可以利用的一个点。

  第二个可以利用的点,在于人工智能对于人类一些基本棋理的不了解。阿狗其实很少有按照预设规则下棋的时候,预设的一些小规则也是在训练网络时用到了,其后就是不断的算网络和统计MCTS的量了。同时,它下法上面的exploration 和exploitation的平衡注定了,在某些情形下,它会下出奇怪的应手。理解这一点,一方面是说,不要过分解读master的神奇之处,尤其在细细研究它的棋谱之前;另一方面,我们可以制定一些战略上的办法来尝试利用这个潜在可以利用的缺陷。比如,孤立的局部的战斗,尤其在布局阶段尽量不要挑起。首先,此类对杀人类目前优势应该不多甚至没有,同时还得考虑全局,这对人类来讲具有太高的挑战性。其次,假设这类战斗有两个比较可以接受的结果,实地或者外势。取了外势的机器非常懂得如何把它变成自己目数;而人类在得了外势后经常有些不知道选取最好的点,同时机器对攻击削减外势貌似很有手段。因此开局时尽量留有回旋余地,不轻易交换也不要锁定交换。期待的是在中盘阶段多处有余味的战斗,可能会让机器的搜索程序出现盲点,如果阿狗没有在算法里加入自适应的控制,继续保持它的套路,很可能在这时出现机会。目前唯一的案例,李世石-阿狗的第四局那一挖,其实就是一个例子。这是几块棋缠斗之时,焦点是黑棋的两子棋筋(G6-7)以及白棋的突围。然后在白棋达成目标后,此处局面其实黑棋有简单的改变攻击方向,指向中间立着的M上的白三子并且。那么情势还是对白棋有利。但此时,局面碎片化,有多处黑棋需要考虑死活以及围空,这对机器的挑战就很大了,这种局面的人类直觉不好学,因为真的需要‘理性’的思考和平衡利弊,不像开局处,统计式的算局面以及对人类直觉的统计模仿(走子网络)可以达到甚至超过人类,那这里的真实的估值函数对于选点是极端不平滑的,选错点会造成生死的差别,而机器正是此时出现了人类看来莫名其妙的选点。这不是机器崩溃了,而是价值函数不平滑的情况下,有很多模棱两可的点可选,随机性决定了它选了莫名其妙的地点。这局我凌晨看的,当时的心情异常爽快。

李世石-阿狗第四局78手,挖李世石-阿狗第四局78手,挖

  构成这个局面的其实都是些残子的余味,还有多处棋块的关联。这个是可以利用的策略指导。布局时要考虑到。这个潜在的缺陷是不是在master版里被弥补了呢?个人看法是很可能更大了。因为看完一些棋谱,master总体感觉exploration的能力,就是创意的新手,好像变强了,也就是deep mind的工程师调了参数加重了这部分网络的比重,或者RL网络训练的样本变大了。后者可能比较小些,因为之前的训练表明,RL训练出来的网络偏向保守,变化性不足。

  C-棋道的研究

  没有人懂得棋理的全部,我更是不行。但是还是可以聊聊,不是吗?

  布局 布局 布局

  布局阶段,虽然大多务虚,却是每个子的平均价值影响力最大的时期。这一点说来并不难懂,但实战时,貌似很多棋手都会暂时性的忽略。所以实际看来,这个简单的真理,目前强调的还不够。但这点特别重要,值得换一个说法,再来讲一遍。布局的每一步必须考虑全局价值,而且很有可能一手错而成全盘恨。这点在大家的下棋哲学相近时,问题不突出,大家都在定式和研究局部变化时,忽略的问题也不突出。而遇到master这样天生考虑全局的对手时,我们最牛的职业棋手,布局阶段大多落后相当多。

  这个就要提到聂老了,他的前五十号称天下第一,并且一贯重视大局观,也一直在布道。是真的智慧,再强调都不为过!

  了解了这点,我就要提很多问题,比如定式的运用。就如前面一篇里写的,我们世代研究出来的一些定式是布局阶段的基础。然而这些定式中的很多,就不说全部了,应该是随着情况而采取的,并不是一成不变的。这里举一个例子,是master测试版对日本的deepzen在KGS的第三局,master在天元旁边踏空连下两子以示让zen一把。然后棋局到了下图。

Zen和GodMoves(应该是master的测试版),master开局在中央下了两子,表示让一下ZenZen和GodMoves(应该是master的测试版),master开局在中央下了两子,表示让一下Zen

  GodMoves(也就是master测试版)接下来怎么下呢?一般定式或者传统智慧告诉我们,此时我们可以对白B6施加压力,把根基立稳同时获得实地,交换走的是白棋在左边安心做活。断然不能让白棋在D9搬过来破坏黑大势。而黑却飞了一手在C14。简单几手之后局面如下。

  黑棋充分利用了下面的子构筑出来巨大的势力。左边安稳,中间二子也被利用到了,白苦苦逃亡,没有围出空来。局面天翻地覆。这一幕在六十连胜里也常常发生。和master下时,必须牢记这一点,它的效率极高,布局阶段不能随意弃子或者让它围出大空来,它孤立局部的手段很好,一旦围空,很难有效倾销或者成功打入。

  所以棋理是什么?我想棋理应该是灵活的,需要考虑全局。棋理不是定式,定式大多是很精巧的局部经验,但需要随着局面的子力配置灵活改变。我看了一些棋手对局后的评价,很多时候,我们的棋手研究还是着眼于局部的手段上,摆变化,这些变化固然有意思,也很重要,但如果没有把全局考虑进去,这样摆的变化很可能理真理不近。

  这个简单道理在布局阶段尤其重要,而从棋道上讲,人类要暂时战胜机器最有效的研究可能就是在布局阶段的研究上。我们凭藉特有的直觉,需要研究master布局的特点,并且提出更好的布局方案来。这个可能性是很大的。理由有两点,第一,master本身就给我们演示了新布局的可能。第二,开局的自由度极大,master所依赖的直觉训练大多来自人类的过去对局。所以第一要义就是布局布局布局。

  改变 改变 改变

  master老师教我们下棋之后,我们看到了master展示的原来人类认识中的围棋盲点。棋手们需要接受它。这就比如大航海时代或者大探索时代,谁先接受和承认事实,谁就可以在这个大变革的时代取得先机。master的具体一手棋是不是真的很好,这不一定也不应该是我们需要思考的。需要改变的是我们对于下棋的保守理解。人人知道围棋的变换无穷,却少有人有胆识有魄力去真的投入到改变和创意里去。

  神之一手,妙手……还是太少!我们需要去寻找它们,改进固有思路,主动改变思考的模式,可能是达到彼岸最重要的先决条件之一。希望人类的棋手们摆棋时不再仅仅满足于在局部的美妙变化。

  这些要求都很高,因为棋手们需要考虑额外的可能性。但当我们形成习惯去做这件事,我们大脑可以很快获得直觉,这方面大脑的效率比机器要高的多。而我们也只有凭借这种新直觉的产生来再次赢得对机器的胜利。

  D-人机大战规则如何定?

  什么样的规则才是合理的?人脑考虑一个局面的时间-效果比应该是有一个饱和过程的,最初的几秒甚至一分钟可能带来的效果增长很快,到了后面思考的得利越来越小。而机器不一样,它的算法决定了,它的时-效几乎是线性的。所以人机所得的时间是不是考虑有所差别?

  机器的算法建立在大量人类对局的智慧之上,并且做了改进,加上自己的运算优势,同时还有创新的能力,而我们人类棋手对机器的‘智慧’了解太少。这是一个巨大的不对称。人机大战是不是考虑允许热身赛。柯洁或者其他人类代表应该被公平的给予一定量的对局机会,这样对于双方都公平,尤其人类。

  啰嗦的写了很多,不是围棋人工智能的专家,也不是围棋的高手,所以难免错误不少。仅供娱乐,有时可以参考。

文章关键词:围棋Master人工智能

点击下载【新浪体育客户端】,赛事视频直播尽在掌握
分享到:
收藏  |  保存  |  打印  |  关闭

已收藏!

您可通过新浪首页(www.sina.com.cn)顶部 “我的收藏”, 查看所有收藏过的文章。

知道了

0
收藏成功 查看我的收藏
0 0 0 0