楚小溪:摩尔曲线的奇点 木遥:如果我是谷歌论文审稿人

                         “摩尔曲线”的奇点,AlphaGo开启技术纪元

                        2016-01-28                                                楚小溪                                                                        楚溪生活记录                                            

什么是人工智能?一般人们第一次听说“人工智能”这个名词是在中学课本上,一台名叫“深蓝”的计算机,战胜了某国际象棋大师(思如泉涌中,懒得去百度)。问题是,这算人工智能么?进一步思考,“人工智能”这个词是指,人工造出的智能,还是指拥有人工的智能?这个选择疑问句,其实分别指代不同层面的问题。如果仅仅是人工造出的智能,那恒温电冰箱、自动断电的空调等等产品,其实都可以算作人工智能产品,因为他们确实都是人造的,并且具有智能调节特点。但,如果问题是这么简单的话,那我还写个屁啊。所以,我想说的是,究竟什么才是拥有人的心智、脑智(这个词是我杜撰的)的智能物体?


人的大脑在认识事物时,具有三个突出的特点:模糊处理信息,从记忆中抽取信息和预测。


想象下自己第一次打羽毛球时候的情景,我们之前并没有见到过别人是如何打羽毛球的,也许没有学过抛物线的计算,没有考虑过以手臂为半径的球面运动对击球的影响,但我们还是可以挥拍命中。这可以作为大脑模糊处理信息的一种表现。而现在的人工智能显然不能“凭直觉”去决定自己的行动。


人体的大脑皮层有6层,呈金字塔型阶层分布。当我们回忆时,低阶皮层做出反应,由“垂直体”向上传输信号,回忆序列迅速展开,同时,高阶皮层在通过“垂直体”将行动信号传输到“行为源”,在同时,高阶皮层的预测行为也在同步传输,所以我们总是先意识到行为,才去行动。


我用到了“序列”这个词,对,人的记忆是按照序列的。回想下,那些令我们不堪的英语听力考试吧,听力开始的时候,多数人还是能招架的,突然,一个陌生的词汇出现了,你的大脑在记忆力没有搜索到这个词汇,然后你会短暂的想“卧槽,,接着,你就应该祈祷题目跟这个陌生词汇附近的片段没有关系了。再来个例子,当我们看到歌曲的名字,比如周杰伦的《简单爱》,接下来脑海里会浮现歌词、旋律、你的童年、伙伴、初恋。记忆就是这样呈序列展开的,记忆展开的方式也是从大脑皮层的第6层向第1层慢慢展开。如果,第4层不仅仅将信号向下传输,他还向上传回了第6层,那“想象”便产生了。


之前,找熊猫图片火爆朋友圈。当我们用眼睛扫视图片时,处于大脑皮层最低层的视觉层开始向上传输信号。然后,高阶皮层接受到信号之后,发现记忆展不开。为什么呢?因为我们第一眼没看到熊猫,于是高阶一纸令下,打回去重新扫描,于是视觉层又开始苦逼的扫描。



还在从上面那张图里找熊猫么? 别找啦,这图是我随便百度的......

当我们下楼梯时,如果万一下面的楼梯坏了,我们在踩空的刹那间,低阶皮层发现自己找不到可以匹配的记忆,于是开始上报给高阶皮层,但高阶皮层也没发现自己有类似的记忆,记忆序列出了问题,于是大脑意识到你踩空了,然后你会迅速作出反应,避免自己摔倒。但如果是计算机,估计已经散架了。


在《爸爸去哪儿》里有一幕,杨阳洋和姐姐去雨林,当他们看见爸爸装扮的“原始人”时,杨阳洋呆萌的问了一句“国王,你能告诉我宝藏在哪么”,并且深信这个人就是丛林之王。(咳咳,先别急着笑,回归正题)当杨阳洋看到“原始人”的时候,信号从视觉区迅速上传,高阶皮层迅速从本质上确认,杨阳洋看到的是人,而不是别的生物。但这个“原始人”与他平时所见的人又不太一样,高阶皮层无法将归类。于是第二个传输路径便开始经由丘脑开通了,杨阳洋开始将这个“新人”回归到了一种“新新人类”中,就是“丛林之王“。在他大脑归类的那个时刻,他的海马体应该也在迅速膨胀,记忆这个事情。


