第1章 认识人工智能
1.1 人工智能是什么
当谈到人工智能时,大家会想到什么呢?可能很多读者会想到斯皮尔伯格导演的一部电影——《人工智能》,它的英文名称是Artificial Intelligence,一般简称为AI。
在这部电影中,主人公虽然是个机器人,但它看起来是个小男孩,能说话,能走路,能跟人交流,能做很多复杂的事情。可能对大多数人来说,想象中的人工智能就应该是这样的。但对于现阶段的科技发展来说,我们还无法真正造出一个能够解决一系列复杂问题,像人类一样思考、行动和交流的机器。
我们目前说的人工智能是什么?其实很简单,如果机器能做一件事情,即便是很小的一件事,在做这件事的过程中,它能够以一种完全自主的方式,比如通过人类语言和机器交流就可以指挥机器,而不需要人类向机器输入常人难懂的指令代码,如果机器能够达到这种状态就可以称作人工智能。
从字面意思上直观理解,人工智能包含“人工”和“智能”两部分。“人工”指人工智能的对象是人造的,而不是生物。例如,饲养一条狗,然后训练它,让它学会买报纸,这也是让被训练对象去做一件事。在去买报纸的过程中,如果有人拦它,它会绕开走;如果卖报纸的人不在,它会在那里等。尽管对于这些情况,并不需要主人临时的指令,狗也可以独立地完成,但狗不是人造的,而是一个天然的生物,所以我们不能把它称为人工智能。
“智能”指人工智能的对象能够独立完成一件事。这件事可能很简单,但在完成的过程中依然会涉及很多步骤,这些步骤在不同的情况下可能会差别巨大。人工智能的对象需要自己去应对这些状况以完成任务,而非每次遇到状况就要人工现场干预,给它输入命令代码。例如,对于自动翻译机,我们希望当我们对着机器说出一句中文时,它能很快给出翻译的英文结果。如果当我们说出一句不常用的中文时,它无法给出翻译的英文结果,那它也不能称为智能。
从学术的角度看,人工智能这个概念最早是由英国学者阿兰·图灵(Alan Turing)于1950年提出的。他是一位计算机科学家,同时也是一位数学家和逻辑学家。第二次世界大战期间,他带领一支小团队帮助英国政府破译了德军的英格玛密码,电影《模拟游戏》(The Imitation Game)演绎的就是这段故事。
第二次世界大战结束后,阿兰·图灵开始全身心地投入计算机领域的研究中,并于1950年发表了一篇论文,题目是《计算机器与智能》(“Computing Machinery And Intelligence”)。在这篇论文中,他首次提出了人工智能的概念,当时这个概念的名称为“会思考的机器”(Thinking Machine)。“会思考的机器”首先需要拥有感知能力,它应该能看见、能听见,而且这里的“听见”和“看见”应该指它能看见和听见自然界的事物,而不仅仅是指令。例如,对于早期的计算机,给它输入一些指令,它也能够去做一些事,但它并不能感知自然界的事物。对于“会思考的机器”,它应该能够看见自然界的风景和图像,能够听见人说话的语音、唱的歌,或者一些其他响声。在听见和看见之后,它还应该能够明白它听见和看见的都是什么,也就是说,它能够理解这些事物的含义,这就是早期人工智能在被提出时所被认为应该拥有的能力,但这些能力直到今天仍未真正完全实现。为了判断一个机器是否实现了人工智能,阿兰·图灵提出了著名的“图灵测试”。
在图灵测试中,如果一个测试者无法分辨和他进行交互的是一个机器还是一个人,或者如果和测试者进行交互的是机器,而他却以为在跟一个人进行交互,那么就认为这个机器通过了图灵测试。实际上,到今天为止,并没有哪款产品在大范围内、广义上通过了图灵测试。人工智能近年来蓬勃发展,可能会让很多人误以为通过图灵测试指日可待,但实际上,目前已知的技术方案想要通过图灵测试仍有很长的路要走。
人工智能的概念虽然在1950年就被提出,但直到1956年,在达特茅斯会议上,来自全世界的众多计算机科学家、数学家共同讨论了人工智能的概念后,人工智能才正式诞生。如图1-1所示,人工智能从1955年正式诞生后,曾经历了两次高潮,每次高潮之后又跌落谷底,而今天,它正迈向一个新的高潮。
图1-1 人工智能发展历程
人工智能的发展起起落落,每次高潮的出现都是因为一个新技术的提出,如第一款神经网络——感知机的提出,把人工智能推向了第一个高潮;反向传播算法的提出,又把它推向了第二个高潮。人工智能发展过程中低谷的出现,大多是因为提出的新技术在实际应用中起到的作用有限。从今天来看,这很大程度上是受限于当时计算机的运算能力。就这样,人工智能在发展过程中不断地经历一个个低谷和高潮。
今天,我们在生活中可以看到很多应用了人工智能技术的产品,可以看出,这一次新的人工智能发展高潮和前两次有所不同,而且这一次人工智能发展高潮真正在工业界引爆了对人才的巨量需求。第三次人工智能发展高潮来临的基础是运算率的提升,标志性的事件是2006年加拿大多伦多大学的Geoffrey Hinton教授发表的一篇关于深度神经网络的论文“A fast learning algorithm for deep belief nets”。之前神经网络两度陷入低谷,但这次他把神经网络又推向了发展高潮。以前学术界均使用CPU进行运算。CPU作为通用运算器件可以处理很多复杂运算,但在处理简单运算时,其速度和运算力都受到了很大的限制。而2006年Geoffrey Hinton教授的论文发表以后,人们发现GPU也可以用来进行运算,而且比使用CPU更简单,在进行算法优化后,GPU的运算力可达CPU的数倍。GPU出现在硬件上,在运算力上使神经网络实现了前所未有的突破。后来又推出了TPU(Tensor Processing Unit,张量处理器),从运算力上讲,其效率略低于GPU,可达GPU的70%~80%,但它的能耗非常小,远远小于GPU。在能源越来越重要的今天,TPU的优势非常明显。综合以上,可以说人工智能第三次浪潮的出现与硬件的革新密不可分。
人工智能的发展需要非常完整的技术栈,包括基础层、技术层和应用层三个层次。
基础层包括硬件技术、云计算和大数据,这些基础性技术是人工智能发展的前提,正是这些技术的出现,才使得原来必须要靠巨型计算机才能完成的事情,现在可以将其分布在一些小型机或者普通服务器上来完成。以前只有拥有集群的大企业才有能力完成这些事情,但云计算出现之后,很多小企业和个人也可以从事这方面的研究和开发了。数据相当于人工智能的食物,人工智能学习出的所有结果实际上都是从数据中提取出来的,大数据的出现使我们有可能将人工智能“喂饱”。
人工智能的技术核心是算法。例如,20世纪60、70年代出现的早期人工智能系统都是基于规则的。在20世纪60年代有一款人工智能系统SHRDLU,这个系统能做的事情特别简单,就是按照人类的自然语言指令,在一个封闭的有限空间中移动一些积木块,如把红色立方体上的绿色锥体挪到旁边白色的盒子中。它是怎么做到的呢?实际上,它把系统由什么颜色、什么形状的积木块组成,什么是移动,什么是左右,什么是上下等都编制成了规则。当我们命令它时,它会把命令先拆解成规则,然后再组合起来去完成这一系列的操作。系统的所有规则都由科学家编写而成,所以如果要增加一个积木块,那么这个积木块本身的规则,以及这个积木块和其他任何一个原有积木块之间作用的规则也要增加,这是一个非常烦琐的事情。一旦遇到新的情况,这种系统就需要人工去添加新的规则,所以这些规则的适应性非常差,导致这种系统没有什么实践的可能性。
因此,人们开始尝试让机器自己去学习规则。现在的人工智能的主要技术是机器学习和深度学习,它们立足于让机器自己去学习规则,而且能够根据不同的情况学到不同的规则,机器遇到的情况越多,学到的规则越多,只需要把它放到不同的环境中,让它自己去和这些环境交互即可。现在的人工智能,既有基于规则的部分,也有基于机器学习的部分。因为一个真实的应用系统,总需要有一些非常明晰、非常细节化的绝对不能突破的规则,这类规则由人工设定,而其他的一些规则可以靠机器学习模型来实践。无论在学术界还是工业界,机器学习和深度学习都是人工智能的核心和热点技术。从学科发展的角度来说,深度学习其实是机器学习的一部分,但由于深度学习的实现效果出色,人们逐渐加强了对深度学习的投入,目前它已上升到和机器学习并列的位置。图1-2展示了人工智能、机器学习和深度学习的包含关系。
图1-2 人工智能、机器学习和深度学习的包含关系
人工智能的应用层用于将技术产品化以供人们使用。目前,人工智能在自动驾驶、翻译、医疗诊断、游戏、个人助理、艺术、图像和语言识别、金融、电商、智能制造、智慧城市等领域都有着广泛的应用。
互联网方面,如必应(Bing)搜索引擎就是一个典型的互联网服务,其中很多功能模块实际使用的就是AI推荐系统,如广告点击率的预测、搜索排序、语音识别、机器翻译、图像检索、知识图谱等。
金融方面,量化相关的很多方案都和机器学习相关,如Microsoft Research的Qlib就是一个面向人工智能的量化投资平台。另外,反欺诈、智能客服等领域也会用到人工智能。
自动驾驶方面,一类是整体解决方案,如特斯拉的AutoPilot系统就是典型的人工智能综合应用案例;另一类是细分方向的解决方案,如转向预测,速度预测,道路、交规标志和障碍物的识别等单项应用。
医疗方面,早期的代表是IBM的Watson,其内部集成了很多基础的AI模块,如认知计算、影像识别、病例诊断等。目前,AI还扩展到了基因表达预测、药物研发等领域。
IT基础架构和智能运维方面,典型代表有用于异常检测的Microsoft DeepTraLog,用于虚拟机故障预测的Microsoft Narya,用于磁盘故障预测的Microsoft NTAM等。
科学计算方面,数学、物理、化学、生物都有一些应用场景。例如生物领域利用AI预测蛋白质折叠,数学领域利用AI训练验证器等。
制造业方面,AI可以用于各种瑕疵检测、故障识别与预测、智能机械臂等。
教育方面,很多公司把AI应用于教学领域,如智能拍照搜题,让AI根据不同学生的实际学习情况安排对应的课程和老师,还有一些早教机器人可以成为孩子的玩具,寓教于乐。
艺术方面,AI在这个领域的应用见仁见智。今天的AI已经可以在音乐、绘画和写作方面从事带有创作性质的工作。例如,DALL-E 2、Midjourney、Stable Diffusion等模型可以根据用户输入的文字描述自动生成图像;GPT系列模型,尤其是ChatGPT能够非常顺畅地与人类用户无话不谈;MuseNet等模型则可以将灵感展现为完整的乐曲,降低音乐创作的门槛。不过,目前AI独立创作出的这些文艺作品还是对已有内容的融合与重组,和人类的原创还有一定差距。而且,真正的艺术背后是人的经历和思考,AI独立创作出的文艺作品背后并没有任何思想支撑,所以也很难定义其价值。
游戏方面,AI在电子游戏领域的应用已经非常广泛,绝大部分游戏中都有AI控制的“对手”或“杂兵”与玩家抗衡,甚至游戏开发领域的AI辅助开发也在迅速发展中。传统桌游方面,我们也看到了AlphaGo在围棋领域的辉煌战绩,这对围棋在全世界的普及也起到了积极的作用。
智慧城市方面,AI可以用来预测空气污染物和有害物质的排放情况,分析和预测水质,规划出租车路径等,且在这些领域都已经有了实际部署。
未来,人工智能还会在更多领域帮助人类提升工作效率,摆脱重复性的劳动。