[新闻]陈经:AlphaGo从零开始自学围棋为什么能成功

楼主: qweewqq (風一樣的男子)   2017-10-22 13:25:44
陈经:AlphaGo从零开始自学围棋为什么能成功  
文章来源:观察者网
  一。AlphaGo从零开始自学习新版本算法框架与等级分表现
  2017年10月18日,业界非常期待的AlphagGo新论文终于在 《自然》上发表了。
Deepmind开发了一个名为AlphaGo Zero的新版本,它只用一个策略与价值合体的神经网络
下棋,从随机走子开始自我对弈学习,完全不需要人类棋谱。新的强化学习策略极为高效
,只用3天,AlphaGo Zero就以100:0完全击败了2016年3月轰动世界的AlphaGo Lee。经
过21天的学习,它达到了Master的实力(而Master在2017年5月3:0胜人类第一柯洁)。
  40天后,它能以90%的胜率战胜Master,成为目前最强的围棋程式。而且AlphaGo
Zero的计算过程中直接由神经网络给出叶子节点胜率,不需要快速走子至终局,计算资源
大大节省,只需要4个TPU就行(AlphaGo Lee要48个)。
  从 Goratings棋力等级分上看,AlphaGo Zero其实和Master还能比较,只多个300多
分。这相当于论文发表当天,人类第一柯洁九段的3667分与第38名的人气主播孟泰龄六段
3425分的分差,两人肯定实力有差距,但也还有得下。论文公布了AlphaGo Zero的83局棋
谱,其中与Master下的有20局,Master在第11局还胜了一局。
  AlphaGo新版本从零开始训练成功,这个 结果大大出乎了我的预料,相信也让业界不
少人感到震惊。我本来是预期看到Master的算法解密,为什么它能碾压人类高手。
AlphaGo退役让人以为 Deepmind不研究围棋了,剩下任务是把Master版本的算法细节在
《自然》公布出来,腾讯的绝艺等AI就可以找到开发方向突破目前的实力瓶颈了。
  本来5月的乌镇围棋大会上说,6月新论文就能出来了,开发者们可以参考了。至于从
零知识开始学习,是个有趣的想法,2016年3月人机大战胜李世石后就有这 样的风声,人
们期待这个“山洞中左右互搏”的版本出来,与人类的下法是不是很不相同,如开局是不
是会占天元?但是后来一直好像没进展,乌镇也没有提。
  好几个月了,新论文一直没出来。绝艺明显进入发展瓶颈,总是偶而会输给人,还输
给了DeepZenGo与CGI。各个借鉴AlphaGo的AI都迫切需要 Deepmind介绍新的思路与细节。
到8月跑出来一篇AlphaGo打星际争霸的论文,从零知识开始学,学人类录影打,两种办法
都不太行。
  这时我认为让AlphaGo从零知识开始学可能不太成功,会陷入局部陷阱,人类棋谱能
提供一个“高起点”,高水准AI还是需要人类的“第一推动”。
  实际是Deepmind团队认为,仅仅写Master对于《自然》级别的文章不够震憾。新的论
文标题是“Mastering the Game of Go without Human Knowledge”,这个主题升华就足
够了。而Master用人类棋谱训练了初始的策略网络,人类知识还是有影响,虽然后来自学
习提升后人类影响很小 了。对于不懂围棋或者对算法细节不关心的人,Master相比
AlphaGo Lee无非是棋力更强一些,战胜的柯洁与李世石都是顶级高手没本质区别,
Master的创新性也需要懂围棋才能明白。
  AlphaGo Zero是真正的从零开始训练,整个学习过程与人类完全没有关系,全是自己
学,这个哲学意义还是很大的。过程中与人或者其它版本下,只是验证棋力不是学招。
  二。真正的算法突破是Master版本实现的
  可 以认为,在技术上从AlphaGo Lee进步到Master是比较难的,需要真正的变革,神
经网络架构需要大变,强化学习过程也要取得突破。绝艺、DeepZenGo等AI开发就一直卡
在 这个阶段,突破不了AlphaGo Lee的水准,总是出bug偶尔输给人,离Master差距很大

  但如果Master的开发成功了,再 去试AlphaGo Zero就是顺理成章的事。如果它能训