在人工智能和神经科学领域,充斥着许多理论和思想,而大家对大脑的认知也很难达成某种统一。在人工智能产品方面,也是分成了不同的流派,奉图灵为祖师爷的“结果派”和以“one algorithm”假设为旗帜的“还原派”。好吧,其实流派的名称是我造的。“结果派”就是只关注人工智能产生的结果,而“还原派”则一直在试图还原大脑的习得过程。从上面的文章能看出来,我是支持“还原派”的。为什么不支持结果派呢? 来张图片。



我猜图中这位妹子一定用了美颜功能。证据嘛,你看看就知道了。这就是“结果派”容易产生的问题。而对于“还原派”来说,大脑结构的复杂性是最大的障碍。因人脑有 150 多亿个神经元,而之前Google搭建的猫脸识别系统,由16000 个处理器连接而成,内部也才有 10 亿个节点。早年间流行的“Society of Mind”理论认为大脑的认知是由大脑中各个单元共同协作的结果,不同的单元分管不同的功能。但后来“one algorithm”假设则认为,同一部分也会担当不同的功能,这个假设对于人工智能的研究人员来说,简直就是通向未来的光啊,事实也证明了这一点。


今天早上,姚欣和曹政两位老师在朋友圈里转发了同一则消息,Google 的下棋技术AlphaGo战胜了欧洲围棋冠军。注意,是围棋,不是之前的国际象棋,是在围棋的棋盘上。为什么战胜围棋冠军比战胜国际象棋冠军意义要更大?原因三点:一、国际象棋棋子优劣明显,开局排布一致。“深蓝”是依靠棋谱计算最优解,棋谱是人写的,说到底是人打败了人。二、围棋有3的361次方种局面,而可观测的宇宙,原子数量不过是10的80次方。三、围棋无法用函数来评估当前局面。所以,围棋始终被认为是人工智能短时间内无法攻破的领域。


但这次,Google AlphaGo  用  Value Networks(价值网络)和Policy Network(策略网络)模拟人体大脑的认知。如文章开头所讲到的,我们的大脑具有模糊处理信息,从记忆中抽取信息和预测的能力,我们可以凭感觉去击打羽毛球,但计算机不行,计算机需要计算机械臂的球员圆周运动,需要计算羽毛球下落的抛物线轨迹等等一系列因素。每一步,计算机都需要重新识别,重新建模,需要耗费巨大的工作量来完成击打动作。而AlphaGo利用Value Networks(价值网络)和Policy Network(策略网络)来模拟大脑模糊处理信息的能力,也就说,AlphaGo并不需要重新计算每一步围棋落子的最优解,而是像大脑感觉一样,在范围内寻找最优解操作。


同时,研究人员通过培养AlphaGo的深度学习能力,让AlphaGo在与自己对弈自学习2000万余次之后,拥有了类似大脑的从记忆中抽取信息并预测的能力,通俗的讲就是“棋感”。一个老棋手在对弈许多次之后,会形成一种感觉,这种感觉可以让他毫不费力的找到落子的最优解。就像常年维修汽车发动机的人,仅凭发动机的声音就可以判断出,发动机的类型和损耗程度。


并且,AlphaGo并没有抛弃计算机的计算优势。当棋盘上的棋子增多时,AlphaGo会通过蒙特卡洛树计算可能出现的结局。对围棋来讲,结果是一定的,胜方的子一定比负方的多,而蒙特卡洛算法恰恰是利用概率论的方式来求恒定的量。总之,AlphaGo既拥有类似人类大脑的模糊处理信息的能力,又能够通过自学习从记忆中抽取信息,形成“感觉”,而且还具有计算机计算能力存储强的优势。Google AlphaGo正在实现真正的人工智能,让计算机自学习,而不是依靠大量的数据匹配。


在移动互联网时代,我们依靠庞大的消费市场,迎头赶上。如今,我们还是在谈论红利、谈论模式、谈论融资。而在大洋对岸,新的“摩尔曲线”已经开始,高通、苹果、微软、谷歌,这些巨头引领着这条以技术为导向的新曲线。而2016年的1月28日,这条新的“摩尔曲线”可能迎来了它的第一次爆发奇点。可能在若干年后,我们会无数次的提到这个日子,人工智能第一次通过自学习的方式打败了欧洲围棋冠军。而3月,AlphaGo将挑战世界围棋冠军。也许届时,对围棋选手来说是一个结束,但对世界来说,却是一个开始。


