您现在的位置:首页 >> IT >> 正文
未来的人工智能会不会像 AlphaGo一样“抽风”?
发表时间:2016年3月23日 21:44 来源:新科技 责任编辑:编 辑:麒麟

——我们找旷视科技的深度学习专家聊了聊

  尽管人类棋手和AlphaGo的世纪大战已告一段落,但必须承认,它确实改变了许多人对于 AI 的传统观念。除了原先那个经典的话题 “ AI 会不会统治人类 ” 以外,现在又有人增加了一个新的话题,“ AI 会不会像AlphaGo一样抽风?”。

  毕竟,我们有目共睹,在前面三局里,尽管AlphaGo表现绝佳,但是第四盘第五盘却频出问题,水平在极高和极低之间上下跳跃。而且谷歌的工程师似乎还对此没有办法。想一想,这种 “ 抽风 ”确实挺恐怖的 —— 这毕竟是下围棋,可是要是AlphaGo在金融上面,又或者用在战争上呢?倘若真的突然下的不是棋,而是核弹的话,人类的文明就真的要成了一个笑话了。

  为了对付这个问题,我们专门去找了一位专业人士。他是旷视科技(Face++)的深度学习领域专家周舒畅。

  【PingWest】:最近AlphaGo和李世石的人机对弈以后,许多人对人工智能和深度学习产生了新的兴趣。那么,有时候我想问的就是,可能会出现一些高级的错误,但是没有想到会出现很多低级错误,为什么会发生这样的情况?

  【周舒畅】:首先我先把它的结构根据公开论文稍微的讲一下。AlphaGo不只是一个深度学习系统。它有深度学习,也有搜索,是这两者的结合。我们现在一块一块的来看。

  首先是深度学习部分。深度学习的现在最常见的分支叫做有监督学习。有监督学习的意思其实就是说,假如我是一个深度学习模型,我有许多带标准答案的卷子,我不停地试着做问题,做完后参考标准答案判分并针对性地修改模型。一开始模型可能什么都做不对,但做了很多次以后,模型的成功率逐渐就上来了。围棋的深度学习部分也是类似这样的。它看了很多棋谱,有一部分是以前人类的棋谱,另一部分就是它自己跟自己下的棋谱。通过利用已知的棋谱不断训练系统预测下一步怎么走,系统就能够像人一样,逐渐对一些情况作出自己的判断。

  但是深度学习有没有局限性?肯定有。就跟人的学习一样,有监督学习其实是依赖一种叫做泛化能力的机制,从已知推断到未知。比如说你见过一万只天鹅发现都是白的,然后你就推断出天鹅都是白的。但是这个时候你就有一个风险:比如说人们在埃及就发现一种黑天鹅,颠覆了之前的假设。AlphaGo的深度学习这块也可能在泛化能力这里出错。

  第二AlphaGo除了深度学习部分,还有一个搜索的部分。搜索的部分简单来说就是AlphaGo自己心里跟自己下棋,假设我走这一步,李世石会怎么下,我再接着应该怎么下。

  当然只推测一种可能性肯定不靠谱,所以AlphaGo可能会做多次推演。所以我们看到这里有两个随机性,一个是因为围棋下子的可能性很多,AlphaGo要选择哪几手作为重点方向来推演自己和李世石下面几步的攻防情况;第二个是推演几步后,要判断双方的得失,一般要靠随机投子到终局的方法来得到。这两部分都有随机性在里面,而只要有随机性,肯定也是会出错的。更何况AlphaGo可以被欺骗,比如李世石可以造出一种暗藏杀机的局面。比如第四局79手时发生的戏剧性的一幕,可能是李世石下了套,而AlphaGo误以为自己胜率70%,一直到87手时才醒悟过来。事实上,有可能之前它也被李世石骗过好几次,但是走了一步两步它就明白了,使得李世石赚到的好处不多。但是这次它被骗的步数非常多,最后就得输棋了。

  由于一些“错误”是随机性导致的,因此AlphaGo也有一点概率犯人们所谓的“低级”错误。

