分享

让机器像人类一样思考:AI人工智能

 CCI16 2017-03-11

提起人工智能(Artificial Intelliegnce,AI),很多人会首先想起斯皮尔伯格导演的曾获2002年奥斯卡奖的科幻电影AI,在电影里一对夫妇领养了一个机器人作为自己的孩子,这个机器人可以像人一样思考,具有喜怒哀乐,在它的身上发生了许许多多的故事。这样的科幻情景离现实又有多远呢?我们不妨先从人工智能的起源谈起。

人工智能一直是人们的追求

在历史上,我们一直觉着智能不只是人类所独有的,可以像人类一样进行推理和学习的机器是完全可能被制造出来的,然而事情却不像想的那样简单。

什么是人工智能?

在百科全书上,人工智能的定义是“有关可以智能地工作的机器的科学和工程”。不过一个令人纠结的问题是:到底什么是智能?即便那些“不智能”的机器在很多时候已经比我们聪明了,比如普通的计算机程序可以将成千上万个数字相乘,可以记录下银行大量余额款项,这已经超出了普通人的能力,可是他们只是能够大量重复做同一件事情,而且给出了正确的结果而已,还称不上真正的“智能”。只有某些人类特有的能力,像认出一张熟悉的脸,指挥繁忙时段的交通或者学会一件乐器,才有资格称得上“智能”。

为什么让一台机器做这些事情这么难?这是因为,一般程序员在给电脑编写程序之前知道他想让电脑做的任务是什么,可是在人工智能领域我们要求电脑做正确的事情,可同时又不是很清楚事情到底是什么。比如我们让电脑去识别人脸,可是我们人类自己也不是完全清楚大脑在识别人脸的时候到底是怎么样工作的。

在现实世界中,我们要面对种种不确定性,比如你在做一件事情的时候,一个竞争对手突然出现,阻止你达到目标;你在驾车的时候,有时会转动方向盘改变车的方向,避免撞上其他的车,但是这样做是不是一定安全,只有天知道;或者正在完成一项任务的过程中,突然来了一条新消息,需要随机应变。一个人工智能的电脑程序不能仅仅按照既定的计划完成任务,需要处理类似上面这样的所有不确定性的情形。

为了模拟人类的智能,电脑程序不仅要模拟完成的任务本身,还要为这个任务所处的世界建立模型。他必须感知到周围环境的变化,并且做出反应,相应的改变和调整自己的行动。只有一台机器可以在不确定的条件下做出正确的决定,才称得上智能。

哲学起源

人工智能的概念在世界上第一台电脑出现之前的很多个世纪就已经初具端倪,亚里士多德提出的从假设得出结论的“三段论”就是一种机械式的逻辑推理方法。按照他的理论,我们可以这样进行论述:

前提:一些天鹅是白的;所有天鹅都是鸟

结论:有一些鸟是白的。

如果用符号来表示:

前提:一些S是W,所有的S都是B

结论:有一些B是W。

无论S,W,B代表什么,也就是说无论这句话中的词语具体是什么,我们都可以得到正确的结论。根据这样的构想,我们在没有完全知道人是怎么想问题的情况下,或许就可以建立出一套智能化的工作机制。

亚里斯多德的构想为探寻人工智能的本质奠定了基础。然而直到二十世纪中期,电脑才变得足够复杂,能够去真正测试一下这些构想。1948年英国布里斯托尔大学的研究人员Grey Walter制造了一些可以移动,可以感光,可以学习的机器乌龟。其中有一个叫Elsie的机器乌龟可以自动地对环境做出反应,比如当电池电量快耗尽的时候它就会自动地降低对光线的敏感度。这些复杂的行为使得这只机械乌龟看起来不仅仅是个机器人,而是像自然界的动物一样,会做出我们预料不到的举动。

在1950年,天才图灵提出,如果电脑和一个人可以谈话自如,我们应该“礼貌地”接受电脑可以思考的现实。

不过直到1956年,人工智能这个词语才正式被提出。在美国达特茅斯学院的一个暑期工作坊上,这个领域的早期创始者们共同提出了他们的愿景:如果学习的各种方式和智能各个侧面都可以从理论上进行精确描述,这样一台机器就可以模拟人的一切。按照这样的目标快速发展,似乎拥有真人一般智能的机器早晚会出现。

化整为零

在二十世纪六十年代的时候,人工智能研究人员满怀梦想,信心十足,觉着他们将会在几十年的时间内实现他们的目标,就像在航天领域从第一架喷气式飞机到人类登上月球也只用了30年。为什么人工智能不可以拥有这样火箭般的发展速度呢?