本文为原创,转载请注明作者和出处,谢谢。




楚溪生活记录

90后不只是有马佳佳和余佳文

还有热爱理性与科学的楚小溪

微信ID:chuxi_jilu

长按二维码关注我

或添加我个人微信 red_ch



                         木遥:如果我是AlphaGo论文审稿人

                        2016-01-31                                                木遥                                                                        科学人                                            

2016 年 1 月 28 日,Deepmind 公司在 Nature 杂志发表论文 Mastering the game of Go with deep neural networks and tree search,介绍了 AlphaGo 程序的细节。本文是对这篇论文的阅读笔记,以及关于人工智能和围棋进一步的一些想法。

声明:我是数学 PhD 和软件工程师,但不是人工智能领域的专家。我也不会下围棋。



AlphaGo的两个大脑



AlphaGo 总体上由两个神经网络构成,以下我把它们简单称为「两个大脑」,这并非原文中的提法,只是我的一个比喻。


第一个大脑(Policy Network)的作用是在当前局面下判断下一步可以在哪里走子。它有两种学习模式:


一个是简单模式,它通过观察 KGS(一个围棋对弈服务器)上的对局数据来训练。粗略地说:这可以理解为让大脑学习「定式」,也就是在一个给定的局面下人类一般会怎么走,这种学习不涉及对优劣的判断。

另一个是自我强化学习模式,它通过自己和自己的海量对局的最终胜负来学习评价每一步走子的优劣。因为是自我对局,数据量可以无限增长。


第二个大脑(Value Network)的作用是学习评估整体盘面的优劣。它也是通过海量自我对局来训练的(因为采用人类对局会因为数据太少而失败)。

在对弈时,这两个大脑是这样协同工作的:


第一个大脑的简单模式会判断出在当前局面下有哪些走法值得考虑。

第一个大脑的复杂模式通过蒙特卡洛树来展开各种走法,即所谓的「算棋」,以判断每种走法的优劣。在这个计算过程中,第二个大脑会协助第一个大脑通过判断局面来砍掉大量不值得深入考虑的分岔树,从而大大提高计算效率。


与此同时,第二个大脑本身通过下一步棋导致的新局面的优劣本身也能给出关于下一步棋的建议。

最终,两个大脑的建议被平均加权,做出最终的决定。


在论文中一个有趣的结论是:两个大脑取平均的结果比依赖两者各自得出的结果都要好很多。这应当是让 AlphaGo 表现出和人类相似性的关键所在。


如果我是篇论文的审稿人



我会对论文提出下面这些问题和评论:


首先,这些神经网络训练在很大程度上是通过自我对局来实现的。这既是某种优势(按照 Facebook 人工智能研究员田渊栋的说法,几千万自我对局这种规模是相当惊人的数据量),某种程度上来说也是不得已而为之,因为人类对局的总数实在太少,会导致机器学习中常见的过度拟合问题。


但是这样是否有可能造成自我设限乃至画地为牢的后果?这同时牵涉到人们对神经网络学习过程的理解和对围棋本身的理解。一方面,神经网络本身是否包容一定程度的「think out of the box」的能力,这固然取决于具体的神经网络算法,但也确实是人们对神经网络方法的一个本质困惑。另一方面,因为 AlphaGo 最基础的定式仍然是来源于人类对局,因此,这个问题依赖于人类棋手本身是否已经穷尽了围棋中所有有意义的基本定式。

(作为一个案例,在 AlphaGo 和樊麾的第二盘对局中,很多人都注意到 AlphaGo 走了一个不标准的大雪崩定式,这是说明 AI 学错了呢,还是它发现这是更好的走法?)


其次,这两个大脑的工作方式确实和人类很相似,一个判断细部,一个纵览全局。但 AlphaGo 最终的结合两者的方式相当简单粗暴:让两者各自评估一下每种可能的优劣,然后取一个平均数。这可绝不是人类的思维方式。

对人类来说,这两种思考问题的方式的结合要复杂的多(不仅仅是在围棋中是这样)。人们并不是总是同时对事态做出宏观和微观的判断,而是有时候侧重于大局,有时候侧重于细部。具体的精力分配取决于事态本身,也取决于人在当时的情绪、心理和潜意识应激反应。这当然是人类不完美之处,但也是人类行为丰富性的源泉。