练成功,应该是比较快的事,实际不到半年顶级论文就出来了,回头看是个自然的进展。
Deepmind团队在五月后应 该是看到了成功的希望,于是继续开发出了AlphaGo Zero,新
论文虽然推迟了,但再次震惊了业界。
  也可以看出,2016年Deepmind《自然》论文描述的强化学习过程,整个训练流水线比
较复杂,要训练好几种神经网络的系数,进化出一个新版本需要几个星期。用这个训练流
水线,从零开始强化学习,应该是意义不大,所以一直没有进展。
  但是Master的自学习过程取得了重大突破,之前从人类棋谱开始训练2个月的水准,
改进后只要一星期就行了,学习效率,以及能够达到的实力上限都有了很大进展。以此为
基础,再把从零开始引进来,就能取得重大突破。所以Deepmind真正的技术突破,应该是
开发Master时取得的。AlphaGo Zero是Master技术成果的延续,但看上去哲学与社会意义
更重大。
  Master与AlphaGo Zero的成功,是机器强化学习算法取得巨大发展的成果与证明。
训练需要的局数少了,490万局就实现了AlphaGo Lee的水准。而绝艺到2017年3月就已经
自我对弈了30亿局,实力一直卡著没有重大进步,主要应该是强化学习技术上有差距。
  我在2017年1月9日写的《AlphaGo升级成Master后的算法框架分析》文中进行了猜
测:
  从实战表现反推,Master的价值网络品质肯定已经突破了临界点,带来了极大的好处
,思考时间大幅减少,搜索深度广度增加,战斗力上升。AlphaGo团 队新的prototype,
架构上可能更简单了,需要的CPU数目也减少了,更接近国际象棋的搜索框架,而不是以
MCTS为基础的复杂框架。比起国际象棋 AI复杂的人工精心编写的局面评估函数,AlphaGo
的价值网络完全由机器学习生成,编码任务更为简单。
  理论上来说,如果价值网络的估值 足够精确,可以将叶子节点价值网络的权重上升
为1.0,就等于在搜索框架中完全去除了MCTS模组,和传统搜索算法完全一样了。这时
的围棋AI将从理论上 完全战胜人,因为人能做的机器都能做,而且还做得更好更快。而
围棋AI的发展过程可以简略为两个阶段。第一阶段局面估值函数能力极弱,被逼引入MCTS
以 及它的天生弱点。第二阶段价值网络取得突破,再次将MCTS从搜索框架逐渐去除返朴
归真,回归传统搜索算法。
  从新论文的介绍来看, 这个猜测完全得到了证实。Master和AlphaGo Zero的架构确
实更简单了,只需要4个TPU。AlphaGo Zero到叶子节点就完全不用rollout下完数子了,
直接用价值网络(已经与策略网络合并)给出胜率,就等于是“价值网络的权重上升为
1.0”。 Master有没有rollout没有明确说,从实战表现看应该是取消了。
  当然新论文中还是将搜索框架称为“MCTS”,因为有随机试各分支,但这不是新东西
,和传统搜索差异不算大。对围棋来说,2006年引入MCTS算法真正的独特之处是从叶子
节点走完数子,代替难以实现的评估函数。
  这种疯狂的海量终局模拟更像是绝望之下的权宜之计,也把机器弄得很疲惫。但是
Master与AlphaGo Zero都成功训练出了极为犀利的价值网络,从而又再次将rollout取消
。价值网络的高效剪枝,让Master与AlphaGo Zero的判断极为精确,从而算得更为深远战
斗力极为强大。这个价值网络怎么训练出来,就是现在Deepmind的独门绝技。可以说,新
论文最有价值的就 是这个部分。
  从Master开始,AlphaGo的网络结构应该就有大变了。到AlphaGo Zero,将价值与策