\

  (神之一手:李世石与Alphago对弈的第四局中,李世石下出的一手棋,在这步棋之后,Alphago突然失去了对局面的判断能力,最终崩溃输棋)

  【PingWest】:我看到一个说法说,这个跟图像识别有很大的关系,比如李世石的下法实际上把棋盘分成了若干块不相连接的非常复杂的图像,这样就造成了它在局部上的识别的困难。这种说法有没有道理呢?

  【周舒畅】:AlphaGo的图像识别部分,是把一张19×19的图片,也就是整个围棋棋盘当个图像丢进去处理。它可以通过对图像的处理对棋局有一个整体的把握,或者预测下一步走子。它用的网络叫做“卷积神经网络”,这个网络有个特性,就是它有一定的平移不变性,所以你可以认为它对局部也有很好的建模。同时因为AlphaGo的网络比较深,它实际在最后几层时每个点的值都与整个棋盘有关,所以对整体也有把握。

  可以认为,AlphaGo的图像识别部分是它的“眼睛”。“眼睛”看到棋盘以后,它可以有一个感觉,然后做一些直观的判断。但是这个直观判断的目的,是辅助后面它的搜索的部分。你可以认为它的搜索的部分是它的逻辑。这两个部分到底在哪儿出错,其实是不容易分析的。

  但是我们从人类怎么给它制造困难的角度,可以有两种影响AI的办法一是比如说刚才说的,你可以想办法让局面看上去很像你要输的样子,AlphaGo可能就会受你误导,这可以说欺骗了图像识别部分。第二部分就是说你可以让它的搜索树特别长,搜索空间特别大,从而使它难以做出正确的判断。其实Google也考虑了这个问题,比如论文里提到对围棋中某些人类掌握固定应对的情况,如“征子”和“打劫”等情况做了特殊处理。如果不做的话,AlphaGo可能就不停地想这些东西。这就把它有用的搜索的时间给耗掉。把棋盘各块之间的复杂可以增加AlphaGo搜索的难度,但是对人类也可能造成同样的困难。

  但是回到开始的话题,AlphaGo第四局输了究竟是因为哪个部分受到欺骗?现在还是不确定的,因为AlphaGo是两个东西相结合。

  此外还可能有其他原因,比如AlphaGo在之前可能没有碰到自己胜率很低的情况,但是在第87步以后,它突然发现李世石的胜率很高,自己的胜率很低,这个可能是它之前没有碰到过的情况,所以它就开始出现混乱。

\

  (深度学习的简单示意图:如何识别人和猫咪)

  【PingWest】:所以这牵扯到另外一个大家也是挺关心的问题,就是说深度学习在我们的印象中,一般人的参与是比较少的,大部分都是由机器自己执行。这样的话它可能产生一些BUG我们也不知道,如果它真正产生一些BUG,这个BUG出现了,我们也没有办法改变电脑内部已经学习完成的逻辑,这个时候应该怎么办呢?

  【周舒畅】:首先深度学习还是有一些人能操控的参数,可以直接调整。另外即便是自动学习形成的参数,你也有可能用一些方法间接的影响它。

  怎么间接影响呢?比如说你忽然发现一个bug是说,AlphaGo在局面不利的情况下,它应对得很差。这个时候你其实可以给它一些针对性的训练,特别是利用AlphaGo强化学习的部分。比如说可以随机挑一个AlphaGo与李世石对弈的局面,盲目的往上面多放几个子,使得局面失衡,然后让 AlphaGo自己跟自己下。这样的话AlphaGo就能强化自己应付这种不均衡对局的能力。然后可能第二天李世石面对的就是一个用这些“造”的数据训练后的打过硬仗的AlphaGo,情况就不一样了。

  【PingWest】:也就是说实际上,我们只能通过这种测试的方法才能知道它背后的逻辑是什么,但是人无法预料到所有的情况,那么人工智能推广出来以后会用在关键领域,比如它去用来作手术,如果那时候再出BUG,那不就可能会造成病人生命危险?

  【周舒畅】:不同的应用领域对安全性和可预测性的要求是不一样的。AlphaGo是一个下棋的系统,给它设定的目标是赢棋。而赢棋有一些一般性的要求,比如要算的快,和搜索空间大。因此训练得到的系统为了提高胜率,在策略上可能它不保守,而是比较激进的。因为即便它下输了,也不是一个非常可怕的事情。但是假如这个系统是被训练来控制直升飞机的呢?它就会用一个非常保守的策略兜底。这造成的结果肯定就会不同。

  而且,如果你用神经网络做一件安全系数要求高的事情,一般都会有一步叫做“跳到人工”。就是说AI系统可能自动解决了99.9%的问题,但是有 0.1%的问题AI拿不准,比如识别犯罪嫌疑人时AI发现置信度不高不低,而漏过的后果又很严重时,那AI系统里可以放进一条规则,在这种情况下让人工介入。这是一种现实中常用的处理方法。

  当然,这其实也无法完全避免所有的BUG,但是任何东西都是有比较的。比如说自动驾驶,假设一个AI系统自动驾驶的车出事故了,是不是就能说自动驾驶不好呢?这里不能忽略的是,其实人可能更容易出错误,人会有各种情绪波动等等,人的视觉系统能力有限,人的反应时间不短,综合起来比一个装激光雷达和自带安全冗余的自动驾驶系统可能更容易出错。所以这里要对比的是用AI自动驾驶车时,和人类驾驶车时的事故率。如果用了AI自动驾驶以后,能把事故率降低到人类驾驶时的事故率的百分之一,这个时候从统计上算,就绝对应该不让人来开车,而是用一个自动驾驶的系统来开车了。