而 AlphaGo 固然体现出一定的大局观,但从具体算法看来,它在为了宏观优势做出局部牺牲这方面的能力和人类完全不能相提并论。AlphaGo 引入整体盘面评估确实是它胜于许多别的围棋 AI 的地方,但从根本上来说,这只是人们让 AI 具有「战略思维」的尝试的第一步,还有太多可以改进的可能性。

最后,和很多别的围棋 AI 一样,当 AlphaGo 学习盘面判断的时候,采用的是图像处理的技术,也就是把围棋棋盘当做一张照片来对待。这当然在技术上是很自然的选择,但是围棋棋局究竟不是一般意义上的图案,它是否具有某些特质是常见的图像处理方法本身并不擅长处理的呢?



为什么要让AI去下围棋?



有很多理由。但在我看来最重要的一个,是能够让我们更深入地理解智能这件事的本质。


神经网络和机器学习在过去十年里跃进式的发展,确实让 AI 做到了许多之前只有人脑才能做到的事。但这并不意味着 AI 的思维方式接近了人类。而且吊诡的是,AI 在计算能力上的巨大进步,反而掩盖了它在学习人类思维方式上的短板。

以 AlphaGo 为例。和国际象棋中的深蓝系统相比,AlphaGo 已经和人类接近了许多。深蓝仍然依赖于人类外部定义的价值函数,所以本质上只是个高效计算器,但 AlphaGo 的价值判断是自我习得的,这就有了人的影子。然而如前所述,AlphaGo 的进步依赖于海量的自我对局数目,这当然是它的长处,但也恰好说明它并未真正掌握人类的学习能力。一个人类棋手一生至多下几千局棋,就能掌握 AlphaGo 在几百万局棋中所训练出的判断力,这足以说明,人类学习过程中还有某种本质是暂时还无法用当前的神经网络程序来刻画的。


(顺便提一句,很多评论认为 AlphaGo 能够通过观察一个特定棋手的对局来了解他的棋风以做出相应的对策。至少从论文来看,这几乎确定是不可能的事。一个棋手的对局数对 AlphaGo 来说实在太少,无从对神经网络构成有效的训练。观察和总结一个人的「棋风」这件事仍然是人类具有完全优势的能力,对电脑来说,这恐怕比赢棋本身还更难一些。)

这当然不是说,AlphaGo 应该试图去复刻一个人类棋手的大脑。但是 AlphaGo 的意义当然也不应该仅仅反映在它最终的棋力上。它是如何成长的?成长曲线具有什么规律?它的不同参数设置如何影响它的综合能力?这些不同参数是否就对应了不同的棋风和性格?如果有另一个不同但水平相当的 AI 和它反复对弈,它能否从对方身上「学到」和自我对弈不同的能力?对这些问题的研究和回答,恐怕比单纯观察它是否有朝一日能够超越人类要告诉我们多得多的知识。


因此,即使 AlphaGo 在三月份战胜了李世乭,在我看来也是另一扇大门的开启而非关闭。事实上,即使就围棋发展本身而论,如果把 AlphaGo 的两个大脑以如此简单的方式线性耦合起来就能胜过人类,那只能说明人们对围棋的规律还有太多值得探索的空间。

而对人工智能领域来说,AlphaGo 和一切神经网络一样,本质上还只是个大黑盒,我们能观察到它表现出的巨大能力,但对它究竟是如何「思考」的这件事依然所知甚少。在工程上,这是个伟大的胜利。在科学上,这只是万里长征的第一步而已。





AlphaGo 项目主页:http://www.deepmind.com/alpha-go.html

Nature 论文:http://www.nature.com/nature/journal/v529/n7587/full/nature16961.html


Nature 报道:http://www.nature.com/news/google-ai-algorithm-masters-ancient-game-of-go-1.19234

Dan Maas 对论文的浅显总结:http://www.dcine.com/2016/01/28/alphago/ 



本文由作者授权转载

谢绝二次转载

如有需要请联系sns@guokr.com

科学人
科研最新进展,学术最新动态,顶级学者的思考和见解。
长按二维码关注科学人(微信号:scientific_guokr)。