本帖最后由 三国大军师 于 2021-9-4 19:09 编辑
作者:时年 崔灿五段的论文已经发表了一段时间了,引来关注的同时,也引来一些争论。AI吻合度能否代表棋力是争论的焦点之一。赞同者认为,既然论文以统计数据的方式区分了业余顶尖组和职业冠军组,其数据在统计意义上具有显著差别,那么吻合度使用的方向就是正确的。反方观点则有许多,有的认为战斗的棋必然着法多,导致吻合度虚高;有的则认为双方实力差距比较大则上手吻合度虚高;还有认为个别棋手样本为全选胜局不妥等。有的意见是有建设性的,值得深入研究。围棋AI分析尚处于起步阶段,集思广益有利于发展。 笔者认为,在具体探讨围棋AI分析方法之前,应该先明确什么是“棋力”?人类的棋力是有阶梯的,吻合度在不同棋力棋手的棋谱上表现怎么样呢?
通常,业余棋友下棋时,布局摆定式,模仿职业棋手的流行下法,有模有样,看起来和职业棋手无甚区别。但是,遇到陌生局面,就知道怎么下了,中盘战斗更难把握。上手指导棋非常明显,上手那些神出鬼没、出人意料的下法经常让我们业余棋手晕头转向。之所以会这样,是因为上手能看清下手的棋路,而下手看不清上手的行棋意图。说白了,就是下手的计算力不行。从这个角度看,棋力反映了计算力的差距,高手之所以是高手,就是高手计算深、计算广、计算的变化多,比下手掌控局面复杂程度高。
职业棋手之间如何呢?职业高手之间也是有计算力差距的,相对业余和职业之间,这个差距要小很多。由于职业棋手经常比赛,形成一个大环境,对流行布局、定式和某些局面的看法已经形成共识,比如功夫棋对目比较敏感,这也许是职业性质决定的吧。那么问题来了,职业棋手之间的功夫棋之所以能够成立是建立在相互威慑的基础上的,如果不具备真正强大的计算能力,谁会和你老老实实地保持和平?棋局进程肯定是一边倒。笔者曾看到一个小故事: 小岸壮二是日本坊门秀哉的弟子,是一时豪杰,但是铃木为次郎总是能赢小岸壮二。有人不解,问铃木秘诀,铃木回答:“小岸君的长考相当有名,此乃他克敌制胜之宝,如想打败此君,你就必须弈得比他更慢。一着棋他如想一小时,你就想一个半小时。小岸君见你如此长考,以为今后变化你已计算清楚,自己就会狐疑起来,纵有鬼手,亦不敢施出。胆气一怯,你便可趁虚而入了。总而言之,要以长考对付长考。此乃不传之秘!” 这个故事真伪不论,它反映了一个事实,即使是抠着目下的功夫棋,也是以强大的计算力为威慑的。吴清源说,围棋就是死活和官子。显然,棋力的本质是计算力,而经验和知识,只是计算的基础。当然计算力可分为死活计算力,官子计算力,两者是有关联的。点目和形势判断和计算力紧密相关,包括对“虚”的部分的估算。李昌镐传奇时代过去后,胜负决定于中盘,悬崖边上的贴身肉搏,稍有不慎,满盘皆输。崔灿证明,吻合度作为统计意义指标,对棋力有区分度。但有一点不能忽略,吻合度评价棋力,同样是吻合,棋局不同阶段体现出来的价值是不同的。拿业余棋手和职业比较就可以发现,布局业余棋手吻合度也可以不低;官子职业可以控制在2目范围内,业余高手也不会差很远。概因布局太虚,高手水平再高也对不到哪里去,低手们却可以模仿;而官子太实,高手即使勤学苦练也并不能拉开差距。所以,区分度最高的唯有中盘,中盘的吻合度最具价值。 综上所述,笔者认为,棋谱水平评价应该关注核心棋力,即计算力的评价。从这点来说,AI分析棋谱水平的方法还有继续完善的余地。 什么是核心棋力呢?下面是某棋友的一段网文(略有修改): 传说中,小林光一有个著名的围棋木桶理论:一个木桶装多少水取决于最短的那一根木板而非最长。这个理论一度为人们所接受。但是现在看来错了,对弈远比木桶装水复杂。比如李世石的布局是短板,他却拿了14个世界冠军。围棋技术大致分为布局中盘和官子。 不收官行不?答曰:可以,中盘把对方杀花就可以了。 不布局行不?答曰:也可以,不眉来眼去直接中盘就行了。 最后问不中盘行不?答曰:如果你不想赢棋那也可以。 不难得出结论:棋手的核心棋力就是棋手致胜的最强棋力。最强棋力,不同时代有不同的代表。简单说,现代棋手争胜的技术,从小林光一代表的木桶理论转移到李昌镐代表的官子,再转移到古力李世石代表的中盘。为什么会有这样的转移?今天AI大行其道,我们谈论吻合度,我们应该明确,同样是吻合,其价值是不同的。核心竞争力是你能做到别人不会下的时候你会下,用吻合度来说即别人无法吻合的时候你能吻合!纵观现代几十年围棋的发展历程,棋手们总是在不断发现别人不吻合的领域从而给自己找出制胜的方向。发展至今中盘决战已成天下大势,正说明中盘的难度,最难吻合处即核心棋力处,是吻合价值最高之处。综上所述,我们用今天的围棋理念去评估古今高手,是不是更应该关注中盘呢? 实际上棋友们更关心的是诸如“六超比吴清源到底如何?”这类细微比较问题,统计学上的吻合度,由于概率的因素,无法做出比较。所以,比较不同棋手的棋力应该比较他们的核心棋力。我们应该考虑到,棋手有状态的起伏,核心棋力应该排除昏着之类的低级错误,否则聂卫平的棋力就无法客观评价(如果不是因为健康原因,中国的聂卫平时代会更加辉煌)。另外,还有优势退让问题,局面大差之后的搅局问题等等,这些严格来讲都不是吻合度能够客观反映的。假设一名棋手眼看形势不利,放出胜负手搅局,虽然不吻合,但是如果对手退让则差距缩小,如果对手强硬战斗则放大了对手犯错的机会,这手棋该怎么算(胜负手通常会掉胜率)?再说逆转胜,又该怎么评价?显然,棋谱的复杂性要求我们必须综合考虑,综合评价。就象天气预报,只观察温度气压一两因素是无法准确预报天气的,还需要考虑湿度、风向和风速等因素。 通过以上思考,笔者把目光投向不确定度,即复杂度,这可能是解决吻合度不足的钥匙。不确定度的定义是当前AI所有样本的目差的方差,这样一个概念,大众读者也许无法领会他的真正含义。让我们仔细分析一下:AI计算需要有一定计算量,当前MC框架下的AI要通过统计样本的胜率来决定下一步的走法,因此不确定度首先与样本有关,而决定样本的是算法,根据KATAGO作者论文,不确定度是这样发挥作用的,当一方形势恶劣时,劣势方会选择不确定度更高的下法来抗衡(类似人类搅局手段)。这样设计是有数学理论依据的,统计学上讲,方差的含义与结果分布的概率有关,正负一个方差范围内要包含67%的样本,两个方差则包含95%的样本。我们思考一下,如果某方落后5目,如果它选择方差为5的下法,那么只有样本落在单侧一个方差以外它才能取胜,这时可以通过erf函数计算它获胜概率只有16%;如果它选择方差为10的下法呢?当样本落在单侧0.5个方差之外就可以了,获胜概率则提高至48%,这个设计是不是很巧妙?当然前提是AI能在棋盘上找到那样的下法,如果全局定型就用不上了。 不确定度这个指标受很多因素影响,权重,计算量都必须保持一致。但是这些并非不可克服的因素,笔者认为崔灿论文中没有使用不确定度这个指标,主要因为他认为不确定度太高意味着AI“算不清”,既然AI算不清了,那吻合度也失去意义。幸好,AI通常是清醒的,不会下醉棋(笑)。
不确定度反映了棋盘上“不确定”的程度,或者说变数。通过观察发现,战斗场面往往不确定度升高。那么高不确定度是否与棋局复杂等同?这个问题不能简单化,论述起来颇费篇幅,本文暂且搁置。只强调一点,从逻辑上讲,样本出现较大差异的时候,不确定度才会升高,说明AI的计算结果出现分歧。这在数学上可以用分形来解释。分形这个问题怎么理解?有炒股经验的人都知道某个时刻叫做“选择方向的时刻”,这种时刻上涨和下跌都是合理的。AI作为数学,尤其是动力学系统自然也存在类似的问题。不确定度高并不意味着AI算不清,而是AI认为有不止一条合理的路径,而这些不同但都合理的路径都能导向完全不同的胜负结局。这种情况一般在激烈战斗的时候出现,所以不确定度高在一定程度上和激烈战斗是重合的。以上分析可见,高不确定度往往对应棋局的高光时刻,往往是棋手核心棋力发挥作用的时候,这种时刻任何退让、缓手、误算都会导致失败。所以关注核心棋力评价是绕不开对高不确定度局面的分析的。 有的棋友争论,战斗激烈的棋必然着法多导致吻合度虚高,其暗含的意思是,战斗的局面反而难度降低,所以人人都能下对,不足以作为棋力评价的标准。这显然与事实不合,人类犯错最多的就是中盘。这个问题确实应该搞清楚,否则对核心棋力的评价将受到质疑。千古无同局,棋局的吻合度,是棋手水平造成的,还是不确定度高导致的?大家莫衷一是,持续至今。所以,为了探讨这个问题,本文使用AI对战棋谱进行分析。AI下棋和人类有区别,却能保持水平状态一致,使得数据结果变得单纯易于分析。 对于不确定度有几个锚点需要给出:对于katago20b,空枰贴7.5目不确定度为21.7左右;功夫棋在布局结束之后为17至19+;小官子阶段一般为10及以下。 AI自战也可能全局不确定度不高,但是不确定度高的局面一定是激烈的局面,这点和人类不同,人类也许因为忽略大龙简单死活而导致不确定度意外上升,AI计算力强大,不会出现那样的事。本文选取谷歌公布的AGZ自战棋谱从其中挑选出不确定度高于24的场面,共21场战斗,数据结果列于下表:
|