略网络合为一个,这并不奇怪。因为第一篇论文中,就明确说价值与策略网络的架构是完
全一样的,只是系数不同。那么二者共用一个网络也 不奇怪,前面盘面特征表述应该是
一样的,等需要不同的输出时再分出不同的系数。Master网络结构大变之后,也许
Deepmind发现,许多盘面特征都 可以训练出来,所以就简单将盘面输入简化成黑白。
  AlphaGo Zero的强化学习过程,应该与Master差不多,都是成功地跳出了陷阱,不断
提升到超乎人类想像的程度。Master从研发上来说,像一个探路先锋, 证明了这条路是
可以跑通的,能把等级分增加1000分。而AlphaGo Zero,像是一个更为精减的过程,本质
是与Master类似的。
  新论文中的AlphaGo Zero确实显得架构优美。只需要一个网络,既告诉机器可以下哪
,也能给出局面的胜率。盘面输入就是黑白,也不需要任何人类知识。强化学习就是两招
,搜索 的结果好于神经网络直觉想下的点,可以用于策略选点的训练,一盘下完的结果
回头用于修正胜率,都很自然。但是为了实现这个优美结果,需要勇敢的探索。一开 始
的AlphaGo并没有这么优美,路跑通了,才想到原来可以做得更简单。
  本文再提出一个猜测:现在的绝艺、DeepZenGo等AI实力 接近AlphaGo Lee了,但都
经常出现死活bug,会怎么出和人类对手的实力关系不大,并不是对手等级分高的它就容
易出bug,基本是自己莫明其妙送死。这个bug的原 因是rollout模组带来的,因为
rollout策略是人类棋谱训练出来的,也可能有人工加代码打补丁。
  它的目的是快速下完终局,但如果 牵涉到死活,这种快速下完就不太可靠了,活的
下死,死的杀活。但是,怎么实现不出错的rollout,这非常困难,应该是不可能完成的
任务。Master 和AlphaGo Zero的办法,是取消这个不可靠的rollout,直接让神经网络给
出结果。如果神经网络给出的胜率结果有问题,那就靠训练来解决。这样纠错,强过程式
员去排查rollout代码里出了什么错。
  三。机器与人类对围棋的适应能力差异很大
  Master和AlphaGo Zero的突破说明,在极高的水准上,需要考虑出现瓶颈的原因。人
类棋谱能够提供一个“高起点”,但是机器从零开始训练一两天也就追上了,带来的“先
发优 势”没多少。而人类棋谱中显然有一些“有害成分”,这可能将AI的学习过程带歪
。如果AI不能找到消除这些“人类病毒”的办法,那训练就会陷入瓶颈。如下 图,零知
识强化学习的版本实力迅速追上有人类棋谱帮忙的。
  从围棋本身看,它的规则几乎是所有游戏中最优美最简单的。规则就是两句话可以了
,气尽提子,禁全同(打劫的由来)。甚至贴目这样的胜负规则都是人类强加的, 围棋
游戏不需要胜负规则就可以成为一个定义明确的游戏。打砖块这样的Atari游戏就是这样
,目标就是打到更高的分。围棋游戏的目标可以是占更多的地,结 果可能是黑183、184
、185子这样,不需要明确说出黑胜黑负。黑白博弈,会有一个上帝知道的“均衡”结果
,猜测可能是黑184子白177子,或者黑 184.5白176.5(有眼双活)。
  这是一个优美的博弈问题,是掌握了强化学习方法的AI最喜欢的游戏,规则这么简单
,太容易了。最终强 大的围棋AI,应该是自然的,开发只依靠原始规则,不需要其它的
资讯了。AlphaGo Zero应该已经接近了这个目标,除了中国规则强加的7.5目的贴目。也
许以后可以让AlphaGo不考虑贴目了,黑白都直接优化占地的多少,不再以胜率 为目标,
说不定能训练出一个更优秀的AI。如优势时不会退让了,劣势时也不自杀。这次Master与
AlphaGo Zero一些局终局输定时就表现得很搞笑,有时摇头劫死棋打个没完。
  AlphaGo Zero的棋力提升过程非常流畅,说明围棋精致的规则形成的数学空间很优美
