燕庐敕 发表于 2016-3-17 13:13:24

陈经:感谢AlphaGo对围棋贡献 人机缠斗刚刚开始

按:陈经周二去参与直播,回来后我和他联系,一直喊累。

昨天我连拍带拉,总算把他的总结文给逼出来了。他已经寄给俞斌总教练了。

大耍同学也看出来,计算机局部基本不保留变化,我在和陈经讨论时发现,我们几乎都注意到了。

下面是陈经的文章:

2016年3月15日人机大战第五盘,AlphaGo执白280手中盘胜李世石,总比分4:1结束了这场持续一周的围棋盛事。

  我在广州爱范儿公司和吴肇毅九段一起直播了这场比赛,感觉对机器的招法比较能够理解。这使得我在这场特殊的比赛中,有时对局势的判断比吴九段更为准确,虽然我的围棋水平不高。下面用几个图来解释一下机器开盘的失误和技术特色。



  在右边的常见套路中,AlphaGo选择了16位挡而不是Q10拆,放黑17位打入,接着继续18位打,放黑19位冲21位断,很简单地就弃掉了三子。粗粗一看黑吃下三子实空不小,但这是AlphaGo的招法创新,黑布局感觉已经落后了。因为白有A位靠下的手段,会在上面形成一道厚势,白棋把棋走在外面,对于厚味外势的价值估计得比人类棋手更准,而且它的整体行棋方式也能与之配合。人类高手出于实战考虑选择实地的更多,通常认为虚虚的外势不太好掌控。从大局观来看,AlphaGo的理解更合乎棋道。



  这个局面的看点是AlphaGo第48手断入,然后被黑51全部吃下,亏了不小的目数。这是确定无疑的损失,机器犯了错。这个错误非常象AlphaGo和樊麾的第三局,它也是在黑右下大空里走了几手,没有棋却损了空。为什么它这么下?

  48手这个断是很明显的直觉要点,在AlphaGo的策略网络里估计会是排名很前的选择。后续捣乱可以连续多招,黑要小心应对,下错了就立刻完蛋。黑应对了,白可以继续“考验”黑。AlphaGo也会用策略网络模拟黑的应对,正确应对的招数肯定有,但也有错误的建议给出来。这样,连续搜索展开后,在不少叶子节点AlphaGo高兴地发现黑应错了被白一举击溃。就算黑一直应对正确,最后白损失也不大,能够完封右边中,大局上还是自己好。所以,蒙特卡洛模拟(MCTS)对48这手给出的胜率评分会比较高。这应该算是AlphaGo算法框架的一个bug。AlphaGo愿意下这种“局部变化复杂,对手应对错误自己立刻胜利,应对正确自己稍亏但大局还好”的辣招。对人类高手来说,这种计算应该不难,所以就占了便宜。48手算是亏目较多的一次小bug,但是局面还早。这时AlphaGo对自己的胜率估计应该比下出48手时低一些了,它终于知道吃了亏,但当初就是愿意去这么试。因为手数较多,它下48的时候并不知道会亏。只有定型的差不多了,才觉得算清了,没有东西。

  同样原理的着手在收官阶段出现多次,AlphaGo几次在一路扑吃被提。它不亏,不会减少自己的胜率,万一对手不应还提高了胜率,损了劫材但反正它不想打劫。我估计这类着法是它的策略网络向人学习的,人经常在后半盘打劫、读秒打将的时候下这种一路扑。AlphaGo不理解人的意图,但把招学了过去。学过去发现能提高胜率,就这么用起来了。

  象48手亏空这样的小bug是人可以利用的。如果人类高手完美发挥,各个环节都顶住,可能下和平的收空棋也能赢它了。但难度会很高,AlphaGo在划分地盘这个环节实在太厉害了。这种棋要做的选择非常多,哪步能占更多的空人没有特别好的精确测算方式,只有靠感觉为主。而AlphaGo用几百万次模拟来统计性地判断,比人要准得多。这是AlphaGo的核心能力,大局观碾压人类。



  不少职业棋手认为李世石69过于靠上,被70镇头攻击局势很不利。具体应该在哪吊,说法很多。不管黑下哪,这种局面是AlphaGo擅长的。它不一定要成哪一块空,黑进来它各种方法都会模拟试一下。如果模拟发现退缩不行,它就会进行镇头分断攻击,最后往往会将成空潜力转移到另一片地方去。最后人下来下去,总是被它在某个区域围出很大的一片空。这种以厚势为基础的浮动攻击,靠吃棋威胁最后把虚空做实的下法,真的是很赏心悦目。

  人类棋手评棋时往往会觉得,是不是破空手法不对啊,是不是该往这个方向跑,是不是打入深一些才好,是不是进得太深了。我认为这很可能是根据结果来看的马后炮。在这种局面下,拥有厚势的一方可能已经有了局面的主动权,AlphaGo根据自己的评分还是判断得比较准的,你怎么进来它都有应对的办法。



  李世石如果选择正确,可能情况会好些。可是实战几乎所有人都发现黑大亏了,自己两眼苦活,白左上角已经活了,中间又瞬间出现大空。这时白下出了100这手棋,人们应该立刻意识到这等于是“胜利宣言”。这手很有味道,它并不是试图在左下围更多的空,而是准备让黑打入做活,但白也消除所有不安定因素收官稳稳获胜。下C5之类的点是可能围空更多,但黑仍然可以进来捣乱,黑右下的厚势就有用了。还不如用100这手消除任何变数。这种思维是人很难有的,它不去在里面守,反而在外面用坚实的拆一来守。

  后半盘黑的挣扎都没有用,AlphaGo展现了高超的局面控制能力。最后认输时李世石盘面领先5目,是因为电脑想稳胜,让了一些回去。

  这局李世石算是成功地测试出了AlphaGo开局亏目的一个小bug,但由于自身发挥有问题,还是被AlphaGo控制了,基本没有机会。李世石的大局观和局面判断比AlphaGo要差很多,右下意料之外的收益可能反而害了他,让他以为领先优势不小,后面没有果断出手制造第四局赖以获胜的复杂局面。这局也没有制造出劫争,AlphaGo避劫照样控制大局。

  在总共五局高水平对局中,AlphaGo确实表现出了令人叹为观止的技术水平。可以非常有把握地预测,以AlphaGo为代表的新一代围棋AI将有超过职业棋手的技术实力。而人类的围棋水平在人工智能程序的帮助下,会取得突飞猛进,特别是在大局观上的认识。机器即使在围棋上完全战胜了人,也不是灾难。可以看看国际象棋领域已经发生过的事,有助于围棋界正确认识机器的作用。国际象棋程序的等级分比人类最高水平还高四五百分,对人类可以让一个兵或者二先,平下人最好结局只是和。人们已经完全承认AI水平远高于人,用它们来更新布局理论,研究新手,在人与人对下时应用。这样人的水平也取得了飞速进步,国际象棋大师越来越多。这次人机大战围棋的关注度空前提高,这对围棋发展是非常有益的。所有热爱围棋的人,都要感谢AlphaGo的贡献。

  但另一方面,围棋也将通过人类高手与机器的反复缠斗,以一种前所未有的方式展示其自身的魅力。AlphaGo与李世石的五盘人机大战,只是一个开始。不少新闻分析说,围棋人工智能将很快全面战胜人类,我认为这是不正确的。

  理论上来说,因为劫的存在,围棋是一种“上下文有关文法”,同样一个局面,前一招是不是提劫,后续逻辑就会完全不一样(按中国规则禁止全局同形再现,有更多形式的“上下文有关”,但最常见的是劫)。而国际象棋、中国象棋等棋种是“上下文无关文法”,当前局面如何形成的不影响后面结果。围棋的复杂性,广为人知的是状态空间数比国际象棋多100多个0。但是从围棋艺术和计算机算法角度来看,这种“上下文有关”造成的复杂性,远远超乎人的想象。下棋的人都知道,劫是让围棋的境界与艺术性大大升华的一个东西。基于MCTS的国际象棋程序,因为“上下文无关”,可以用多次模拟完美逼近看似很大的搜索空间。但是在围棋上,“上下文有关”的劫,因为可以在全盘任何一处找劫,MCTS算法的分枝数量瞬间爆炸,对搜索质量造成毁灭性的打击。这还只是一些简单的劫争。如果再考虑缓气劫、两手劫、连环劫、多劫循环,可以说围棋搜索算法仅仅只摸到打劫的边,根本没有深入劫争问题的核心。

  可以想象将围棋盘扩大到21路,状态空间数又多几十个0,AlphaGo训练之后在划分地盘这个核心能力上还是可以超过人类,并不怕状态空间增多。但是就算棋盘缩小到17路,AlphaGo也还是不喜欢打劫。只要还是MCTS算法框架,面对劫争程序开发者想过各种处理办法,都没能很好应对复杂的劫争。谷歌团队也不太可能在这个问题上取得突破性进展。

  可以非常有把握地说,打劫的能力将是人类远远强于围棋程序的地方。但是这个问题上机器也不是没有出路,AlphaGo就向我们展示了如何通过避开劫争分枝来控制局面。人类如何通过行棋,将机器逼得不得不打劫,会是一个很有意思的技术问题。从围棋理论上来说,一方不怕打劫,一方拼命避劫,总是善于打劫的一方有利一些,高手善打劫。人类最高水平的棋手打劫能力是9段,机器的打劫能力可能只有业余3段。按AlphaGo把劫材走光的风格,它不可能是一个劫争高手。但是人类高手也没有这样的经验,如果将一个不配合的却棋艺高超的对手逼入劫争。

  在对于非确定地域的价值估计上,AlphaGo可以通过几百万次收完算子的统计模拟,对人类有着压倒性的技术优势。表现出来就是大局观非常好,人类最高水平是9段,AlphaGo可能有13段。

  在封闭式局部的战斗中,AlphaGo对人类最高水平也仍然有优势。因为人类存在算不清、得失判断不清的问题。这方面的能力对比AlphaGo是10段,人类是9段。

  在多个头绪关联的开放式接触战中,不需要引入劫争的复杂,AlphaGo的搜索模块也会碰到不小的麻烦。因为头绪多,对杀结果决定胜败,只有人类高手能理清逻辑,找到正确的行棋路线图。在这种复杂盘面,AlphaGo的三大搜索武器,价值网络、快速走子策略、策略网络全都失灵,就会忽然出现怪异的行棋选择。这是人类战胜机器最有希望的领域,人类是9段,机器只有业余5段。

  在局部区域的定型手法中,AlphaGo出现了不保留变化早早定型的倾向。有些局面还会过早把手段使出来,以目数绝对亏损收场。这都是小问题。而人类心理状态不稳定,很难做到持续稳定地发挥出最高水平,是一个大问题。

  总体来说,AlphaGo和人类高手风格迥然不同。事先分析,AlphaGo和人类高手各有所长,交锋起来看点十足。AlphaGo会的,是在实战中最经常使用的。以大局观为基础的行棋方向选择,是行棋中最常用最实用的本事,AlphaGo远超人类。在局部接触战中,AlphaGo拥有类似于穷举的战斗力,人类占不到便宜(亏目是AlphaGo为了提升胜率的小bug行为,明知杀不过也下。真正对它有利的战斗,它不会放过)。这两项本事都是最常用的,所以AlphaGo平时行棋就带有一种独特的魅力,时不时让人类惊叹它的判断力与创造力。人类如果在这两项技术上和AlphaGo斗争,将毫无胜算,甚至差距会越拉越大。

  而人类需要有意地将局面引入对自己这方有利的格局中。通过劫争,复杂盘面多处头绪关联分析,在适合于自己的战场将AlphaGo击溃。人类互相之间针锋相对,很容易到达这种局面。然而AlphaGo会有意绕过劫争分枝,抢先定型简化局势。

  双方这样各有所长,又特点鲜明,持续缠斗起来会非常火爆,看点十足。我非常期待,职业棋手们能够普遍了解AlphaGo的特性,制定正确的迎战策略。而双方又无疑会互相学习,试图减轻自己的弱点,学习对方的长处。如谷歌可能会通过持续训练与研发,将AlphaGo的弱点隐藏得更深。而人类一方面加强自己的大局观与局部手段,另一方面又动脑筋去使出手段将局面引导入劫争、复杂盘面。从围棋艺术发展来看,这会是一个非常激动人心的历史机遇。

  因此,要非常感谢谷歌研发出了AlphaGo这么一个威力强大又十分有趣的好东西。人类与机器激动人心的缠斗不会很快结束,双方的优势与弱点都会长期存在。围棋作为计算机算法“完全信息博弈”问题中当之无愧的皇冠,会进一步展示出它真正的魅力,不会一下子被突破,很长时间内还会是核心难题。人类也会不断向机器学习它擅长的领域,提高自己的技艺。围棋历史上又一次意义巨大的革命已经在发生。