\

  谷歌的无人驾驶汽车

  【PingWest】:还有一个担心,会不会有人利用这样的BUG搞漏洞攻击,像李世石欺骗了AlphaGo一样。

  【周舒畅】:这还是跟刚才说的一样,被欺骗也是一种BUG,和别的种类BUG并无本质的不同。人也会被人欺骗,所以要比的就是AI被一个人欺骗的概率和一个人被人欺骗的概率。只要AI被欺骗的概率低于人被欺骗的概率,就应该更相信AI。

  此外,有的AI系统,特别是基于深度学习的系统有一个额外的好处,有助于减少被攻击的漏洞。有一个一般规律:一个系统越复杂,容易被人找到漏洞的可能性就越大。而现在很多的深度学习系统是非常简明的:输入端进信号,输出端直接出结果。中间的计算可能就是一些矩阵乘,非常规则,因此出现软件错误的概率也大幅降低。当测试集允许时,也能增强对系统的信心。

  除了以上,还有一些传统的提高安全性的手段也可以适用于深度学习系统。比如提高冗余度。比如说我一个神经网络预测可能出错,但是我可以再构造两个神经网络,互相长得不大一样,但是都预测同一个东西,最后一起投票,这样又能把出错的概率降低。这是一个比较有意思的提高安全性的方向,也就是利用深度学习本身的特点来提高安全性。

  【PingWest】:按照您的说法好像就挺明白了。但是我觉得可能很多人担心,因为我们没有办法理解这个机器深度学习的过程,都没有办法理解这中间到底发生了什么,它是一个什么样的逻辑,这个学习过程,是真的无法去了解吗,真的是一个黑盒吗?

  【周舒畅】:这种心理可以理解。好比你让一个人干一个事情,如果他最后就给你一个结果,别的什么都没有,这会让你很心虚,因为你不知道他怎么得到结果的。现在有很多研究在尝试,尽量把深度学习系统的推理过程中的一些中间结果暴露出来,相当于形成一系列的中间结果的报告,来提高结果的可信度。

  比如说假如我现在做了一个人脸识别系统,可以识别出这个人是谁,比如是不是李世石。现在如果我觉得只有一个最后的结果不够,我可以让深度学习系统同时给出一个置信度。然后我还可以让系统给出更多的东西,比如这个人的性别、年龄。这相当于我让系统识别一张李世石的照片时,我不停地问它一些问题。可能系统会告诉你说,首先照片里某个框里有个人脸,从脸看那个人是男的,他是大概几岁到几岁,长相像东亚人。如果这些信息准确,比如系统给出的人脸框位置非常精确,就可以确定最后的识别结果确实是从那张脸生成的,从而为最后的识别结果增加可信性。

  【PingWest】:这个事情发生以后,咱们国内的人工智能和深度学习领域的人怎么看待这个事情?你们内部群里面会怎么说这个事情?

  【周舒畅】:我们自己有一个评估,这事在几个方面都有里程碑的意义。第一个,19×19的棋盘有非常复杂的变化,而这次卷积神经网络被证明能在处理这么复杂的变化上达到跟人脑相当,或者超过人脑的性能,这刷新了我们对深度学习系统的能力的认识。

  第二方面,基于深度学习系统构建应用的时候,有一个非常关键的事情,就是需要很多的训练数据。这次AlphaGo中的强化学习部分相当于提供了一种自我对弈造数据的思路。如果我们能在别的问题上创造这种自己跟自己下棋的局面并获得大量的数据,那将是一个非常有意思的方向。

  第三点,我们一般认为搜索是跟现在深度学习所做的事儿是比较独立的。原因是,深度学习系统一般是给定一个输入,然后就输出一个结果,但是一般不会出现遍历各种情况、剪枝等过程。而搜索之前一般为了速度,都用的很简单的模型。AlphaGo这次的成功,实际证明了搜索和深度学习的互补性和超加性,这就又提供了一种思路。

  【PingWest】:所以旷视科技(Face++)现在的状况怎么样?您从事的领域又发展如何呢?

  【周舒畅】:旷视科技(Face++)的应用是机器视觉为主,其中人脸相关的应用为一大块,图像和视频的结构化是另一大块。现在我带的组从事的是图像中人脸以外物体的识别。比如我们现在重头是把自然场景中的文字,比如你现在走在街上看到的那些文字信息给提取出来,并准确识别。旷视去年开始在ICDAR国际会议举办的几个公开竞赛上做到文字端到端识别性能世界第一。我们现在正在加紧把其中的技术产品化,并应用到各个领域。

  【PingWest】:这个跟传统我们熟知的OCR的区别是什么?

  【周舒畅】:一般的OCR是这样:它只能识别一个纸张上面标准的印刷字。传统OCR要准确必须有很多条件限制,比如平整度,光线等等。但是自然场景中的文字识别比这复杂的多,相当于哪里看的到字就处理哪里。你想真实环境多复杂?可能会有雾霾造成模糊不清,可能有一个树挡在你和字之间,这个时候你怎么把这些干扰处理掉,最后得到一个对人有用的信息,就是一个全新的挑战。可以认为,自然场景里面的文字识别达到人类水平,是文字识别里面的王冠了。

  我们在一步一步向王冠进行,在这个过程中一些技术已经成熟了,比如说现在我们可以不用扫描仪处理身份证和银行卡等。其中一些产品,已经整合在旷视科技(Face++)的“在线身份验证”的服务中了。网址是faceid.com。

  【PingWest】:但字跟老虎什么的不同,这是个很模糊的符号,有时候我们觉得像字的都不一定是字,它可能会有各种各样的书写方式,有各种字体,像这样的问题是怎么解决的呢?

  【周舒畅】:深度学习系统的意义就在这儿。比如你拍了一张照片,上面有一个北字,你回去就拿这一张照片去给系统学习,然后它以后就能认识这个北字。但是你在训练它的时候不但可以把原图给它,还可以把图片转几个角度再给它,同时告诉系统这几张图里的字也是“北”。如果深度学习系统能够在这些情况也认出了“北”字,你可以认为系统学到了一个概念叫做部分的旋转不变性。也就是说,系统认为一个字即使左转15度、右转15度,也还是这个字。通过这种数据增广的方法,可以让深度学习系统具有处理各种畸变、噪声、遮挡、污损等等这些的能力。

  【PingWest】:那么除了这个部分以外,旷视科技(Face++)今年还会推出哪些产品?

  【周舒畅】:这个请忆楠来回答。

  【谢忆楠( 旷视科技商务总监)】:今年旷视的发展主要会集中在两点,第一点就是基础人工智能开放平台,也就是我们原有Face++平台下面更基础的平台,我们有一个测试对比,我们的性能比Google的Tensorflow高了不少,有些原因是Google开放的还没有支持分布式,但我们觉得这种平台式发展是一大趋势,也会推进人工智能深入的与各行各业结合,而第二点就是我们的智能技术已经与智能机器人、智能硬件开始结合,去年旷视科技推出了第一款用于安防的智能摄像头,是结合了智能技术和传统监控级别摄像头,今年将会有更多这样的产品推出,而与机器人无人机的植入尝试也从去年就开始,但具体进展还是等我们第一个产品出来再具体公布。

相关文章
关于我们 | 联系我们 | 友情链接 | 版权声明
新科技网络【京ICP备15027068号】
Copyright © 2015 Hnetn.com, All Right Reserved
版权所有 新科技网络
本站郑重声明:本站所载文章、数据仅供参考,使用前请核实,风险自负。