不过两者之间最大的不同之处在于,对于人工智能,我们找不到像F=ma和E=mc^2那样既简洁又决定一切的公式。到了八十年代,研究者意识到他们既没有足够硬件,也没有足够的知识来模拟人可以做的所有事情,于是整个领域分成了很多部分。以往研究者的共同的目标是制造一台拥有人类智慧的电脑,取而代之的是,研究者侧重于去研究这个宏大问题的某个侧面,比如语音识别,计算机视觉,概率推理,甚至仅仅是国际象棋这个小领域。

在每个领域内,研究者都取得了可喜的进步。在1997年,IBM“DeepBlue”电脑击败了国际象棋冠军卡斯帕罗夫。“DeepBlue”电脑在决定下一步怎么走棋的时候,在一秒的时间内就可以计算出两亿种不同的可能性。这使得电脑棋手可以在下一步棋之前事先推算出之后很多步棋可能出现的各种情况,来决定哪种局面是对自己最有利的。

DeepBlue”电脑可以在一项需要高度智能的游戏中取得引人瞩目的胜利,然而,这位“专家”的技能有点太单一了,除了赢得一场象棋比赛以外,它什么都不会做,既不能和别人讨论他在下棋的时候使用过的策略,也不能玩其他的游戏,它尽管赢了世界大师,但是没有人会把它错当作真人,它还仅仅是一台电脑。

人工智能的时间线:

1950年,图灵提出,经过编程的电子计算机可以像真人一样回答问题。

1956年,在美国达特茅斯学院的一个暑期工作坊上,这个领域的早期创始者们正式提出了“人工智能”这个词汇。

1958年,Allen Newell和Herbert Simon预测在十年内,电脑可以击败国际象棋世界冠军,不过在现实中这整整花了四十年。

1961年,电脑解决了大学一年级程度的微积分题目。

1965年,世界上第一个用于心理治疗的聊天机器人ELIZA,尝试着和人进行对话。

1967年,STUDENT程序成功地解决了用文字描述的一道大学程度的代数题目。

1973年,Freddy机器人通过视觉感知来定位和组装了模型。

1974年,随着政府资助机构减少了对于人工智能研究的拨款预算,人工智能寒冬到来。

1975年,斯坦福大学的Meta-DENDRAL程序发现关于分子的新规律,成果被发表在了美国化学学会的期刊上。

1980年,自动行驶的汽车在慕尼黑大学里以90公里/小时的速度行驶。

1988年,人工智能的主要形式变为基于不确定数据的概率推理,而不再是以往那样侧重于逻辑。

1989年,美国航天局(NASA)利用自动聚类的电脑程序发现以往未知的几类恒星。

1997年,IBM“DeepBlue”超级电脑击败了国际象棋冠军卡斯帕罗夫。

1998年,由Hasbro生产的第一个人工智能的宠物Furby开始在美国出售;美国航天局(NASA)第一次有了完全由电脑程序自动控制的飞行器。

2000年,Nomad机器人探索南极洲的偏远地区,采集气象观测样本。

2004年,一个电脑程序可以比一个专业级真人飞行员更快地学会操纵遥控直升机。

2007年,美国艾尔伯特大学的人工智能程序完全破解了西洋跳棋游戏。

2011年,苹果的语音识别软件Siri可以让用户和iPhone对话;iRobot公司出售第600万个Roomba吸尘器机器人。

2012年,Google翻译做的翻译总量已经超过了所有人类翻译者所做的总合。

2012年,通过10亿个连接,Google的人工智能神经网络可以去识别一些常见的物体,像人脸和猫。

日常生活中的AI

你或许没有意识到,其实你每天都在和AI人工智能打交道,它们在帮你选择手机通话线路,在审核你的信用卡交易,在过滤掉诈骗垃圾e-mail和自动管理你的基金进行股票交易。它们还可以在你的数码照片中识别出你的脸,或者你在玩视频游戏的时候识别你的手势,甚至可以帮助你的医生分析化验结果,这些常见的电脑程序其实都拥有真人一样的智能。

数据挖掘者

2011年,IBM公司向世界推出了Watson,一个可以理解用日常语言提出的问题,并且可以准确地给出答案的超级计算机。Watson拥有3000个联网在一起的处理器,每个处理器可以看作是一台小型的电脑,它们一共储存着几百万份文件,Watson可以随时抽出其中的一份来帮助回答任何问题。

IBM选择了在美国一个电视问答娱乐节目Jeopardy上让Watson这个计算巨人首次登场亮相,Jeopardy节目一向以提出“拐弯抹角”的问题而出名,有点像国内的开心辞典和幸运52。这个游戏可比国际象棋复杂的多,Watson不仅需要综合所有人类知识,还需要理解节目问题中的各种文字游戏。