xzhangz 发表于 2016-3-17 15:31:56

不知道deepmind 有没有兴趣持续的有针对性的加强alphago。也许他们会开源,但是日常训练的机时开销恐怕也是开源社区难以负担的,做成@home的形式搞算能众筹恐怕都够呛

燕庐敕 发表于 2016-3-17 16:50:00

xzhangz 发表于 2016-3-17 15:31
不知道deepmind 有没有兴趣持续的有针对性的加强alphago。也许他们会开源,但是日常训练的机时开销恐怕也是 ...

估计还是有的,因为能持续扩大影响。

月近天心 发表于 2016-3-17 17:14:27

他是在哪儿直播的啊?看看有没有视频下载

燕庐敕 发表于 2016-3-17 17:51:16

月近天心 发表于 2016-3-17 17:14
他是在哪儿直播的啊?看看有没有视频下载

http://w.3g.yy.com/s/share/share.html?u=1365648160&pid=15012x03_80381970_1365648160_1458029171_1458029171

白天爱黑夜 发表于 2016-3-17 17:58:32

武宫正树的宇宙流被阿发狗展现并发扬光大。

老兵帅客 发表于 2016-3-17 19:15:47

xzhangz 发表于 2016-3-17 02:31
不知道deepmind 有没有兴趣持续的有针对性的加强alphago。也许他们会开源,但是日常训练的机时开销恐怕也是 ...