,神经网络很快就能抓住围棋空间的特征,表现得非常适应。而这种神经网络与围棋空间
的适应性,是之前人们没有想到的,因为人自己感觉很困难,没料到神经网络学习起来美
滋滋。
  AlphaGo Zero能从零开始训练成功,也是因为围棋的绝对客观性。围棋规则如此自洽
,不需要人类干预,就能很容易地自我对弈出结果,直接解决了“学习样本”这个大 问
题。人工智能机器学习碰上的很大问题就是需要海量样本,而实际生活中有时只有少量样
本,有时需要人工标注很麻烦。
  围棋的对局天然在那 了,AlphaGo Zero的任务就是找到合适的学习方法,没有样本
的问题。而人类既无法自我产生海量对局,也无法像AI那样目标明确地快速改进自己的脑
神经,单位时间学习 效率被AI完全碾压。所以围棋是更适合AI去学习的游戏。人类的学
习方法也许还是适合人的,但AI学习方法更强。
  对于围棋这么自然而且绝对客观的游戏,消除人类的影响应该从哲学上来说是有深度
的想法。从围棋规则来看,日韩规则对AI简直是不可理解,甚至无法定义,未来肯定会消
亡。而人类的棋谱是客观的,但对棋谱的解读是主观的。主观的东西就可能出错,这要非
常小心。
  对于人类的知识体系也是如此。客观世界的运行是与人无关的,人对客观世界的解读
就是主观的,很可能带入了错误的东西。所以,有时需要返回到客观世界进行本原 观察
,而不是在错误的知识体系上进入所谓的“推理与搜索”。客观上不成立,什么都完了。
经济学道理写得再雄辩,实践中失败了就不行。
  柯洁在微博上的感慨
  另一方面,也不要片面强调说人类知识没用,还不如零知识。实际上Master与
AlphaGo Zero的实距从算法层面看,并不太大。二者300分的等级差距,也许不是
Master开始学了人类棋谱带来的,出许是更精细的网络架构、训练过程的小细 节之类的
影响。Master其实找到办法跳出了人类知识的陷阱。
  因此,可以说人类知识可能存在问题,但不要说学了人类知识就没法到高境界。 意
识到旧知识体系的问题,作出突破就可以了。而且人类没法和机器比,不可能真从零知识
开始疯狂自己下,没那个体力。现实的选择只有学习前辈的经验。也许 AlphaGo的意义是
说,要有一个知识体系,这个知识体系可以是自己学出来并检验的,也可以是Master那样
借鉴了别人的,但要接受实践检验,也要敢 于怀疑突破成见。
  四。AlphaGo Zero的实战表现
  虽然AlphaGo Zero完全与人类棋谱无关了,但是也许会让棋手们欣慰的是,它下得其
实很像人。训练没几个小时就下得非常像人了,也是从角上开始,这方面的判断和人是一
致的。
  而且它甚至比Master还要像人类棋手,显得比较正义。Master不知道为什么喜欢出怪
异的手段,棋谱极为难懂,对人类而言更为痛苦,打又打不过,看也 看不懂。AlphaGo
Zero对Master的棋谱结果是19:1,感觉上AlphaGo Zero战胜Master的招数不是以怪制怪
,而是用正招去应付,然后Master的强招碰上正义的力量就失败了。而人类对Master应错
了,就输了。 也许是因为,Master训练到后来,为了提高胜率走上了剑走偏锋的路线,
出怪招打败之前的版本,而同一版本的黑白是同等实力,以怪对怪正好实力相当,维 持
了半目胜负。碰上AlphaGo Zero就失去了这种平衡,被正义的招数镇压。
  图为AlphaGo Zero执黑对Master。Master气势汹汹54位飞,要吃掉黑三子。在Master
与人类棋手的计算中,以及解说的这盘棋的绝艺看来(腾讯围棋经 常有绝艺配合人类棋
手解说棋局的节目),黑这三子应该是被吃了,要考虑弃子。但是AlphaGo Zero不这么认
为。
  黑棋AlphaGo Zero在左下角将白棋做成了打劫杀。遭此打击,Master就此陷入被动。
