人工智能:能懂编译语言才智能

  • 来源:信息化文摘
  • 关键字:人工智能
  • 发布时间:2017-01-01 16:41

  “60年前的那个夏天,麻省理工学院(MIT)几个计算机系的教授,在一个相对轻松的环境中第一次提到了人工智能这个词。那时候,他们以为,人工智能问题用一个夏天的时间就足够了,就可以解决了。但事实上,这个问题不仅一个夏天没有解决,连续几十年、半个世纪的时间,人工智能都是一个没有被解决的问题。”8月25日,在2016亚布力中国企业家论坛夏季峰会上,百度创始人、董事长兼CEO李彦宏说。“互联网的下一幕就是人工智能的时代。”

  近期出版的《MIT技术评论》更是为我们画了一张未来人工智能造福人类的“大饼”:我们乘坐的交通工具将全部用人工智能来制造;我们吃的食物将完全由人工智能来生产,我们生活中所用的每一个电器也将充斥着人工智能的影子……未来人工智能将无处不在,将与我们的生活密切相关,将为我们的生活提供各种便捷。

  然而,理想丰满,现实骨感。摆在各国科学家面前的一个现实是:现如今我们还不知道该如何编译能让机器完全理解的语言,而这将成为研究人工智能技术的“绊脚石”。

  AlphaGo获胜:人工智能比人类智能更聪明?

  在韩国首尔举行的韩国围棋国手李世石与谷歌人工智能AlphaGo的那场扣人心弦的比赛中,这个人工智能程序走了一步神秘的棋证明了其高于人类智能的优势。

  当围棋对弈下到第37步时,AlphaGo选择将黑色棋子放在了一个看似荒诞的位置。我们知道,在一场围棋比赛中一个微妙的错误可能就意味着丧失对整盘棋局的控制。AlphaGo的这一步棋看起来明显是要放弃棋局上的大量领地。两家电视频道的现场评论员都怀疑自己是否把这步棋看错了,甚至还怀疑机器人AlphaGo出了故障。实际上,AlphaGo这一步大智若愚的棋正是要帮助自己奠定了控制整盘棋局的基础。谷歌这套程序正是利用这史无前例的一招顺利获得了对弈的胜利。

  具有悠久历史的围棋一直被看成是与选手直觉能力的比拼。AlphaGo的获胜令人特别钦佩。其实围棋的规则特别简单,参赛双方在一个画有垂直交叉平行线形成的交叉点棋板上轮流放黑白两色棋,与此同时,设法围困对手的区域最终让对手失去领地。然而,要想把这项活动玩得非常好着实非常困难。

  在象棋比赛中,选手往往可以提前预判对手所要下棋的位置。但是在围棋比赛中,提前预测对手下棋的位置是几乎不可能的。因为比赛很可能会进入一筹莫展的阶段,而且围棋几乎没有经典的棋谱套路可言。

  AlphaGo压根就没有被告知应该如何玩围棋。相反,这个程序分析了数十万场的围棋比赛,并且与程序自身对弈了大概成千上万场的围棋。AlphaGo的主要工作原理是“深度学习”。“深度学习”是指一层神经网络把大量的矩阵数字输入,通过非线性激活方法取权重,再产生另一个数据集合输出,通过合适的矩阵数量,多层组织链接一起,形成神经网络“大脑”进行精准复杂的处理。这个程序通过数个小时的练习来训练自身,渐渐形成自己的策略思维方式。AlphaGo能够打败世界上最厉害的围棋选手无疑被看成人工智能的里程碑。

  近十年,人工智能所经历的各种挫折与失望,常常让人们认为,人工智能的发展已经进入了“寒冬”时期,然而AlphaGo的意外胜利,却足以证明近十几年来人类在人工智能方面取得的辉煌成就。深度学习在过去一直被看作是人类独特的智能,深度学习意味着机器可以通过自我指导的方式来学习如何解决复杂任务。自动驾驶汽车很有可能成为现实。在不久的将来,以深度学习为基础的系统很有可能会帮助人们诊断疾病并相应地为我们推荐治疗方案。

  然而,除却这些鼓舞人心的进步外,至今人工智能仍不具备理解语言这一基本能力。苹果的Siri语音个人助理服务系统,以及IBM的Watson电脑系统都只能识别简单的口述或者手输命令并且进行基本问题的回答,这些系统无法进行有效的人机交流,更无法真正理解他们所用的语言。如果人工智能要取得长远发展,这一点必须得到改善。

  不能理解语言,人工智能的影响非常有限

  也许使AlphaGo能够赢取围棋比赛的相同技术,最终会使得计算机掌握语言或者其他一些需要的技术。但是没有对语言的理解,人工智能的影响将会大不相同。当然,我们仍然拥有一些像AlphaGo那样无比强大和智能的软件,但是我们与人工智能的关系将不会那么协调,甚至会有一些不和谐。斯坦福大学名誉教授特里·威诺格拉德认为,假使我们拥有一些智能的东西,而这些智能的东西与我们人类有很大的不同会发生些什么呢?可以想象一下,我们的世界运行将不再以人类智能为基础,而是依靠大数据。

  早在1968年,维诺格拉德就曾在研究机器该如何进行智能交谈这一方面进行着最初的努力。作为数学神童的他由于沉迷于语言,所以选择去麻省理工学院的新人工智能实验室攻读自己的博士学位,同时他决定建设一套可以通过文本提示来运用日常用语与人类进行交谈的程序。在那时,这一切看起来不像是一些奇怪想法。毕竟令人难以想象的进步都离不开人工智能,甚至还有一些在麻省理工学院的人正在尝试着建立复杂的电脑视觉系统以及机器人手臂。

  然而,并不是每个人都相信语言可以被轻轻松松地掌握。包括颇有影响力的语言学家、麻省理工学院教授诺姆·乔姆斯基在内的批评人士都认为,人工智能研究者很难让机器理解人类语言,因为人类语言的结构难以理解。

  但我们也有理由对前途保持乐观。麻省理工学院德裔教授约瑟夫·魏泽堡就曾在早些年建造了第一个聊天机器人程序。这款叫伊莉莎的程序更像是一个卡通心理治疗师,它不断重复着关键部分的语言或者通过提问来进行进一步的谈话。如果你告诉程序你非常生妈妈的气,该程序会立刻告诉你:“当你想到自己的妈妈时还有什么东西涌上了自己的心头?”虽然这仅是一款廉价程序,但它却运行的相当好。

  维诺格拉德想研发一种可以理解人类语言的机器。他创建了一个简单的虚拟环境,一个由少数几个假想对象坐在一起的虚拟“模块世界”。然后他创建了一个名叫SHRDLU的项目,SHRDLU能够解析所有的名词、动词以及一些在这种简单虚拟世界需要的简单语法规则。SHRDLU可以描述对象,并回答他们的关联问题,通过回应输入的命令来改变模块世界。它甚至有记忆能力,如果你告诉它移动“红色圆锥”,它就会紧接着指向“圆锥”,它将会分辨出你要选择的是红色而不是其他颜色。

  SHRDLU代表了人工智能领域的最新进展。然而这只是一种错觉而已。尤其当维诺格拉德想要试图使程序的模块世界变得更大、以便规则能够解释必要的词汇和复杂的语法时,这套系统变得难以管理。几年后,他放弃了,最终他完全放弃了人工智能的研究而专注于其他领域。

  神经网络终将推动机器智能发展

  就此,维诺格拉德得出结论:不可能利用现有工具让机器真正理解语言。正如加州大学伯克利分校的哲学教授休伯特·德雷福斯1972年在一本《计算机不能做什么》的书中提出了一个问题:人类在做很多事情时都需要一种直觉智能,这种直觉智能很难被明确易懂的规则进行捕获。这正是在李世石与AlphaGo比赛之前许多专家都对机器可以掌控围棋这一说法产生怀疑的原因。

  即便是德雷福斯持这种观点,许多研究者仍发现了一种方法,通过这种方法可以最终赋予机器这种直觉智能。由于从神经学科获取了些许灵感,他们尝试通过一层神经网络把大量矩阵数字作为输入,通过非线性激活方法取权重,再产生另一个数据集合作为输出,然后通过合适的矩阵数量,多层组织链接一起,形成神经网络“大脑”进行精准复杂的处理。开始时,这些系统运行异常缓慢而且在逻辑与推理上这种方法都不切实际。支持者坚持认为,神经网络将最终让机器做得更多。也许未来的某天,这项技术将会理解语言。

  在过去的几年中,神经网络已变得相当复杂和强大。这种方法已经在关键数学方法论的改进中获益匪浅,而且还得益于更快的计算机硬件以及大量的数据。到2009年,多伦多大学的研究者已经表明,多层深度学习网络可以准确识别语音记录。在2012年,相同的课题组在计算机视觉大赛中通过运用精确地深度学习的算法获得了竞赛的胜利。

  通过使用一种简单的技巧,能够使得深度学习的神经网络识别图像。一层模拟神经元接收到输入图像的形式,随后一些密集的单个像素会做出回应。由此产生的信号在经过很多层相互连接的神经元到达一个输出层之前,相应的对象出现。凭借反向传播算法而出名的数学技术用来调整网络中神经元的灵敏度以便做出精确地回应,也就是这一步使得系统能够具有学习的能力。不同层内的网络将会对一些诸如边缘、颜色或者纹理的特征进行回应。这样的系统现在可以精确地识别物体、动物以及人的面容。

  在深度学习语言应用的过程中有一个明显的问题,语言的符号是任意的,它们与图像具有根本的不同。两个包含完全不同字母的词,它们的意思或许具有相似性,同一个词在不同的上下文中可能意味着不同的含义。

  二十世纪80年代,研究人员提出了能将语言转化为神经网络可以解决的问题类型这一想法。他们将单词表示成数学向量,使得相似的单词能够通过计算进行分析。比如,“船”和“水”尽管看起来有很大的差别,但二者在向量空间上相近。研究者们通过使用这一想法来建立网络,在这个网络中,每一个段落中的单词都可以用来构建一个复杂的表达。这种观点又被多伦多大学教授杰弗里·辛顿称为“思想向量”。

  通过运用这两种网络,可以使得两种语言在翻译上更加准确。通过将一种特定的识别对象与这种网络进行结合,可以解决一些看似似是而非的标注。

  教机器模仿人思考更是巨大挑战

  生活的意义是什么?这是我们曾经反复思索的问题,那作为人工智能的机器又是怎么来回答这个问题呢?

  谷歌公司研究员Quoc Le正考虑让机器可以进行一场得体的对话。Le这个想法正好说明机器的有用性。Le想运用机器来模仿人进行思考,一旦机器能模仿人的思考,人类才可以了解机器自己的想法。

  谷歌已经开始教他们的计算机学习基本语言。今年五月该公司发布了一项名为Parsey McPareface的新系统,这款系统可以依据语法来识别名词、动词和一些文本中的其他元素。不难看出有价值的语言理解对一个公司意味着什么。谷歌的搜索算法能够有效地根据关键词来搜索相应的网站。现在,使用一个叫RankBrain的系统,谷歌搜索可以通过读取页面上的文本来收集含义并给出最好的结果。Le想得更长远。在字幕翻译和图像采集这一过程中调整系统是非常有用的,Le和同事构建了智能答复以便读取Gmail信息中的内容并提供一些可能的回答。他还通过学习谷歌信息技术所支持的聊天日志创立了一个程序,以便来回答一些技术性问题。

  最近,Le建立了一个能够从容应对开放式问题的程序。这款程序搜集了大约18900篇视频的对话,其中一些回答看起来恰到好处。比如,Le会问:“生活的意义是什么?”随后程序会回答说:“就是让我们的生活更加美好。”Le认为,这款程序的回答结果出乎自己的预料。

  当看到许多系统的答案后,你会很快地发现一个问题。比如,当Le问道:“一只猫有几条腿?”时,系统会说:“我认为有四个。”然后Le又问:“蜈蚣有几条腿?”随后系统好奇地回答说:“八条。” 事实上,Le所设计的系统都不理解自己本身所说的话,它仅仅理解一些特定符号的组合,但是这在现实生活中并没有更深远的价值。这些系统甚至不知道蜈蚣到底长得什么样子、如何移动。它们仅仅是一种智能的解释,并没有人类所具有的常识。深度学习系统往往是靠不住的。谷歌所创建的图片标注只会制造奇怪的错误,就像把路标描述成满载食物的冰箱。

  巧合的是,特里·威诺格拉德在帕洛阿尔托的邻居正是一位可以加深计算机对语言深刻理解的人。斯坦福大学人工智能实验室主任李菲菲花费了她职业生涯的大部分时间来研究机器学习和计算机视觉。几年前,她曾领导建立一个拥有数百万计图像对象的数据库,并将每一个图像对象标注了一个关键字。但是李菲菲认为,计算机需要对世界上所发生的事情有一个更加深刻的理解。今年她和她的团队发布了另一个数据库图像,这个数据库中的图像将会拥有更加详细的注释。每个图像都相应地拥有一个人类所描述的符号,她希望机器学习系统将学会理解更多的物质世界。李认为,大脑中的语言部分能够通过视觉系统获取大量的信息,人工智能的一个重要组成部分将是整合这些系统。

  通过将对象、关系以及行为与词语进行联系,这是孩子们的学习方式。类比人类的学习方式是现在所能达到的最高水平。事实上,李认为现在的机器学习和人工智能工具不足以带来真正的人工智能。人工智能的研究者应该考虑更多诸如感情以及社会相关的智能。人类之所以伟大,不仅在于强大的数据分析能力,更在于伟大的抽象能力以及创造力。

  无论这些神经网络有多大,它们仍然缺少人类思想的重要组成部分。人类能从一个相对少量的数据中快速学习并且拥有一个内置三维建模能力。而语言是建立在一些更基本的能力之上的,这些能力可能是与生俱来的。

  语言和生活常识一起才能创造语言

  斯坦福大学心理学系诺亚·古德曼认为,语言是特殊的,因为它不仅依赖于大量的语言知识,还依赖于大量的生活常识,只有将二者进行有效结合才能创造出语言。

  古德曼和他的学生已经开发出一种叫Webppl的编程语言,这种语言可以用来给计算机提供概率性常识,这在谈话中非常有用。一个实验版本的编程语言可以理解双关语,另一种甚至可以应付夸张语句。但是比起真正的智能还差一些,但它为人工智能更逼真的交谈提供了一种新方法。如果它被告知一些人不得不在餐馆的餐桌前等到“永远”,这也许意味着这个人在吃饭时等待了很长时间,而且已经到了不耐烦的地步。

  同时,古德曼的举例也说明了一件事情,就是使机器理解语言是多么的困难。理解“永久”的语境意义是人工智能需要学习的东西,但也是一项基本的、简单的技能。

  尽管这项任务具有艰难性和复杂性,但是研究人员已经利用深度学习的技术实现了对图像的识别以及在与人类围棋对弈中取得胜利,这在很大程度上为我们在机器语言的发展起到突破作用。如果是这样,这些进步最终都会推动机器语言的发展。如果人工智能作为人类用来提高智慧以及促进相互信任的一个无处不在的工具,语言在这一过程中起着至关重要的作用。尤其是随着人工智能系统越来越多地使用深度学习以及其他技术,这一切又会显现出其重要性。

  麻省理工学院研究自动驾驶的教授约翰·伦纳德认为,深度学习是一项伟大的发明,但从另一方面来说,这些应用这一技术的机器又很难理解它们应用的技能。

  丰田公司为了研究一系列自动驾驶技术,已经在麻省理工学院发起了一项研究项目,该项目由人工智能以及编程语言专家杰拉尔德·苏斯曼领导,以实现开发的自动驾驶系统能够理解它们的每一个特定举动,而实现这一行为的方式就是通过对话。伦纳德认为,建造一个可以理解自己行为的系统是一个非常困难的问题,从观念上来说,这套系统不仅会给一个答案,更是在给一种诠释。

  谷歌DeepMind研究员、AlphaGo设计者大卫·席尔瓦在纽约一个学术会议上所做的关于与李世石对弈的发言认为,在第二局该程序那一步自杀式棋子下出后,该程序的设计者与其他人一样感到不可思议。设计者们唯一能做的就是预测AlphaGo获胜的几率,尽管走到了第37步棋,AlphaGo获胜的几率依然不大。直到比赛结束后几天,谷歌团队通过一个有用的分析发现,通过分析之前的比赛,该程序能通过极短的时间计算出对手下相同步的可能性。

  所以在某种程度上,这台机器知道李世石很可能会出现措手不及的情况。

  谷歌正考虑多种将技术进行商业化的选择,包括一些智能助手以及与医疗保健相关的工具。对于一些应用程序来说,人工智能非常重要。在医疗保健领域,了解一项决定为什么被制定非常重要。

  随着人工智能系统变得越来越复杂,如果没有一套合适的语言,我们将很难更好地利用人工智能。与机器进行毫不费力的沟通将会使机器在我们的日常生活中发挥更大的作用。毕竟,语言才是我们人类认识世界最强大的武器。

  摘自:科技日报

  文=姜靖

关注读览天下微信, 100万篇深度好文, 等你来看……