这个开源版应该是没希望的,因为资源消耗受不了。

月近天心 发表于 2016-3-17 20:39:32

总觉得机器在劣势下的坚持能力有不足。
当年初学围棋的时候,对林海峰先生的《名局细解》里一段话影响很深刻:围棋是一项漫长的对决,在长时间的对弈中谁都不可能着着完美。所以在劣势下棋手一定要保持冷静,不要形势稍差就随意放胜负手。要采取一种“狼盯人”的战术,紧紧跟住对手再伺机超过。
而机器在第四盘中的表现真是让人瞠目。机器在87(?)手时突然发现自己算错了,形势大差,它可以选择继续走大的,也可以选择强杀大龙。这都是常见的处理方法,可是机器选择把希望寄托在对手没看见打吃这种失误上面。它这回是遇上李世石,而李世石的布局明显不是长项。要是将来遇上布局高手,机器胜率岂不是更低了?

四处张望 发表于 2016-3-17 20:59:48

月近天心 发表于 2016-3-17 20:39
总觉得机器在劣势下的坚持能力有不足。
当年初学围棋的时候,对林海峰先生的《名局细解》里一段话影响很深 ...

你是把它当人看,其实它的逻辑应该简单的多。

删除失败 发表于 2016-3-17 21:29:21

月近天心 发表于 2016-3-17 20:39
总觉得机器在劣势下的坚持能力有不足。
当年初学围棋的时候,对林海峰先生的《名局细解》里一段话影响很深 ...