这说明Master的计算也不一定毫无破绽,只是碰上算得更深的才被抓住。这 个计算手数
很长,出现错误也可以理解。这也说明Master以及AlphaGo Zero从算法原理看,都可能
会被抓住计算错误,仍然有进步空间。一度我被Master的极限对局吓住了,以为围棋的终
极奥义可能就是这种看不懂的死掐。
  AlphaGo Zero执白对Master。这是双方对局的常见局面,白AlphaGo Zero捞足了实地
,Master的中央模样像纸糊的一样被打破,败下阵来。
  AlphaGo Zero自战。胜率落后的黑用129的手筋撑住了局势,但最后还是胜率越来越
低失败了。
  应该说AlphaGo Zero的棋谱还是较为自然的,虽然中盘显然很复杂,但不像Master那
样完全看不懂心生恐惧。对于人类棋手来说,AlphaGo Zero会更为亲切,它就像一个最高
水准的人类棋手,下得是意图可以说清楚的棋,只是永远正确,不像人类低手这错那错。
而Master的自战谱就显得不可 理解,蛮不讲理,动不动就搞事,撑得很满步步惊心搞极
限对局,人类看得很晕。
  围棋AI应该还是在发展过程中,自我对弈容易显得较死劲,实力有差距就会显得一方
潇洒自然。围棋的状态空间还很大,应该还能有更厉害的版本一级级发展出来,就像国际
象棋AI仍然在不断进步。
  当然对Master以及AlphaGo Zero的棋谱,需要人类高手们配合AI的后台资料来解读。
