这是迄今为止,AlphaGo算法最清晰的解读!( 四 )


再回想一下模仿,模仿的每一步是统筹:模仿到现在平均的形势断定value net,迅速rollout模仿到终局的形势断定,依据当前形势的选点policy,和处分过多的模仿同一个下法(勉励摸索)等方面 。经过多次模仿,树会搜索的越来越广,越来越深 。由于其回溯的机制,Q值越来越准,下面的搜索会越来越强 。因为每次的Q值,都是当前模仿以为的最优(消除勉励摸索,多次后会抵消),模仿最多的下法(树分支)就是全部模仿中累积以为最优的下法 。
到此为止,AlphaGo她神秘的面纱已经揭开 。她的根本框架见下图 。下棋时的线上进程是图中红箭头 。线下的预备工作(学习进程)是蓝箭头 。。再串一下 。AlphaGo下棋(线上)靠模仿,每次模仿要选下那一步,不是简略的选点policy就完了,而是要参考以前模仿的形势断定,包含:value net和迅速模仿(小模仿)到终局,勉励摸索,policy(先验),就是(Q+u),它比单纯的policy准 。她选择模仿最多的下法(就是平均最优) 。这是线上,下着棋了 。之前(线下),她要训练好policy模型,rollout模型和value 模型 。其中,policy,rollout可以从棋谱,和自己下棋中学到 。value可以从用学好的policy下棋的模仿成果监视学到 。从而完善解决value学不到的问题和policy和value互相嵌套的逝世结 。从棋谱直接学value net现在还不行 。

这是迄今为止,AlphaGo算法最清晰的解读!

文章插图
11、AlphaGo用到哪些技巧?
AlphaGo在树搜索的框架下应用了深度学习,监视学习和加强学习等办法 。
以前最强的围棋AI应用蒙特卡洛树搜索的办法 。蒙特卡洛算法通过某种 试验 的办法,等到一个随机变量的估量,从而得到一个问题的解 。这种试验可以是盘算机的模仿 。让我们看看蒙特卡洛树搜索怎么模仿的 。算法会找两个围棋傻子(盘算机),他们只知道那里可以下棋(空白处,和非打劫刚提子处),他们最终下到终局 。好了,这就可以断定谁赢了 。算法就通过模仿M(M N)盘,看黑赢的概率 。可以看到这显著的不合理 。因为每步是乱下的 。有些棋基本就不可能 。即使如此,这个算法可以到达业余5段左右程度 。
AlphaGo可不是乱下,她是学了职业棋手着法的 。所以AlphaGo的搜索叫beam search(只搜索几条线,而不是扫一片) 。前面也可以看到AlphaGo以为的可能着法就几种可能性,而不是随机的250种 。这就是从250的150次方到几( 10)的n(n 150,可以提前终止搜索,因为有value net)次方,的盘算量下降 。虽然AlphaGo每次模仿的时光更长(因为要深度模型的预测policy和value,不是乱下),但是AlphaGo的模仿次数可以更少,是蒙特卡洛树搜索的1/15000 。就是说AlphaGo的搜索更有目标性了,她大概知道该走哪里 。讲解说她下棋更像人了 。我会说她下棋更像职业棋手,甚至超过职业棋手 。线下的学习使得她的行动(模仿)有了极强的目标性,从而完成最终目的(赢棋) 。
12、什么是打劫?
打劫,是指黑白双方都把对方的棋子围住,这种局势下,如果轮白下,可以吃掉一个黑子;如果轮黑下,同样可以吃掉一个白子 。因为如此往复就形成循环无解,所以围棋制止 同形反复。依据规矩规定 提 一子后,对方在可以回提的情形下不能马上回提,要先在别处下一着,待对方应一手之后再回 提。如图中的情形:
这是迄今为止,AlphaGo算法最清晰的解读!

文章插图
打劫因为重复走同一个点,会使搜索树的深度加大,而且因为其他地位劫才会影响劫的胜负,劫才之间又相互影响,有可能打劫中又发生新的劫 。总之,打劫规矩会使围棋的庞杂度加大 。
因为前两局棋没有下出打劫,有人会疑惑DeepMind和李世石有不打劫协定 。在后面的棋局中,AlphaGo确切下出了自动打劫 。而且从算法层面看,打劫也不会是她的模仿框架瓦解(可能会有一些小麻烦) 。
13、遇强则强,遇弱则弱?
AlphaGo的表示似乎是遇强则强,遇弱则弱 。这可能是由于她的学习监视信息决议的 。policy和value学习时,和rollout模仿时,最后的成果是谁赢(的概率),而不是谁赢 多少 (赢几目) 。所以在AlphaGo领先时(几乎已经是常态了),她不会下出过火的棋,她只要保证最后赢就行了,而不是像人一样要赢的多,赢的英俊 。即使有杀大龙(一大块棋)的机遇,她也不必定杀,而是走平和的棋,让你无疾而终 。估量只有在AlphaGo断定她大大落伍的时候,她才会冒险走过火的棋(这好像不常见) 。


推荐阅读