我猜阿法狗不知道怎么在落后情况下挽回局面。人类棋手落后时一般会强攻对手孤棋或打入对方的空,争取让形势复杂化,一复杂对手就容易犯错。而狗擅长的是分割棋盘让形势简单化,他也不知道什么棋对人类是简单的什么是复杂的,所以落后时会下出在人类看来弱智的棋。

月近天心 发表于 2016-3-17 21:35:45

四处张望 发表于 2016-3-17 20:59
你是把它当人看,其实它的逻辑应该简单的多。

恐怕下棋的时候还真要把它当人看了,再简单的觉得是测试机器,结果只怕是常常悲剧。柯洁在讲解的时候也反复提到这一点。
在劣势下的坚持是围棋中极为重要的一面,所谓“善败者不乱”。如果机器的逻辑简单到连这个都舍弃了,那永远没有彻底打败人的希望。

四处张望 发表于 2016-3-17 21:39:19

本帖最后由 四处张望 于 2016-3-17 21:42 编辑

月近天心 发表于 2016-3-17 21:35
恐怕下棋的时候还真要把它当人看了,再简单的觉得是测试机器,结果只怕是常常悲剧。柯洁在讲解的时候也反 ...

你想多了。把太多人的感情和思维方式到这里,一般都不着调。

月近天心 发表于 2016-3-17 21:42:37