AlphaGo Zero这个不需要人类知识的AI棋手,再次给人类提供了不同风格的棋谱,让棋坛
越来越精彩。而且Deepmind的这篇论文提供了优美简洁的开发方法, 更容易模仿成功,
会有越来越多高水准的AI取得突破。
http://sports.sina.com.cn/go/2017-10-22/doc-ifymzqpq3206849.shtml
作者: asglay (收收收尾)   2017-10-23 00:22:00
这作者根本没讲到核心技术也可以说得有来没去 真不简单
作者: s891234 (嘟噜咑)   2017-10-23 01:57:00
不觉得有比Master更像人
作者: aegis43210 (宇宙)   2017-10-23 02:25:00
说到棋风,还是喜欢master的那种捉摸不定这篇文的重点只有绝艺已经自我对弈了30亿局但毫无进步DM已经说不会公开master的实作方法腾讯应该只能去尝试能不能做出另一个alphago/zero
作者: lwei781 (nap til morning?)   2017-10-23 07:45:00
绝艺那方法有大瓶颈
作者: zeat (L.)   2017-10-23 11:38:00
一般论文都不会有实作的部分吧,不然大家做出来的就都一样了
作者: kenwufederer (Nash)   2017-10-23 11:54:00
这文…重点是什么…
作者: ddavid (谎言接线生)   2017-10-23 14:43:00
@zeat 刚好相反,一般论文都会提供足够详细到别人可以完全重现的程度,因为没有重现性的话别人就会认为你可能故意不写清楚在唬烂,review阶段就会被当缺点挑出来叫你补充了。Google这种牌子大、有商业性而且又公开实证在前的,才有细节不写全,顶级期刊照登的本事,毕竟你不登别人可是抢着要登呢XD
作者: aegis43210 (宇宙)   2017-10-23 15:21:00
所以只要腾讯有心,要完整复制alphago/zero不是难事只是master,就会成为DM真正的密藏,没人可重现了
作者: staristic (ANSI lover)   2017-10-23 16:44:00
这文的重点是绝艺30亿局办不到的,zero不到五百万局就成了。两边的算法看来差非常多……
作者: liaon98 (liaon98)   2017-10-23 20:47:00
thesis通常会有实作的部分 登期刊的paper则通常简略带过(thesis或dissertation) 这三个词台湾都翻论文
作者: lwei781 (nap til morning?)   2017-10-24 08:54:00
有的会加 "学位"
作者: harrybbs (harrybbs)   2017-10-24 15:50:00
对其他团队来说了解Master原理对科学研究有帮助不过就围棋而言,能做出更强的Zero也可接受了
作者: aegis43210 (宇宙)   2017-10-24 16:06:00
Zero只有腾讯能复制了,吴毅成的FB很清楚的指明这点光要训练出Lee版本以上的实力,就要一年以上的时间这只是神经深度20-block的版本哦
作者: wadashi1 (阿拉丁)   2017-10-24 16:28:00
CGI经过改造之后不也很强?再黄博士及论文加持,不能复制?
作者: HeterCompute (异质运算)   2017-10-24 20:54:00
不能,详情请看吴教授的脸书https://www.facebook.com/icwu307
作者: wadashi1 (阿拉丁)   2017-10-24 21:21:00
虽然吴教授的推测是极权威的,但我还是想问,黄博士,你觉得呢?
作者: mystage (亭)   2017-10-25 13:35:00
作者: wadashi1 (阿拉丁)   2017-10-26 17:37:00
那CGI训练时,跟google租云端运算呢?这种方式可行吗?https://goo.gl/u2yRBB https://goo.gl/oSsXh8 我不懂这方面的技术,但看来云端运算跟AG相关,可行吗?而且,如果跟谷歌租设备,到时候要请黄博士指导不就更加名正言顺了!搞不好可以挖到论文中至关重要的关键!
作者: mothertime (我超爱傅红雪这变态)   2017-10-26 18:33:00
一般论文都会提出完整重现的方法才对,照做都会错都不会
作者: HeterCompute (异质运算)   2017-10-26 19:26:00
以GoogleCloud为例,租K80 0.77USD/hr,租两个月就可以买一台1080Ti了,而Zero需要上千台1080Ti训练一年才能到达Zero40天水准
作者: wadashi1 (阿拉丁)   2017-10-26 20:00:00
Alphago一代比一代还省资源,而CGI能达到接近最耗资源的Alphago Lee的程度,算是很厉害了!Lee用了48TPU花了非常长的时间才达到那样的程度,但Zero只用了4个TPU,只花了3天就100%胜过Lee。一切的疑团,希望黄博士来台的时候,能有人询问和得到真正的真象!
作者: sunev (Veritas)   2017-10-27 00:03:00
楼上没看吴教授的FB文章吗?4个TPU是训练完成后用的计算资源,训练中时用的计算资源比这个多得多。
作者: jackcselab (monk)   2017-10-27 10:17:00
不过这样看来,alpha zero训练所需的计算资源,看来可能还超过之前的版本?
作者: liaon98 (liaon98)   2017-10-28 05:42:00
下面那篇的github有提到一篇文章说用普通电脑算 要用1700“年”才能到Alpha Zero 40“天”的水准 所以AlphaGo Zero用的资源还是很多的
作者: oldTim (TIME WILL TELL)   2017-10-28 11:59:00
等TPU普及了价格降下来后,资源差距就不明显了
作者: HeterCompute (异质运算)   2017-10-28 12:39:00
TPU短期内不可能普及的,本来就是拿来给企业用的
作者: sunev (Veritas)   2017-10-29 15:36:00
训练出zero所要花的钱可能要上千万,甚至上亿
作者: HeterCompute (异质运算)   2017-10-29 21:08:00
只看电费,假设使用1080Ti,一台全速跑大概也要800W依照吴教授的标准,Zero使用的资源约略是万颗1080Ti所以我们假设万颗,800*10000*24*40/1000(度)=768000度,查了一下美国2015年工业用电2.20新台币/度,所以我们可以得到1690万台币,这只是考虑电费XD另外上面是7680000少打一个0
作者: aegis43210 (宇宙)   2017-10-29 23:59:00
机房也要冷气费,而且电脑也可能故障,要维护费......愈算愈觉得短时间内只有腾讯能实作出来
作者: HeterCompute (异质运算)   2017-10-30 00:04:00
是的,电费只是基础,其他不太好估,但是使用资源破亿台币是肯定的

Links booklink

Contact Us: admin [ a t ] ucptt.com