在Watson在节目舞台上精彩表现的背后,人工智能的一个分支概率推理功不可没:这种推理可以在不完整的信息组合中提取出一幅完成的画面。在比赛开始前,大量的维基百科文字,网页和其他参考资料,以及以往Jeopardy节目的资料都被塞进了Watson的硬盘里。然后IBM的工程师们把Watson的电脑程序分成了100个小程序,每个小程序负责一个方面,比如一个程序会专门负责“著名作家”,另一个程序负责“食品”。当这些“各个领域的专家”搜索完了各自的数据库之后,Watson会综合这100个分程序的结果,选择出最有可能正确的答案。Watson曾经在电视节目中击败两位真人的冠军。

不过成为Jeopardy比赛的冠军并不是Watson的真正使命,IBM计划利用Watson完成一些更加严肃的任务,比如给医学、商业、农业这些领域提供时效性很强的关键信息。

行驶在公路上的AI

在通往拉斯维加斯的公路上,如果你看到一辆汽车上面有红色的车牌和无穷大符号,就要留意一下了,这可能是一辆无人驾驶的汽车。内华达州为无人驾驶汽车发放了第一张牌照。

在世界上其他地方,无人驾驶汽车也会火起来吗?应该说,到现在为止,驾驶还是一项仍旧由真人司机占据主导地位的任务,因为驾车虽然称不上很难,但其中有太多变量,比如正在接近你的车是以60公里每小时还是70公里每小时行驶?在角落里会不会还有一辆在你的视角之外的车?如果我想超过前面的车,前面车的司机会不会突然超速?诸如此类的问题还会有很多。

对于人工智能来说,在公路上无人驾驶汽车还不算是最难的任务,早在1994年,两辆无人驾驶汽车就曾经在环绕巴黎的公路上行驶了1000公里。但是如果让无人驾驶汽车在城市中穿行,任务一下子就变得困难很多,城市交通中很多不成文的规则会让AI汽车摸不到头脑。比如说,如果Google的研究者严格按照司机守则为AI汽车编写程序,在十字路口上一定要为其他汽车让路,他们会发现这台太过老实的无人驾驶汽车永远也没法走过这个路口。于是,他们对程序做了一点改进,当AI汽车等待了一段时间之后,就会自动缓慢向前移动,向其他汽车示意自己想要先走,而不只是傻傻地等待。

对于自动驾驶汽车还有一个不确定性是如何判断自己所处的位置,GPS卫星定位数据有时并不靠谱,误差会达到几米之多,AI汽车在使用GPS的同时,还会同时开启照相机、雷达和激光定位功能,共同帮助校正GPS的数据,不要让汽车越走越偏。这几项定位功能每一项都有自己的优缺点,都不是完全准确的,但是综合到一起就可以达到很高的精确度。

除了直接驾驶汽车以外,AI还可以自动调节汽车燃料进出,节约能源。作为前沿科技的自动驾驶汽车综合了人工智能很多方面的技术,越来越被人们所接受。通过特别许可,Google的自动驾驶汽车已经在完全无人控制的情况下,在加州的公路和街区中穿行了成千上万公里。美国佛罗里达州和加州已经通过立法允许自动驾驶汽车这种新型交通工具的使用,其他许多州也在积极讨论这一事宜。

垃圾邮件杀手

在如今的全世界的电子邮件中,每十封恐怕有九封都是垃圾邮件,如果这些垃圾邮件和正常邮件混在一起出现在你的收件夹里,恐怕没人再会用email了。能够把垃圾邮件从正常邮件中过滤出来的人工智能领域称为机器学习。正如名字里所说,垃圾邮件过滤器可以从环境中和从邮箱的主人怎样对待邮件中学习什么是好邮件和坏邮件。

要判断什么样的邮件才算是垃圾邮件,只要看一下每天email的使用者打开邮箱之后,把哪些邮件加上星号保留,把哪些邮件看也不看就直接删掉,这些举动为垃圾邮件过滤器提供了最好的参考。电脑程序会根据这些信息把每个邮件分解成很多个“特征”,一个特征可以是单个词,也可以是一个词组,邮件发送的时间,或者邮件是由哪一台电脑发送过来的。这些特征可以帮助电脑程序决定一封邮件是正常邮件还是垃圾邮件。比如说,一封邮件里包括了“最低价格”、“精心包装”这两个特征词组,而根据全球统计,这两个词组在垃圾邮件中出现的比率高达8%和3%,而在正常邮件中,它们出现的比例只有0.1%和0.3%。之后在假设这些词语出现的几率是独立的前提下,通过数学上的贝叶斯定律公式和上面两项特征的统计数据,计算出这封邮件是垃圾邮件的概率有99.9%之高。

