通过上一节的学习我们知道,机器学习主要是模拟人的学习能力,那么,它具体是怎么模拟的呢?
学习是人类获取知识、增长智力的根本手段。人们从呱呱坠地、一无所知的婴儿,成长为能解决各种问题乃至能创造新生事物的万物之灵长,依靠的正是强大的学习能力。因此,通过机器学习实现人工智能是一种自然的想法和一条必经的道路。可以设想一种起始为婴儿状态的机器,该机器通过从自我经验中学习、从书本中学习、向老师学习、向他人学习等学习手段,像人一样逐渐成长,逐步增长智力,直至能够很好地解决任务和适应环境。
就像人类在从婴儿成长为成人过程中的不同阶段会使用不同的学习手段一样,机器学习也有着与之类似的不同学习方法。下面将一一介绍。
我们在婴幼儿时期是怎么学习的?
强化学习是一种机器根据自身行动所获得的奖励和惩罚来学习最优行为策略的学习方法。这与我们在婴幼儿时期的主要学习方法是类似的。在这一时期,我们的理解能力还不够,只能从外界环境给予我们的行为反馈中知道对错,如获得父母的表扬或被训斥等,从而优化自己的行为,以趋利避害。当然,我们虽然用人类婴幼儿时期的学习来引入强化学习的概念,但实际上这种学习方式是贯穿我们的整个生命阶段的。
图1.8显示了强化学习的一种经典应用案例。图中的机器人要学会走路而不摔倒。大家知道,类似这样的行为控制能力,是不能通过书本或课堂学习获得的,即使书本或课堂上能告知学习者一些基本的动作方式和规范,但要真正学会走路而不摔倒,只能依靠人的反复练习。在练习过程中,可能成功,也可能摔倒,成功就是奖励,摔倒就是惩罚。根据这种奖励和惩罚,练习者便知道怎样调节自己的走路行动策略(双腿迈步的力度和角度、身体各部位的协调控制等),以尽可能获得奖励而避免遭受惩罚,从而达到成功率高且尽量不摔倒这一学习目标。
图1.8 强化学习示例
机器学习中的强化学习方法正是对人类上述强化学习能力的模拟,其核心是最优的行为策略。这种行为策略可以是具象的,如上面所述的人体动作;也可以是抽象的,如人脸识别结果。事实上,所有根据输入获得输出的过程都可以被视为一种行为,因此强化学习虽然起源于机器人的行为控制,但实际可应用于任何希望根据输入获得理想输出的情况。
用自己的话简要总结强化学习方法的思路。
我们在课堂上是怎么学习的?
监督学习,类似于人类的求学阶段。此时人类进入学校学习,有老师教育,老师在课堂上会告知学生问题和问题的答案,希望学生能建立问题与其答案之间的联系,从而解答后面可能出现的类似问题。
老师在黑板上写下文字,此为图像形态,需要学生回答的问题是“这是什么字”,即字的图像形态所对应的语义内容。显然,如果没有老师在一开始告知学生这是什么字,学生是无法知道的。因此,老师除了提供文字的图像形态,还会告知文字的图像形态所对应的语义,学生通过这种对应关系就学会了识字,下次遇到同样的文字图像时,便可输出正确的识字结果。
图1.9形象地表达了这种学习方式。机器学习中的监督学习正是对人类这种学习方式的模拟,通过人为标注的问题与其答案相对应的数据来学习问题与其答案之间的对应关系,从而解决未知的同类问题。
图1.9 监督学习示例
监督学习与强化学习的区别是什么?
延伸阅读
数据标注
在应用监督学习时,一项比较烦琐的工作是标注数据,特别是当需要大量标注数据来保证学习效果的时候。数据标注的质量和规模通常是提升AI模型应用效果的重要因素。为了解决这一难题,目前机器学习中一个前沿的方向是小样本学习,即通过少量标注样本来学习理想的结果。事实上,人类本身具有很强的小样本学习能力,正如我们在识字时只需要少量样例就可以认识一个字。但是,要让机器达到人类的识字准确率,需要同一个字的大量标注样本。以手写体数字识别的常用数据库MNIST为例,每个数字都需要5000个样例才能得到理想的识别率,这显然大大超出了人类所需要的学习样例数量。机器能够模拟人类的这种超强的小样本学习能力吗?怎样实现呢?
没有老师指导,也没有外界环境给予的奖励和惩罚,还能学习吗?
一个“非”字说明了非监督学习这种学习方式与监督学习的根本区别。在非监督学习方式下,学习者面对的只有输入的数据,没有与之对应的标准答案,从而不能根据输入与输出的对应关系来获得两者之间的联系。同时,非监督学习与强化学习也不同,在学习者给出答案(行动)后,没有与答案对错相对应的奖励与惩罚,从而也不能根据奖励与惩罚来调整其行为策略以获得理想的答案。那么,非监督学习的作用是什么呢?它可以让学习者自己从输入的数据中获得有规律的知识,这与人类求学结束后走向工作岗位,需要自行摸索工作中的相应规律类似。
图1.10显示了非监督学习的一个例子。在这个例子中,输入了动画片《米老鼠与唐老鸭》中的若干动画形象,其中有3种形态的鸭子及米老鼠和兔子,我们可以根据形象的相似性将它们分为鸭子和非鸭子两类。这种根据数据的相似性将其分为若干类别的学习方式就是非监督学习的一种,称为数据聚类。
图1.10 非监督学习示例:数据聚类
除了数据聚类,还有第二种非监督学习方式——关联规则挖掘,即找出输入数据各组成部分之间的相互依赖关系,从而根据部分输入推算出某种结果,或者根据数据之间的相互依赖关系来获得更好的行动策略。
某公司在对销售数据进行统计分析时,发现客户购买尿布后再购买啤酒的情况较多,说明这两种产品之间存在相互依赖关系。于是该公司调整了商品的摆放方式,将尿布与啤酒放在一起,结果这两种商品的销售额都有了明显的提升,为公司带来了额外利润(见图1.11)。这个案例形象地说明了数据关联规则挖掘的作用,对数据挖掘技术的推广起到了很好的效果。
图1.11 非监督学习示例:关联规则挖掘
再如,随着用户网络浏览时间的增长,电商平台向用户推荐商品的精度或新闻资讯平台向用户推荐新闻的精度都在不断提高,这正是利用了关联规则挖掘这种学习方式来挖掘用户的个人信息与喜好之间的关联关系。这里也存在输入与输出之间的对应关系,与监督学习的任务貌似相关,但两者的根本区别在于前者的学习结果是学习者根据输入的数据自行总结出来的,没有监督者的引导。
电商平台应用的推荐技术解决的是非监督学习中的什么问题?
延伸阅读
半监督学习方法
前面说过,数据标注是监督学习中比较烦琐的工作,因为无标签的数据比较容易获取,而有标签的数据收集起来比较困难,人为标注耗时耗力。为了解决这一难题,我们可以使用非监督学习与监督学习相结合的方法,先在少量标注数据上进行监督学习,再在大量未标注数据上进行非监督学习。这里的关键问题是用监督学习得到的模型来对未标注数据进行自动归类,其归类质量的好坏决定了半监督学习方法的效果。
不论采用何种学习方式,“学习都意味着变化”。通过学习,学习主体必然会发生变化,可能是好的变化,也可能是不好的变化,但一定有变化发生。对机器来说也是这样。这种变化的结果主要有两类。
第一类是提升了学习主体的能力,包括:(1)能处理过去不能处理的问题(更多);(2)能更好地处理问题(更好);(3)能提高处理问题的效率(更快)。这类结果主要体现在强化学习与监督学习上。
第二类是产生或增加了学习主体的知识,包括:(1)数据中蕴含的规律;(2)数据中蕴含的规则。这类结果主要体现在非监督学习上。
因此,在理解与设计机器学习算法时,应围绕“改变什么、怎样改变”的问题来思考,这是理解机器学习的关键。
目前机器学习技术取得了一定的突破,但是也存在一些问题。其有待解决的主要问题是什么?
机器学习中存在的主要技术问题是过学习问题,或者称为机器学习算法的推广性问题,是指机器在学习后,虽然对训练数据表现良好,却对未见过的数据(测试数据)表现不好,而能处理未见过的数据才是机器学习的真正目标。这一问题不能完全通过增大数据量或训练量来解决。图1.12显示了这一问题的一个例子,图中实线代表在训练数据上的分类准确率随着训练量增加的变化,虚线代表在测试数据上的分类准确率随着训练量增加的变化。可以看到,当学习到一定时候,训练数据上的分类准确率与测试数据上的分类准确率出现了相反的变化,前者逐步升高,而后者逐步下降!这显然不是我们希望机器学习达到的效果。
图1.12 过学习问题示例
在了解了机器学习的几种方法之后,请制作一个表格,对比强化学习、监督学习和非监督学习的相同与不同之处。
思考是抽象的,人们如何把自己思考的东西表示出来?
人们在思考时,很多时候是借助符号来进行的,以对符号的处理能力来表现人类智能。例如,人类会使用文字来交流,而文字就是符号的一种。
符号智能是在人类智能的哪些能力中体现出来的?是如何表示的?
如前所述,在人类的问题求解能力、推理能力、语言能力中体现的正是这种符号处理能力。
在问题求解中,我们将待解决的问题及问题的所有可能答案以符号的形式表达出来,再从所有可能的答案中找出最优的一个。
下国际象棋时,待解决的问题是“怎样赢”。为了解决这一问题,我们将下棋过程中的棋盘状态在头脑中以符号的形式表达出来,并推演从当前状态开始的尽可能多的棋盘状态变化过程,最后根据所推演的棋盘状态变化的可能性,找出自己在当前状态下的最优应对策略。图1.13显示的是在国际象棋对弈中,棋手从某种状态开始所默想的棋盘状态的变化。注意:这是一种思考过程,而非真正的下棋过程,其思考的结果是在第二行的若干状态中选择一种状态,从而确定当前状态(顶点处的状态)下的下棋策略。
图1.13 问题求解示例:国际象棋对弈
图1.14 推理示例
在推理中,我们将已知事实、知识等用符号表达出来,在此基础上,根据已知事实和知识,利用逻辑手段推理出相应的结论,而结论同样是用符号表达的。因此,推理是从一种符号内容到另一种符号内容的转换过程。
图1.14显示了符号推理过程的一个例子。其中,已知事实和规则(知识)是推理依据。推理规则(程序)是人们在已知事实和规则基础上进行符号处理的规则。根据该规则所形成的第一轮推理过程如图中所示,得到的结论是“农产品”。这一结论可加入事实库进行后续的推理,直到没有新的结论产生。
在语言处理中,核心同样是将语言符号从一种形式转换成另一种形式。例如,完成机器翻译,是从一种语言翻译成另一种语言;完成自然语言理解,是根据符号的外在表现形式获得其背后所蕴含的语义,理解表达者的意图。
符号智能只是模拟人类符号处理能力的途径之一,机器学习、人工神经网络等非直接技术手段也可实现这一目的。事实上,近年来机器学习、人工神经网络在问题求解、推理、语言智能等领域已有越来越多的应用。但这并不意味着符号智能不再值得重视,在新技术的应用上还需要与符号智能融合,如问题及其可能答案的表示方式、搜索手段、推理逻辑等。归根到底,对符号的处理,尤其是对知识的表达和运用,是人类智能的根本属性之一。要想得到越来越好的人工智能,需要不同实现途径的交叉与融合。
除了上面几种用符号表示的例子,你身边还有什么人工智能应用了符号智能技术呢?简要描述一下。
延伸阅读
物理符号系统假说
符号智能是对上述通过符号处理来表现的人类智能的直观模拟,即直接模拟其符号处理机制与过程。为此,纽维尔和西蒙提出了物理符号系统假说,认为“所有智能实体都是物理符号系统,智能来自对符号信息的处理。通过用符号来表示知识,并进行基于符号的推理,可以实现人工智能”。而计算机本质上就是进行符号处理的机器,从其最根本的原理来说,是对二进制符号串的处理。因此,计算机在诞生之初,就埋下了符号智能的种子。符号智能也是目前研究时间最长的人工智能实现途径,早期的人工智能研究成果大多集中在符号智能上,目前它仍在继续发展,并与其他实现途径不断交叉融合。
单一个体能够解决所有的问题吗?群体协作的优势体现在哪里?
群智能是对生物智能中的社交能力的模拟。以上所述的各实现途径均是通过单一个体解决问题的。即使是具有群体性的进化计算,也只是通过群体的繁殖和进化来提高单一个体解决问题的能力。相反,群智能则立足于通过个体之间的协作来解决问题,不强调单一个体的能力,而强调群体智慧。
事实上,人类本身既具有很强的个体智能,又因为结成社会而在整个群体的意义上具有更强的智能。单一个体尚不具备完全战胜自然界挑战的能力,没有群体中不同个体的发明创造与相互协作,人类在大自然面前只能瑟瑟发抖。互联网的巨大威力,不在于其通信的便利,而在于这种通信手段使人们相互协作变得更加容易,人类的群智能更加发达,形成了一个巨大的互联网大脑。图1.15显示了互联网的连接状态,该图景与图1.5所示的人脑结构图像和宇宙大爆炸的早期图像存在某种神秘的相似性。
图1.15 互联网活动图
一个有趣的问题是:人类是因为拥有智慧,所以要结成社会,还是因为生活在社会中,所以才是智慧的?
群智能在某些个体智能很低而群体智能明显的生物身上表现得更加清晰,比较典型的有两类生物现象(见图1.16)。第一类是类似大雁、鱼等群体的集体行动,其行动是整齐优雅的,但其中没有一个指挥者,每个个体都是按照与其他个体的通信和一套共同遵守的简单规则来运动的;第二类是类似蚂蚁等群体的寻优能力,蚂蚁可以找到从其巢穴到食物源的最短路径,而事实上每只蚂蚁都只具有很小的脑容量,没有路径规划能力,它们只根据自己与其他个体的通信和一套简单的行走规则便能迅速找到最短路径。
图1.16 生物群体智慧示例
上述两类生物群体智慧给我们提供了两种新的解决搜索问题的群智能思路。一种是模拟大雁或鱼的集体运动机制,通过个体的运动来模拟解的变化,通过群体之间交换解的质量来调整运动速度以达到群体协作搜索的目标;另一种是探索蚂蚁寻找最短路径的奥秘,将其以计算的形式加以模拟来解决最短路径寻优及其代表的一大类搜索问题。
对人类及其他生物群智能的模拟,导致了两种群智能的实现形式。一种是群智能系统,由多个智能体相互协作或竞争以完成任务,如分布式问题求解、分布式人工智能系统、机器人足球比赛等。另一种是上面所述的群智能搜索,模拟群体智慧以解决搜索问题,具体表现包括模拟群体运动的粒子群优化算法、模拟蚂蚁觅食的蚁群优化算法等。
群智能与其他人工智能实现途径的最大差别在于强调通信。显然,只有通过通信,个体才能结成群体,通信及建立在通信之上的协作、协调、竞争机制决定了群智能的方式与优劣,因此可以将群智能理解为“智能体+通信”,这里的通信包括协作、协调、竞争等与群体协作相关的一切事务。智能体可以采用其他技术途径来实现,而群智能的核心则在于使智能体之间结成更高群体智能的通信机制。
1.再举出一些集体行动的低等生物的例子,说明它们是如何协作的。
2.人类群智能与低等生物群智能的区别是什么?
延伸阅读
蚁群算法创始人之一:马尔科·多里戈
马尔科·多里戈(Marco Dorigo)对蚁群算法贡献巨大,被称为蚁群优化的创始人和国际上群体智能概念的首创者之一。1991年马尔科·多里戈在意大利米兰理工大学攻读电子工程博士学位时提出了蚁群算法。博士毕业后,他在比利时布鲁塞尔自由大学工作,担任IRIDIA实验室研究主任。自1996年至今兼任比利时-法兰西共同体科学研究基金会F.R.S.-FNRS终身研究员。目前他的主要研究方向包括两个方面:群体智能和群体机器人。他在Nature Communications和Nature等国际上具有极高影响力的期刊发表论文130余篇。
马尔科·多里戈获得了多个具有影响力的奖项:1996年获得意大利人工智能奖,2003年获得欧盟居里夫人优秀奖,2005年获得比利时应用科学博士A.DeLeeuw-Damry-Bourlart奖,2007年获得Cajastur国际软计算奖,2010年获得ERC高级资助,2015年获得IEEE弗兰克·罗森布拉特奖,2016年获得IEEE进化计算先驱奖。
人类行为产生的过程是怎样的?机器人的行为是如何控制的?
行为智能是对人类的感知与行为能力的模拟。人类的行为是从感知到行动的过程,即在感知到外界环境发生变化时,做出恰当的反应。例如,在开车过程中,当车辆前方出现障碍物时,人们会做出刹车的动作。这种从感知到行动的反应能力正是行为智能所要解决的问题,而且这种反应能力可能并非来自大脑的思考和控制,而是某种独立的行为控制能力。设想当车辆前方出现障碍物时,如果还要先经过大脑的慎重思考再做出刹车的动作,则很可能已经发生事故了。因此,虽然行为智能也可以通过其他方式实现,如利用前述符号智能通过推理手段实现感知(事实)到行动(结论)的映射,但此处所说的行为智能专指直接实现从感知到行动的映射的方法。这一问题在机器人的行为控制上尤为重要,因此行为智能最早也来源于机器人控制领域。
建立了感知与行动之间的直接对应关系,机器人便能在环境中自主行动,成为所谓的“具身智能”。这与无实体的非具身智能系统形成了鲜明对照。非具身智能本身不具有感知环境及与环境进行交互的能力,所表现的只是一种抽象的智能,其对环境的感知及在环境中的行动需要借助人通过键盘、鼠标、显示器、打印机等输入/输出设备来实现。行为智能则试图构造位于真实世界中的智能实体,能够不需要人的帮助和干预而独立地在环境中实时做出恰当的反应。显然,这才是我们需要的真正的行为智能。
在行为智能中,还存在“终身学习”的概念。我们所处的环境总是在变化,场景可能变化,摆设可能变化,进进出出的人或事物可能变化,等等。机器人面对的真实环境同样如此,这就需要机器人通过学习手段不断适应环境的变化,从而在环境中做出适当的行为。另外,这种学习主要依靠的是前面所述的强化学习方法,即通过从环境中感知到的奖励和惩罚实时调整其行为策略来达到适应环境的目标。
符号智能与行为智能的本质区别是什么?举例说明。
延伸阅读
昆虫机器人——“成吉思汗”
行为智能的早期代表人物、美国麻省理工学院人工智能实验室的罗德尼·布鲁克斯(Rodney Brooks)提出了“无须表示的智能”的口号,使机器行为控制从基于符号智能的方式转向直接的行为智能方式。在这种思想的指导下,他构建了一系列智能机器。例如,他做出了一个由150个传感器和23个执行器构成的像蝗虫一样六足行走的机器虫,称为“成吉思汗”(见图1.17)。该机器虫虽然不具有像人那样的推理、规划能力,但其应对复杂环境的能力大大超过了原有的机器人,在自然的、非结构化的环境下,具有灵活的防碰撞和漫游能力。“成吉思汗”没有用中央控制器来控制机器人中所有可能的功能,尤其是腿部功能。取而代之的是,每条腿都有自己的内置传感器,可以感应行进中的各种障碍。每条腿都具有一些基本的行为编程,并且知道如何根据传感器反馈在不同的情况下做出反应。走路的动作成为所有腿之间的协调努力,从而使机器人运动。
图1.17 罗德尼·布鲁克斯的昆虫机器人“成吉思汗”
人类大脑是如何传递信号的?
大脑被认为是人类思考的中枢,因此通过对人类大脑结构的模拟来实现人工智能是一种自然的想法和可能的解决途径之一。如图1.18(a)所示,人类大脑是由大量神经细胞(神经元)广泛连接形成的,神经元的结构及神经元之间的关系如图1.18(b)所示。神经元中最主要的部分是树突、轴突和细胞体,它们分别起到信号输入、输出和处理的作用。我们有时将树突和轴突统称为突起。
图1.18 人类大脑系统
细胞体是生物神经元的主体,由细胞核、细胞质和细胞膜组成,直径为4~150μm。细胞体的内部是细胞核,由蛋白质和核糖核酸构成。细胞核周围是细胞质。细胞膜则相当于细胞体的表层,生物神经元的细胞体越大,突起越多、越长,细胞膜的面积就越大。轴突是由细胞体向外延伸出来的所有神经纤维中最长的一支,用来向外输出生物神经元所产生的神经信息。轴突末端有许多极为细小的分支,称为神经末梢(突触末梢)。每条神经末梢可与其他生物神经元的树突形成功能性接触,为非永久性的接触,接触部位被称为突触。树突是指由细胞体向外延伸的除轴突外的其他所有分支。树突的长度一般较短,但数量很多,它是生物神经元的输入端,用于接收从其他生物神经元的突触传来的神经信息。
神经元中的细胞体相当于一个处理器,它对来自其他各个生物神经元的信号进行整合,在此基础上产生一个神经输出信号。由于细胞膜将细胞体内外分开,因此,在细胞体的内外具有不同的电位,通常内部电位比外部电位低。
与同学讨论当受到某触觉刺激时你体内信号的传递过程。
延伸阅读
神经细胞信号传递过程
细胞膜内外的电位之差称为膜电位。无信号输入时的膜电位称为静止膜电位。当一个神经元的所有输入总效应达到某个阈值电位时,该神经元变为活性细胞,其膜电位将自发地急剧升高,产生一个电脉冲。这个电脉冲又会从细胞体出发,沿轴突到达神经末梢,并经与其他神经元连接的突触,将这一电脉冲传给相应的生物神经元。图1.18(b)中的信号方向显示了在突触前细胞与突触后细胞之间的这种信号传递过程:神经冲动传到神经末梢时,突触前膜发生兴奋→前膜对Ca 2+ 通透性增大,Ca 2+ 由突触间隙流入突触小体→突触小泡的递质向突触间隙释放→化学递质与突触后膜的特殊受体结合带→突触后膜对钠离子和钾离子尤其是钠离子通透性增大→突触后膜电位发生变化,即兴奋性或抑制性突触后电位。至此完成了信号传递的过程。
计算机是如何模拟人类神经网络的呢?
人工神经网络是对人类大脑系统进行模拟的产物。首先是对生物神经元的模拟,人们将其抽象为一个计算单元,接收多个输入信号,进行综合计算后形成一个输出信号。其次是对整体结构的模拟,将许多人工神经元广泛互连在一起,抽象成一种网络结构,这也是“神经网络”名称的由来,也因此常被称为“连接主义”。
在这样一种基本的网络构造模式下,人工神经元的具体连接方式存在较多的变化。例如,根据网络中是否存在回路,有反馈网络与前馈网络之分,存在回路的为反馈网络,不存在回路的为前馈网络;根据前馈网络的层数不同,可将网络区分为浅层网络与深度网络,4层及4层以下的为浅层网络,4层以上的为深度网络。目前,深度网络大行其道,在很多应用中表现优异,几乎成了人工神经网络乃至人工智能的代名词,但我们不应因此而忽视其他网络类型。以上关于人工神经元具体连接方式的问题统称为结构问题。
除了结构问题,人工神经网络的第二个大问题是学习问题,即如何确定神经网络中的参数,主要是确定神经元之间的连接权值。由于网络参数通常数量巨大,这些参数的确定需要依赖机器学习方法,即在应用神经网络解决具体问题的过程中,根据其表现优劣对网络参数进行调整以使其趋于最优。因此人工神经网络技术与机器学习技术密不可分,虽然机器学习可应用于除神经网络以外的其他方面,但神经网络却离不开机器学习的支持,只有经过学习,人工神经网络才能有效解决问题,正如我们人类的大脑必须经过学习才能具备解决问题的能力一样。作为机器学习问题,可采用机器学习途径中发展出来的方法,同时由于神经网络的特殊性,在神经网络的学习中也有一些特殊的方法,如模拟大脑学习与工作特性的Hebb学习、竞争型学习等。不论其灵感来自何处,神经网络的学习方法都可归入监督学习、非监督学习、强化学习这三大类。
解决了网络结构问题与参数学习问题,我们就获得了解决具体问题的人工神经网络模型。由于人工神经网络的发展离不开机器学习,因此有时也将人工神经网络作为机器学习的一个分支。但从思想源头来看,两者是两种不同的人工智能实现途径。此外,机器学习方法是可以不依赖人工神经网络而独立应用于其他技术途径或问题的。
当未来机器构建出真正的大脑时,你能想象未来世界是什么样子的吗?
延伸阅读
神经计算芯片
图1.19 “硅谷之脑”项目研发的神经计算机硬件
图1.19显示了斯坦福大学的“硅谷之脑”项目研发的神经计算机硬件,图中手指上展现的是该神经计算机的核心神经计算芯片,它复制了人类大脑的结构,使用类似神经元动作电位的神经元脉冲相互交流。这种脉冲行为允许芯片消耗极少的能量,并且即使将之拼接成非常大规模的系统,也能保持节能。这个神经计算芯片包含1280个神经元,神经元的特性及连接方式可以通过外部编程写入,神经元的活动状态还可实时可视化地呈现出来,从而为该神经计算机在实际中的应用提供了便利。这一例子代表了未来神经计算机的可能形态。
人是智慧的,但智慧的人是从哪里来的呢?
搞清楚人类智慧的来源,并将其以某种形式模拟出来,便有可能获得智慧的机器。达尔文的生物进化论告诉我们:人类是从低等生物逐步进化而来的。因此,如果能够模拟人类的进化过程(见图1.20),使机器从没有智能发展到低等智能再发展到高等智能,不也是一种有效的人工智能实现途径吗?进化计算正是这种思想的产物,将生物学与人工智能相结合,模拟生物进化过程,借助进化论和遗传学的有关理论,通过智能体一代一代的遗传和进化,逐渐获得越来越好的智能体,因此进化计算也被称为模拟进化。
图1.20 人类的进化过程
图1.21 机器人形体进化过程
生物进化理论的核心是遗传和选择,通过遗传从上一代个体产生新的下一代个体,再通过自然选择实现优胜劣汰,使环境适应能力强的个体不断繁衍,使更优的基因得以不断遗传和演化,从而使得群体的能力一代一代得到优化与完善。与之类似,进化计算也是利用遗传和选择机制来实现机器的进化的。
以图1.21所示的机器人形体进化过程为例,我们首先随机生成一些形体结构,构成作为进化基础的形体群体。每种形体用“图”这一数据结构来表示。然后通过遗传机制,在这组形体群体中产生新的形体。具体的遗传机制主要包括重组和突变两类,其中重组涉及两个个体,将两个个体的基因结合在一起;突变则仅涉及一个个体,对该个体的基因中的部分元素进行改变。这就类似人类后代的形成:子女继承了父母两人的基因,具有两人的特点,又对重组后的基因进行了改变,从而具有自身的特点。在获得新形体后,对新形体的性能进行测试,如测试其行走能力等,根据测试结果确定新形体的优劣,再基于新形体的优劣确定进入下一代的形体群体。如此一代一代繁衍,最终获得理想的机器人形体。按照生物进化理论,人类形体的形成过程应该也是这样的。
我们希望通过进化计算完全实现机器智能的自我进化,但这一点目前还较难实现。因此,目前主要是将进化计算原理用于人工智能中搜索问题的解决,即在所有可能解中找到最优的或至少可行的解。如前所述,这是人工智能中居于核心地位的技术问题。事实上,上面的机器人形体问题也是一个搜索问题,即在所有可能的机器人形体中找到最优形体。
除了以软件方式模拟生物进化,我们甚至还可以利用这种进化计算的思想来构建新型计算机,完全采用生物进化的机制和手段来实现计算。我们知道进化的基础是基因,基因的载体是脱氧核糖核酸(Deoxyribo Nucleic Acid,DNA)。因此,可以将待计算的问题及其可能的答案用DNA序列表示,然后让其进行生物化学反应,进行DNA序列的发展进化,最后从DNA序列群体中选出最好的答案。这便是DNA计算机。图1.22是DNA计算机的雏形。首先在试管中准备好多个DNA序列,每个序列对应待求解问题的一种答案。然后使其进行生物化学反应,使DNA序列不断繁衍进化。最后利用生物化学手段从进化得到的DNA序列群体中挑出最好的DNA序列,从而得到最优解。这与我们当前所认识的计算机的区别是多么巨大啊!
图1.22 DNA计算机的雏形
人类进化的核心过程是怎样的?如何利用计算机模拟遗传和选择机制?
延伸阅读
人工生命
进化计算的发展不仅对发展人工智能有益,对探索人类起源和验证生物进化理论也有价值。我们可以用进化计算的手段来推演人类的发展进化过程,从而搞清楚人类是怎样形成现在这个样子的,甚至还可以搞清楚人类发展进化的不同可能性,即获得在人类的起源与演化过程中发生变化可能导致的不同结果。这一学科分支被称为人工生命(Artificial Life)(见图1.23)。人工生命是指通过人工模拟具有生命系统特征的过程与系统来探索生命奥秘的学科领域。同时,探索人类自身也是人工智能的使命和归宿。因此,对人类的认识和在对人类的认识基础上发展人工智能互为反面,两者相互促进。从这一点来说,进化计算还有很长的路要走。
图1.23 人工生命与人类进化