AlphaGo再下一城,是否代表已经诞生了真正的智能?

2016-03-11 21:48:17来源:机器人网作者:

在刚刚结束的围棋人机第二场比赛中,AlphaGo执黑再下一城,原来对李世石抱有很大期望的围棋界人士信心受到重创,。那么问题来了,AlphaGo再下一城,这是否代表真正的智能已经诞生?

在刚刚结束的围棋人机第二场比赛中,AlphaGo执黑再下一城,原来对李世石抱有很大期望的围棋界人士信心受到重创,同样作为职业九段的选手,柯洁甚至在第二场比赛未结束时就表示,现在只希望李世石赢一场扳回面子就好。那么问题来了,AlphaGo再下一城,这是否代表真正的智能已经诞生?

\

AlphaGo:是黑科技,但不神秘

可以这样说,AlphaGo代表了当今最先进的人工智能,它基于深度学习算法,只能模拟人类神经元的行为模式,从一种输入得到一种输出结果。虽然这是一种黑科技,但是并没有什么神秘的东西在里面。

\

上图是深度学习的基本模型,就是模拟人的神经元轴突建立过程。当前的问题是深度学习软件模拟神经元,效率非常差。除非有忆阻器这种突破性技术,完全的重构计算机技术架构。这种技术要求一个单元能与数十万个其他单元建立物理连接电路,并且能不断更新。想象下如果有模拟一亿个神经元。每个神经元模拟100万个连接。就是100万亿条线路。人脑有800亿个神经元。能达到人类一样计算能力的深度学习机器要能产生8万亿条线路。GOOGLE的DEEP MIND要匹敌人脑的判断能力,可能背后需要数万颗高度集成的记忆单元的超级电脑集群来支持的。如果有一天这种技术得到普及,那么计算机会到达人一样高速识别图像和视频等功能。当然,ALPHAGO是智能的。因为它能模拟人脑的部分功能,实现一种类似人脑模式运算部分的功能,也可能模仿人类的行为惟妙惟肖,但是如果你要是问里面这里面会不是产生意识。答案是绝对没有。

ALPHAgo不可能产生任何自我意识。任何人工智能连意识的边都沾不上。实际上已知技术中,除了跟妹子造人,产物能产生意识之外。还没有任何路径可以产生有意识的产品。

人的大脑分两个部分。一部分(大脑皮质)负责产生意识。一部分负责记忆、运算。DEEP MIND这种深度学习算法模拟的是后者。但对于前者,我们人类还一无所知,连理论方向都没有,更不要说模拟了。

AlphaGo利用两个大脑赢了李世石

AlphaGo是通过两个不同神经网络“大脑”合作来改进下棋。这些大脑是多层神经网络跟那些Google图片搜索引擎识别图片在结构上是相似的。它们从多层启发式二维过滤器开始,去处理围棋棋盘的定位,就像图片分类器网络处理图片一样。经过过滤,13 个完全连接的神经网络层产生对它们看到的局面判断。这些层能够做分类和逻辑推理。

\

这些网络通过反复训练来检查结果,再去校对调整参数,去让下次执行更好。这个处理器有大量的随机性元素,所以我们是不可能精确知道网络是如何“思考”的,但更多的训练后能让它进化到更好。

第一大脑: 落子选择器 (Move Picker)

AlphaGo的第一个神经网络大脑是“监督学习的策略网络(Policy Network)” ,观察棋盘布局企图找到最佳的下一步。事实上,它预测每一个合法下一步的最佳概率,那么最前面猜测的就是那个概率最高的。你可以理解成“落子选择器”。

\
落子选择器是怎么看到棋盘的?数字表示最强人类选手会下在哪些地方的可能。

团队通过在KGS(网络围棋对战平台)上最强人类对手,百万级的对弈落子去训练大脑。这就是AlphaGo最像人的地方,目标是去学习那些顶尖高手的妙手。这个不是为了去下赢,而是去找一个跟人类高手同样的下一步落子。AlphaGo落子选择器能正确符合57%的人类高手。(不符合的不是意味着错误,有可能人类自己犯的失误)

更强的落子选择器

AlphaGo系统事实上需要两个额外落子选择器的大脑。一个是“强化学习的策略网络(Policy Network)”,通过百万级额外的模拟局来完成。你可以称之为更强的。比起基本的训练,只是教网络去模仿单一人类的落子,高级的训练会与每一个模拟棋局下到底,教网络最可能赢的下一手。Sliver团队通过更强的落子选择器总结了百万级训练棋局,比他们之前版本又迭代了不少。

单单用这种落子选择器就已经是强大的对手了,可以到业余棋手的水平,或者说跟之前最强的围棋AI媲美。这里重点是这种落子选择器不会去“读”。它就是简单审视从单一棋盘位置,再提出从那个位置分析出来的落子。它不会去模拟任何未来的走法。这展示了简单的深度神经网络学习的力量。

