lennylv的个人博客分享 http://blog.sciencenet.cn/u/lennylv

博文

人机大战三回合后,给李世石支支招 精选

已有 7304 次阅读 2016-3-12 20:53 |系统分类:科普集锦| alphago

知己知彼,才有胜利的机会。

AlphaGO不了解,说输赢都是比较盲目的。越多了解AlphaGO的设计和实现,就越能解释8盘对局中AlphaGO的表现,才可能发现与AlphaGO对战的机会。

 

首先,人们普遍被AlphaGO对樊辉的50对局误导。认为它不过2段水平。其实,这是个错误的认识。与李世石的第一局比赛后,AlphaGO的工程师说,AlphaGO始终认为第一局优势,遭到围棋界人士的一致耻笑。AlphaGO的工程师说,AlphaGO采用的是最优化赢棋的概率策略。就是说,如果A选择赢20目概率70%,而B选择赢2目概率95%,那么AlphaGO选择B。这就导致AlphaGO遇弱则弱,遇强则强的特点。换句话说,与樊辉下,AlphaGO95%的概率赢下比赛,下的招数不一定是KO对手。与小李下的这三局,AlphaGO70%的概率赢下了比赛。事实上,应该说是樊辉和小李都没有能力或者运气走到那10%30%的路径。

 

这也解释了AlphaGO可以下出小亏的招数。AlphaGO局部可以下出小亏的招数。其实它不过是选择了更高概率赢棋的招数而已。用棋界专业人士的话来说,它简化了局面。它是用小亏,堵掉了更低概率赢棋的路径。所以,棋手认为的小亏,只是局部的小亏。全局来看,AlphaGO肯定认为不亏,而且是定量地认为不亏。而人类棋手全局判断能力,则是一种定性的直觉的经验的判断。所以不要认为AlphaGO的小亏招数而小瞧它,反而是一种警惕的信号。

 

那么,什么是赢棋的概率呢?我们简化一下2*2的棋盘,假定黑1后白2有三种选择,之后黑32种选择,白4就只有1种选择。就可构造一个完整的搜索树,树的叶子节点就是可以判胜负的结局。如果有2个叶子是输,4个叶子是赢,那么黑1的胜率就是2/3.

 

很显然,对于19路的围棋来说,不可能枚举到叶子节点,所以,alphaGO就用value of networkVoN)来判定胜率。简单来说,就是通过已知结果的棋局特征来评估而无需遍历到叶子节点。从机器学习技术来说,就是一个三值图像的二分类问题。只要训练样本足够多,这个问题不难解决。

 

由此我们可以知道,棋局越空旷,VoN越不可靠。所以,在开局阶段,棋手是一个机会。

 

alphaGO的第二个技术是用policy ofnetwork(PoN)来剪枝减小MCTS。这不象A*算法或者alphabeta剪枝算法那样,即使缩小的搜索空间也可以保证搜到全局最优解。PoN也是用机器学习方法训练出来的。但是,这更加减弱了VoN的准确性。例如,如果在上面那个2*2的例子中,PoN剪掉了白2的一个枝的2个结果,那么,黑1的估算概率就要打折1/3了。由此,可以得到战胜alphaGO的第二个机会,就是走到被PoN剪枝的路径中。可惜,只有alphaGO自己知道剪掉了哪些枝。估计,alphaGO的自学习就是让alphaGO的伙伴尽量走被剪枝的路径。

 

第三个认知,一旦能够让alphaGO枚举变化(例如局部的死活),棋手是没有机会的。这导致棋手的这条策略:避免接触战。这从目前已知的8盘人机大战的结果可以知道,棋手都是在接触战中没有淘到便宜。

 

综上,可以给小李的建议是:

 

1、  开局抓紧,避免过早的接触战。

2、  即使迫不得已接触战,尽量采用弃子转身的策略,特别是在中盘过后。因为弃子局部的利益和全局的利益对VoN来说,要困难得多。

3、  尽量提子。因为一旦提子,alphaGO累计的局面判断就会不得不实时动态刷新计算,既消耗了alphaGO的时间,又废除了alphaGO记录的有效评估。

4、  有可能的话,采用大龙定生死的策略。因为只要大龙死活不能够由枚举完成,VoN的评估还是可以让棋手有机会的。

5、  如果alphaGO下出很容易判别为小亏的招数,就要警惕全局的配置了。我认为目前alphaGO还没有到故意卖个破绽的阶段。它还是靠硬实力拼计算的。

 

顺便回答在第三局新浪转播时主持人提的一个问题:如果小李的一手棋已经在alphaGO的考虑中,那alphaGO为什么还要用时间思考,而不是立刻出招? 其实,它可以用时间评估被上一次PoN剪掉的路径或者增加搜索的高度来找到更高胜率的路径。

 

另外,说不可以和alphaGO复盘,其实也是错的。alphaGO可以把每一招所考虑的路径和评估都提供出来的。只是太多了,对人类棋手未必有用。

 

最后,说一下棋手的一个借口:人对冰冷的机器下,吃亏了。这也是借口而已。试想,如果网络上对弈,你不是也看不到对手的表情的啊。只要alphaGO想第一局那样没有天外飞仙的招数,你会认为这样的对局对棋手不公?

 

我个人认为,alphaGO本质上还是通过强大的计算能力而胜过人类的,而没有学到所谓规律。因为我们知道,棋高一着,束手缚脚。如果人类只能够演算20步,alphaGO能够演算30步,当然alphaGO胜出。

 

 




世纪人机大战:李世石 VS AlphaGo
https://blog.sciencenet.cn/blog-404372-962248.html

上一篇:曼联应该如何重构王朝
下一篇:人机大战四局后变成了一个娱乐事件了
收藏 IP: 49.73.2.*| 热度|

16 陈南晖 徐晓 卢宏超 刘钢 李霜文 田云川 姬扬 蔣勁松 李颖业 郭淼 晏成和 ep4h yangb919 icgwang shenlu aliala

该博文允许注册用户评论 请点击登录 评论 (29 个评论)

数据加载中...
扫一扫,分享此博文

全部作者的精选博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-26 14:18

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部