垃圾邮件过滤器最重要的事情就是根据经验不断更新它使用的邮件判定模型。再好的垃圾邮件过滤器也会有犯错误的时候,可能放过坏邮件,也可能错杀好邮件,每当邮箱的主人把一封垃圾邮件箱里的邮件移回收件夹里或者在收件夹里点一下删除的时候,垃圾邮件过滤器会立刻更正自己的参数,做出新的改进,以提高识别邮件的准确率。对于编写垃圾邮件过滤器的程序员来说,他们并不需要一步一步地制定出繁琐的邮件判别标准,只需要构建一个人工智能系统,然后通过例子和真正的email来训练这套系统,让垃圾邮件过滤AI程序自己提高自己。

万能翻译

在任何一天,Google翻译功能所翻译的文字量比全世界所有专业翻译人员每年翻译量的总合还要大。Google翻译可以在65种语言之间任意两种之间进行翻译,一共有超过4000种翻译方式。Google翻译能够运行,一定离不开人工智能的一个领域——概率推理。

在很多年前,语言学家通过双语字典上大量的词汇和一条条的语法规则来构建自动的翻译系统。但是这样做却失败了,如此的翻译会很生硬、很不灵活。比如法语语法规则里一般形容词在名词后面,英语语法规则里一般形容词在名词前面,可是也有例外的时候,比如“the light fantastic”。

在过去二三十年里,自动翻译依靠的不再是语言学家制定的规则,而是从现实的例子中自动学习而来的由概率支配的规则,就好像以往是通过背单词和记语法来学外语,而现在是通过身临语言环境中学习。

自动翻译另外一个重要方面是电脑和真人之间的配合和交互,很多自动翻译系统都是先在互联网上搜集大量真人翻译过的文件作为基础。

当然自动翻译还远远称不上完美,但是它正在逐渐改进,准确度越来越高,语言的种类也越来越多。Google正在研究一个名为Translate的Android手机小程序,每当你对手机说一句话时,这个小程序可以把你所说的话转换成任意一种语言,发送给和你通电话的人,而对方在手机上也可以说自己的语言。随着自动翻译技术的发展,一个被长久期盼的诱人目标将有机会实现——每个人不需要学习任何外语,就可以和世界各地的朋友进行交流。

人工智能的新未来

在过去半个世纪中,几个关键的发展推动着人工智能科技出现在我们的身边。如今,科学家们对于神经科学和认知科学的新认识可以让我们设计出更新的硬件和软件。互联网的发展也使得直接访问全球的海量数据变得可能。不仅如此,人工智能或许还可以自己依靠自己来进化。

进化

现今大多数的人工智能系统如果完全依靠手动来编写程序,会变得很复杂,一个另辟蹊径的方法是让电脑程序自己进化自己。在虚拟的环境中,程序通过不断的迭代,尝试变化各种参数,在不断尝试和失败之中,程序逐渐“自然而然”变成设计者期望的样子。

首先设计者们对于程序所在的环境进行模拟,就像一个游泳池或者一片沙漠一样,比如对于垃圾邮件过滤器,“环境”就是大量的邮件,既包括正常邮件,也包括垃圾邮件。然后一个人工智能AI程序的不同版本会同时在模拟的环境中进行测试,这些AI程序会给出各自不同的输出结果,输出结果的质量会被评分,分数比较好的AI程序会被进一步的修改,分数比较差的AI程序会被遗弃掉,修改后的程序有的可以进一步变得更好,有的则会不如以前,同样优胜劣汰,如此往复,最后原本几个普通程序可以自然进化成很好的人工智能系统。

这个过程其实非常像自然界中所发生的“弱肉强食,适者生存”,而一个程序的某个参数被修改如同基因突变,两个程序还可以各取一部分交叉到一起产生一个新的程序,就如同动物交配产生后代一样,这种让电脑程序自己进化自己的方法被称为“遗传算法”。

电脑也需要直觉

人类永远不是绝对理性的,我们在做决定的时候会犯很多常见的错误,会很容易受无关细节的干扰。有的时候我们并没有经过事实判断,匆匆忙忙做出一个决定,也就是常说的“相信自己的直觉”。我们曾经觉得“冷静”的电脑不像人一样冲动,一定是件好事,可是最近的认知科学研究结果却发现事实并非如此。