更快的落子选择器

AlphaGo当然团队没有在这里止步。下面我会阐述是如何将阅读能力赋予AI的。为了做到这一点,他们需要更快版本的落子选择器大脑。越强的版本在耗时上越久-为了产生一个不错的落子也足够快了,但“阅读结构”需要去检查几千种落子可能性才能做决定。

Silver团队建立简单的落子选择器去做出“快速阅读”的版本,他们称之为“滚动网络”。简单版本是不会看整个19*19的棋盘,但会在对手之前下的和新下的棋子中考虑,观察一个更小的窗口。去掉部分落子选择器大脑会损失一些实力,但轻量级版本能够比之前快1000倍,这让“阅读结构”成了可能。

第二大脑:棋局评估器 (Position Evaluator)

AlphaGo的第二个大脑相对于落子选择器是回答另一个问题。不是去猜测具体下一步,它预测每一个棋手赢棋的可能,在给定棋子位置情况下。这“局面评估器”就是论文中提到的“价值网络(Value Network)”,通过整体局面判断来辅助落子选择器。这个判断仅仅是大概的,但对于阅读速度提高很有帮助。通过分类潜在的未来局面的“好”与“坏”,AlphaGo能够决定是否通过特殊变种去深入阅读。如果局面评估器说这个特殊变种不行,那么AI就跳过阅读在这一条线上的任何更多落子。

\
局面评估器是怎么看这个棋盘的。深蓝色表示下一步有利于赢棋的位置。

局面评估器也通过百万级别的棋局做训练。Silver团队通过 复制两个AlphaGo的最强落子选择器,精心挑选随机样本创造了这些局面。这里AI 落子选择器在高效创建大规模数据集去训练局面评估器是非常有价值的。这种落子选择器让大家去模拟继续往下走的很多可能,从任意给定棋盘局面去猜测大致的双方赢棋概率。而人类的棋局还不够多恐怕难以完成这种训练。

增加阅读

这里做了三个版本的落子选择大脑,加上局面评估大脑,AlphaGo可以有效去阅读未来走法和步骤了。阅读跟大多数围棋AI一样,通过蒙特卡洛树搜索(MCTS)算法来完成。但AlphaGo比其他AI都要聪明,能够更加智能的猜测哪个变种去探测,需要多深去探测。

\
蒙特卡洛树搜索算法

如果拥有无限的计算能力,MCTS可以理论上去计算最佳落子通过探索每一局的可能步骤。但未来走法的搜索空间对于围棋来说太大了(大到比我们认知宇宙里的粒子还多),实际上AI没有办法探索每一个可能的变种。MCTS做法比其他AI有多好的原因是在识别有利的变种,这样可以跳过一些不利的。

Silver团队让AlphaGo装上MCTS系统的模块,这种框架让设计者去嵌入不同的功能去评估变种。最后马力全开的AlphaGo系统按如下方式使用了所有这些大脑。

1. 从当前的棋盘布局,选择哪些下一步的可能性。他们用基础的落子选择器大脑(他们尝试使用更强的版本,但事实上让AlphaGo更弱,因为这没有让MCTS提供更广阔的选择空间)。它集中在“明显最好”的落子而不是阅读很多,而不是再去选择也许对后来有利的下法。

2. 对于每一个可能的落子,评估质量有两种方式:要么用棋盘上局面评估器在落子后,要么运行更深入蒙特卡罗模拟器(滚动)去思考未来的落子,使用快速阅读的落子选择器去提高搜索速度。AlphaGo使用简单参数,“混合相关系数”,将每一个猜测取权重。最大马力的AlphaGo使用 50/50的混合比,使用局面评估器和模拟化滚动去做平衡判断。

这篇论文包含一个随着他们使用插件的不同,AlphaGo的能力变化和上述步骤的模拟。仅使用独立大脑,AlphaGo跟最好的计算机围棋AI差不多强,但当使用这些综合手段,就可能到达职业人类选手水平。

\
AlphaGo的能力变化与MCTS的插件是否使用有关

这篇论文还详细讲了一些工程优化:分布式计算,网络计算机去提升MCTS速度,但这些都没有改变基础算法。这些算法部中分精确,部分近似。在特别情况下,AlphaGo通过更强的计算能力变的更强,但计算单元的提升率随着性能变强而减缓。

然而,AlphaGo还远不是真正的人工智能

AlphaGo获胜,让很多人心里更加惶恐,不久的未来,机器人是否就会取代大部分人类的工作,甚至会统治人类呢?从AlphaGo目前的水平来看,这是不可能的,先给大家一个安心的结论,AlphaGo还远不是真正的人工智能,也没有诞生真正的智能,会下围棋跟诞生智能是两码事情,下棋很厉害的人工智能跟真正的类人智能AI也是两码事情。

