围棋吧 关注:349,183贴子:10,503,401
  • 3回复贴,共1

过时了,等级分不是划分棋力的好标准

取消只看楼主收藏回复

在AI棋力超过人类之后,怎样划分AI的棋力成为一个问题。之前可以使用人类的水平来标识AI的棋力,例如业1、业3、职业入门、职业顶尖等等,现在则多数是用的是elo等级分。
问题在于elo等级分不是一个合格的计量体系。如果在棋手群A(人orAI)中建立一套等级分体系,棋手群B中建立同样的等级分体系,那么是没有办法衡量他们之间的棋力高低的。
首先,等级分的绝对数值是没有意义的。没有任何规定说等级分0对应于什么水平,alphagozero初始等级分取的就和leelazero不同,两者同样的5000分棋力截然不同。
如果仅仅如此,那也就罢了。比如摄氏温标和凯尔文温标,绝对数值不同,但是两者的相对数值(例如提升1度)意义是一致的,进行比较时,只要重新标度一下坐标零点,两个体系就可以取得一致。问题在于,等级分系统的相对数值也不具备普适意义。
elo等级分相对数值表征的是胜率。比如人类A对战人类B胜率80%,leelazeroA对战leelazeroB的胜率也是80%,那么他们之间的等级分差是相同的。但是,胜率差能表征棋力差吗?假如B和leelazeroB水平相等,那么能够推出A和leelazeroA水平也相等吗?
显然不。用一个简单的模型,棋手的棋力用数值A表示,即时棋力在A的基础上有一个波动A+a,当A+a>B+b时棋手A战胜棋手B。
假设人类棋手的波动是30,leelazero的波动是3。那么人类A(棋力110)对战B(棋力100)胜率不过略大于50%,而leelazeroA(棋力110)对战leelazeroB(棋力100)胜率已经接近100%。
定量的算一下就知道,胜率表征的不是棋力差,而是棋力差/波动。
原来只有人类棋手时,都是人类大脑,其波动是差不多的(也有波动小的叫试金石,波动大的叫六脉神剑)。但是AI就完全不同了,程序的水平波动要比人类小很多,导致反映出来的等级分差也要大很多。这也是为什么人类让2子的水平差距,到了AI那儿奔着让9子去了。
所以正确的说法,AI的等级分提高1000分,说的是棋力提高了1000个AI标准波动。人类棋手等级分提高1000分,说的是棋力提高了1000个人类标准波动。之间的换算,1个人类标准波动或许等于10个AI标准波动,谁知道呢?
就算AI之间,如果算法不同,其波动也很难说就一定大。
所以,指望建立一套elo等级分来统一衡量人类和AI的棋力,是不可能的。
那么,有没有其他标准可以来衡量AI棋力的绝对高低呢?我觉得,可以试试先后手的胜率差异。比如某AI先后手胜率差异最小的是贴7.5,那么此时胜率差异偏离50%越大,那么说明AI的水平越高。这或许可以成为一个普适标准。


1楼2018-01-02 00:10回复
    @29077017990669 如下图,上面是人类的棋力,下面是AI的棋力,都有波动,假设是高斯分布。人类波动大,AI波动小。重叠的体积代表以弱胜强的概率,人类棋力3的基本稳赢棋力为0的,而对于AI来说,棋力0.75的对战棋力为0的就可以达到同样的胜率了。同样棋力差3,AI的等级分差是人类的4倍。
    这个用一点微积分就算出来了。


    5楼2018-01-02 01:20
    回复
      @29077017990669
      这么说吧,“棋力”是客观存在的棋手的内在属性。存在“棋力”不是假设,但是问题在于我们不知道棋手的棋力是多少,怎么去“测量”这个棋力。
      现在,等级分系统就是一种试图对于“棋力”进行测量的手段,测量出来的值叫做“等级分”。我这篇文章论述的是,这种测量存在一个前提:每个棋手的峰宽是一样的。但是,在AI出现之后,这个前提失效了。
      棋手这个群体是一个复杂的对象,包含了非常多的变量。要想描述它,需要建立模型,这其中就必须用到一些假设,或者说简化。
      首先要引入的就是棋力,这是描述棋手强弱的。高手棋力就高,弱手棋力就低。
      其次要引入的是峰宽。否则没法谈胜率。只有棋力没有峰宽的话,高手对低手就只会胜,不会败。
      目前的模型就这两个变量,其他的变量舍去了。例如棋风,如果想解释A对B胜率>50%,B对C胜率>50%,C对A胜率>50%,仅靠棋力和峰宽就不够。
      再有的假设就是大数假设,认为每两个棋手之间都有足够的对局,这个对AI适用,对人不适用。
      所以我这里的假设不在于引入了棋力和峰宽,这些属性是客观存在的。而是我舍弃了棋风和其他更复杂的变量,等级分系统也是这样。


      14楼2018-01-03 14:57
      收起回复
        其实这个问题可以简单类比于物体的质量。
        物体有一个质量的內秉属性,哪怕早在牛顿之前,人们也已经认识到了这一点。但是存在质量和怎么测量质量是两码事。后来,人们学会了测量重量,就使用重量(地球的引力)来表示质量。因为质量和重量严格成正比,所以这种表示没有问题。
        但是有一天,人类登上了月球,把弹簧秤也带了过去。这时人们发现,因为月球的重力加速度不同,再统一用重量来表示质量就行不通了。
        对于围棋来说,等级分就是一种重量,它是用来表示“棋力”这种內秉属性的。AI出现后,由于峰宽不同,再统一用旧的等级分系统来表示棋力也行不通了。


        15楼2018-01-03 20:06
        回复