一个人先天具有两种相互配套的做决定的方式,一种是缓慢的、深思熟虑的但同时也是理性的,另一种是快速的,有爆发力的,可以把当前的情况迅速和以往的经验联系起来,一两秒钟做出决定。第二种方式或许才是人类智能的关键。

我们在进行深思熟虑的时候,理性必定要以耗费更多的时间和精力为代价。比如有一辆车正迎面撞向你驾驶的车,你需要立刻做出反应,或者鸣笛,或者刹车,或者转向,而不是经过复杂的计算决定哪种选择是最优的,估计等结果算出来事故已经发生了。这种快速反应在非紧急情况下也同样有使用的必要,比如你如果每天都在仔细思考到底穿深蓝色衣服还是浅蓝色衣服这样无关紧要的问题,会浪费大量的时间和精力,耽误重要的事情。

那么人工智能中是不是也应该加入直觉的成分呢?事实上,很多现代的人工智能系统真的有两部分,一部分用于瞬时反应的情况,另外一部分用于需要更多理性分析的情况。一些机器人使用多层系统结构,最底层只做直接的反应,较高的层组织和抑制这些反应,去完成更复杂的目标。这种方式可以很有效,控制步行机器人在凹凸不平的地面上行走就是一个例子。

另外一种类似的方式是在人工智能程序中加入一些“情感”,比如一个机器人如果反复尝试做一件事情,不断失败,一个表达“气馁”情感的电路就可以“激励”机器人寻找新的选择。

让机器来模拟情感本身就是件很复杂的任务,人工智能的创始者之一Marvin Minsky曾经认为情感并不是人的大脑所做的一件事,而是包括了大脑的很多部分之间的相互作用,还有大脑和身体之间的相互作用。情感会驱使我们做出某些选择,如果电脑程序的某部分能够让程序变得好像被情感驱使了一样,电脑程序自然变得更像人类的智能。

像大脑一样的机器

既然我们的目标是制造一台具有人类智能的机器,为何不直接复制一下人的大脑呢?人类自己毕竟是智能的最好样本。在过去的二三十年,神经科学对于我们的大脑是怎样处理和储存信息产生了很多新的认识。

人类的大脑是由100万亿个神经突触连接着1000亿个神经元组成的一个网络,这些神经突触和神经元会在每秒内改变10到100次状态。我们大脑的这种结构使得它非常善于完成在一张图片中识别出一个物体这样的任务。

而一台超级计算机可以拥有100万亿字节的内存,拥有的晶体管电路的运算速度比人的大脑快1亿倍,这种结构使得计算机擅长于去快速完成明确定义、工作量大、要求精确的任务。

这两种结构各有优缺点,不过完成很多模糊性任务的时候,人脑的结构更加占据优势,比如像识别人脸,我们并不需要进行精确计算的电路。

相比于超级计算机,人的大脑也是一台很节能的机器,人的大脑进行各种计算的时候,大约只需要20瓦的功率,只相当于一个亮度很低的老式电灯泡。而一台进行类似计算的超级计算机所需要的能量将会是20万瓦。据统计,每天应对全球无数搜索请求,拥有很多超级计算机的Google公司每年用电可以达到23亿千瓦时(度),相当于20.7万户美国家庭一年的用电量,相当于41座帝国大厦一年用电量,一个表面上看起来并非传统重工业的公司却是个耗电大户。这使得很多研究人员尝试着模仿人的大脑制造出节能高效的电脑硬件。

我们都知道,任何一台电脑里都需要有CPU,内存和硬盘,假设CPU是你,内存是桌子,硬盘是柜子,而程序则是那些你放在柜子里的各种书籍,文件,玩具等等,CPU负责运算和执行各个程序,硬盘储存着各个程序,如果你想看看书或者玩玩具,那得先把相应的东西从柜子里拿出来放到桌面上,然后你才可以在桌面上玩玩具或者写作业。桌子就相当于内存,是一个临时储存程序的地方。在电脑里,这三个部件缺一不可,可是在人的大脑里,我们并没有相应的这些部分,处理储存信息都是在一起同时进行的。按照传统计算机的结构,你玩完玩具想去看书,需要先把玩具从桌子放回柜子里,然后再从柜子里拿一本书拿到桌子上,完成很多个不同的任务需要一道道的工序,效率就会降低,可是大脑的结构允许你同时做很多件事情,不需要做完一件再做另外一件。

如今很多研究人员在尝试着模仿人类大脑制造出新型的计算机:它们平行地而不是一件一件地完成任务,它们更加模拟化而不是数字化,它们虽然会慢一些但是消耗的能源也很少。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多