删除失败 发表于 2016-3-17 21:29
我猜阿法狗不知道怎么在落后情况下挽回局面。人类棋手落后时一般会强攻对手孤棋或打入对方的空,争取让形 ...

我就是这个意思。围棋变化太复杂了,谁都不可能保证在前半盘就一定没有恶手,没有误算,就一定形势有利(尤其是蒙特卡洛方法内在地就一定会有漏算)。要是机器只能下顺风棋,而一旦局面稍差就会往崩溃的局面狂奔,那将来棋手一旦适应了,机器就悲剧了

xlan1976 发表于 2016-3-17 22:01:33

月近天心 发表于 2016-3-17 21:42
我就是这个意思。围棋变化太复杂了,谁都不可能保证在前半盘就一定没有恶手,没有误算,就一定形势有利( ...

阿法狗不是只会下顺风棋,第二盘阿法狗左边作战失利一样在落后的局面下赢了。柯洁说的要把阿法狗当成一个棋手看待,一个是说要对待AI有足够的尊重,另一个是说它也不是完美的,也会因为自身的原因犯错,但这并不是说它犯错的本质跟人类是一样的。阿法狗本身不可能有什么缺乏韧劲或是畏惧之类的问题,它是始终按照既定的行棋策略行棋的,不管局面是好还是坏。第4局87手以后它下的棋基本正常,跟它78手以前下的棋没有区别。像那种不保留变化到处打吃得棋在它赢得棋里也到处都是,并不是它在落后局面下的“慌乱”选择,这就是阿法狗的行棋特点。

橘子和枪 发表于 2016-3-17 22:01:48

月近天心 发表于 2016-3-17 20:39
总觉得机器在劣势下的坚持能力有不足。
当年初学围棋的时候,对林海峰先生的《名局细解》里一段话影响很深 ...

李世石的布局实际上并不弱,只是相对于其超一流水准的中盘和官子水准,其“只有一流水准”的布局水平就太弱了。呵呵

胖得妙不可 发表于 2016-3-18 04:09:34

呵呵,与猪老所见略同:lol

燕庐敕 发表于 2016-3-18 12:18:03

橘子和枪 发表于 2016-3-17 22:01
李世石的布局实际上并不弱,只是相对于其超一流水准的中盘和官子水准,其“只有一流水准”的布局水平就太 ...

李世石的布局就是弱点,他钻研的太少,和九零后中韩棋手下比赛经常开局中飞刀,能不能翻盘看运气。

一流水平?能一流半就不错。

和机器比,他的大局观的短板被揪着痛扁。

燕庐敕 发表于 2016-3-18 13:18:54

删除失败 发表于 2016-3-17 21:29
我猜阿法狗不知道怎么在落后情况下挽回局面。人类棋手落后时一般会强攻对手孤棋或打入对方的空,争取让形 ...

还是有的,只是职业棋手觉得这个手段荒谬

zilewang 发表于 2016-3-19 09:27:07

月近天心 发表于 2016-3-17 20:39
总觉得机器在劣势下的坚持能力有不足。
当年初学围棋的时候,对林海峰先生的《名局细解》里一段话影响很深 ...

现在的围棋流行风是,不讲究布局,特别是90后一辈中国棋手,布局都是随意下,完全不是原来常规定式那种,讲究快速扩张,讲究单子效率。
页: [1]
查看完整版本: 陈经:感谢AlphaGo对围棋贡献 人机缠斗刚刚开始