重新回到这场备受瞩目的人机大战,让我们来好好分析一下AlphaGo到底是怎么下棋的。

首先,自我对弈几千万局得出阿尔法狗面对李世石可以秒落子,这个并不严谨。AlphaGo只是个引擎,它的那几千万局自我对局训练跟这次下棋比赛是完全不同的。训练的时候AlphaGo是连接着全球最豪华的谷歌云网络数据、云计算网络,有数千台服务器来协助它进行对局训练,以达到快速提升的目的。而这次比赛中AlphaGo是被禁止联网以防止作|弊,纯粹依靠自身来应对局面。显然这二者进行时它的运算能力是完全不同的,实际上AlphaGo也并没有出现所谓的秒落子的情况,当然它计算所花的时间是极短的着是毫无疑问的。

其次,秒落子这件事本身并没有多么可怕,这个是建立在计算机强大的计算性能上的,与AI的智能程度也没多大关系。围棋的规矩摆在那里,就算李世石落一子,电脑跟着秒落子。然后呢?然后他还是要等李世石落下一子之后它才能接着下,不存在说不给李世石思考的时间。就算你是秒下,人家并不是,围棋是回合制,你再快下完了也得等人家接了才能走下一步。

从实际来看也是如此。至于消耗的时间本身也不难理解,硬件性能和算法本身都有个局限性在那里,所以对于计算机来说,它既可以可以秒下,也可以计算无限长的时间。

举个例子,如果是给一道数学计算题,要人和电脑算结果。人要算十分钟,计算机一秒不到就够了,这是确确实实计算能力的差距,因为这道题结果是唯一的,是有标准答案的。但围棋不同,不存在你一秒钟找到了个最优解,因为本来就无所谓最优解,后续有无穷的变化。花费的时间短,只是计算考虑的情况就越少。当然花费的时间多,算得越多,也不代表就越正确。

所以这个思考时间说明不了什么,这里本来就是机器的长处所在,算得比人类快很正常。如果算的时间长也只能说明它计算得更详细更复杂以力图寻求更好的可能,也属正常。

所以说,AlphaGo所谓的“思考”,本质上还是跟人类棋手一样的。只是在模拟和预测之后棋局的变化,这跟我们所说的超级人工智能的思想有本质区别。这里是超级电脑在专业领域战胜人类的问题,那是类似著名的“故意不通过图灵测试”的AI人性化问题。

从这个比赛,目前只能看出AlphaGo下棋厉害,而没看出来它多么像人。它目前没有什么违反常理的行为,它体现出来的强大是在纯凭逻辑分析推算的能力上强大无比,但是其原理并非类人人工智能,并没有表现出感情,它仍是冰冷的机器。它获胜了,也就获胜了,没有自己给自己断个电来压压惊。

注意——人工智能逻辑分析和计算决策等能力变得比人类厉害,和人工智能变得更像一个真正的人类,这二者是有区别的。AlphaGo显然不属于后者的情况,它的诞生和发展是并不是为了变得更像一个真人,而是承担着在计算机擅长的领域代替人类完成那些受限于人脑计算能力所不能解决的运算决策问题的重任。它下棋已经足够优秀,但是离广泛实用的计算平台还差得远。但是毕竟是巨大的进步,它的未来是作为人类的助理,去处理那些纯逻辑分析的问题;而不是作为人类的伙伴,来跟你交流对话。

所以,AlphaGo目前还只是个下棋机器而已。棋手跟它下棋与跟人下棋也是不同的。下棋本身也是一种交流,这个很多大师都讲过,稍微对围棋文化了解的人也都知道。围棋的魅力绝不仅仅在于计算。对局也是一种交流,棋手的性格、心态也会影响落子的判断,对于对手的心态、性格的估计也会计入对局的考量,这并非纯理性思考的竞赛,这也是围棋比赛和棋手实力的一部分。然而在AlphaGo面前这些都不存在,它无所畏惧也不会紧张。李世石也不需要去考虑AlphaGo有什么想法。这是比下棋,并不是比画画或者写诗。

所以这压根不能算是个讨论AI是否真正诞生智能的例子,我们也无需担忧。AlphaGo代表的是另一个领域的显著进步,代表的是未来全新的前景。但就像李开复所说的一样,我们真正要担心的,是这些繁琐的计算和思考都可以由电脑来完成之后,当脏活累活都可以被机器代替之后,人类会不会变得不思进取,无所事事而开始堕落放纵。

李开复表示,AlphaGo虽然很厉害,但是说白了其实还是一个聪明的机器,拥有高速的思考和运算能力,会帮助我们在购买股票、医疗等领域有很好的帮助。不过机器终归没有情感,只是人类工具而已,所以我们主要需要利用人工智能创造更大的商业和科技价值。

关键词:AlphaGo机器人