身体的智能:5.4从步态到体象到认知
在我们致力于讨论体象之前,让我们先简单地介绍一下术语。当我们在这里谈到体象的时候,我们是指可以被智能体用来引导它的运动,还可以预测由特定动作(如迈步,抓住杯子或者转头)产生的感觉刺激的(人工)神经结构。我们觉得这样的描述至少抓住了该术语在文献中被使用时的某些本质。
现在回到Puppy开始我们的案例研究。到现在为止我们谈论过了奔跑,物质材料的利用,动态系统,吸引子状态和控制。不过我们还没有说明这一切最终如何导致认知。现在只要画出四足与地的接触相对于时间的关系,就可以很容易地将步态视觉化,如图4.2(a)所示。图中的线段说明了哪只脚在什么时间触地。这些图可以用来识别步态模式。如果相对于一种步态,模式是周期的或者准周期的,那么不仅是外部观察者就连机器人本身都有可能观察出自己的步态模式。在Puppy的某些实验中,机器人没有传感器,这说明它对自己的运动“一无所知”。它是在空中与否只能被外部观察者看到,可以说机器人本身都“不知道”。这里的引号是为了说明我们不是在谈论有关意识的知识或者实际的想法,而仅仅是指关于机器人现在所在的特定运动位相没有任何可用的数据可做判断。如果我们加上一些传感器,如在机器人的脚底装上一些压力传感器,通过传感器收集数据(如用500Hz的频率),然后机器人就可以“知道”它的步态模式。这些信号就可以输入到如图5.3所示的一个人工神经网络中去。
①在科学文献中,体象和与其非常接近的身体图式概念通常是有区别的。根据神经科学家Haggard和Wolpert(2005)的观点“身体图式是指身体的某些部分在空间位置的表征,在身体运动时得到更新……体象是指从外表看身体的表现方式的意识视觉表征。”(就Puppy来说,当它与环境相互作用时,我们能明确地识别出这种结构,但是我们是否愿意称此结构为身体图式或体象却是任意的且并非如此重要的,特别是对Puppy而言,具有“意识视觉表征”到底意殊着什么不甚明了。重要的是,我们总是能明确说明我们正在谈论的事物。因此,从综合方法论的角度看,进一步深入讨论这个区别毫无必要。感兴趣的读者可参照以“体象和身体图式”(Body lmage
and Body Schema)为标题的论文集,见de Preester和Knockaert,2005)。
(a)
(运动输出备份
O网回园图M网网网【M网
(d)
(跳跃)(步行)(跳行)
小跑
(奔跑)
FR
步态模式)
图5.3符号接地,吸引子状态和嵌入式神经网络。说明了机器狗“Puppy”中嵌入的一个神经网络
(a)Puppy的脚上装有压力传感器;(b)输入层从脚上(FR、FL、BR、BL)的压力传感器以及电动机控制信号的复制,即“运动输出备份(M1~M4)”接收信号;(c)回归的连接(曲线箭头)提供了一种短期的记忆,在识别时空模式时是必需的;(d)吸引子状态对应于步态模式(可参见关于吸引子状态的图4.2)。连续的机器人系统中它们是离散可被识别的状态,而且它们可以用符号来命名,比如“步行”、“奔跑”和“小跑”让我们来简单看看神经网络是怎么构造以检测周期性模式的。方式有很多种,
但是没有解决问题的公认方案;我们这里只讨论一种可能性。我们在第3章已经看过一些非常简单的神经网络可以用来控制Braitenberg车辆以使其跟踪或者躲开光源,不过现在我们可以考虑更复杂的神经网络。关于人工神经网络的一般概述,请看插注5.1。在人工神经网络中,总是有一个输入层,把通过传感器得到的数据提供给神经网络。在Braitenberg车辆中,输入层是光传感器或者是接近传感器
(proximity sensor);在Puppy中,我们在其脚上装有4个压力传感器,所以输入层有4个节点,每个代表脚在此刻是否接触地面(是=1,否=0)。这些输入数据可以回归神经网络处理,这种神经网络除了从传感器获得输人之外,也从自身获得输入。
这是通过建立回路来实现的,可以保持特定的周期来激活网络,起到短期或者工作记忆的作用。这种记忆在从传感器数据中顺时间检测有规律的周期模式时是很有用处的。换句话说,系统必须“记住”以前的信号,才能分辨出是不是一次重复。检测周期性模式是一个棘手的任务,因为在真实世界中,没有两个序列是完全一致的。
在和这些变化打交道时,生物的神经网络是最成功的,因为它们是在真实世界中进化出来的。在需要的情况下,它们也能适应环境中的改变。人工神经网络,也许很简单,也在某种程度上拥有这些能力,这也是为什么它们在机器人学中十分流行的原因。如果传感器数据确实包含有规律、重复的模式,那么因为网络本身是一个动态的系统,它会安定于一种吸引子状态。如果智能体向另一种步态迁移,网络也可能会安定于另一种吸引子状态(见图5.3)。但是,在我们可以开始讨论体象前,还缺少某些比较重要的东西。这些模式只代表感觉的输入,但是对于智能体来说没有关于这些模式如何产生的提示。因此,除了这些压力传感器的数据,运动命令―一即产生关节运动的信号一―也必须成为输入的一部分。这些信号叫做运动输出的备份(efference copy),给智能体提供了学习和真实世界交互的因果结构的基础,运动命令让机器人用这种方式运动,反过来产生了传感器数据,输入了神经网络的输入层。这就是体象的基础因果结构。
插注5.1面向适应行为的神经网络
神经网络是大脑的抽象计算模型,它们执行了一些有些人愿意称为大脑型的计算。
自然的大脑有几点特性对于要和真实世界交互的智能体来说是特别有用的,我们想让人工大脑,也就是神经网络至少在某种程度上实现这些特性。第一,大脑可以兼容错误和噪声,如它们可以在数据的片断破损或者有噪声的情况下运行。在真实世界中,这样的例子比比皆是,只要想想有名的“鸡尾酒派对效应”就可以了。当你参加一个鸡尾酒派对并和别人说话的时候,不管周围有多吵,你还是可以明白他或者她在说什么。第二,自
①在步态横式图中,我们能通过在某一时间点画一根垂线,并观察是否4根线(对应于Pupy的四足)与垂线交义与否来决定输人层的状杰,如果某根线确实交义了,那么相应的期在那不品间是号地接触的,反之亦然。
然的大脑可以进行泛化(generalize),它们即使遇到从来没有遇到的情况也还是可以运行。
这点的价值不可低估,因为在现实世界中没有两个情形是完全相同的(你可以认出你母亲的脸而实际上她不可能看上去完全一样;这取决于你视网膜上的视觉刺激和距离、照明情况、你是从正面还是侧面看她,有没有化妆,发型的不同等)。第三,神经网络有很大的可塑性;它们可以适应机体的改变,如机体从婴儿成长为成人。第四,它们本质上是
|学习系统;它们一直在学习并且不断地提高自己的能力(这是我们希望任何一个智能系统都应该做到的)。最后,神经网络是大量并行的,它们处理分散的模式(如从不同传感器通道传入的刺激)而不是离散的符号。这说明尽管单个的神经元速度很慢,它们可以很快地反应;如果想要在真实世界快速地运动,这个特性是绝不可少的。
关于各种各样的神经网络有大量的文献,不过它们都可以用几点特性来概括。它们由节点(人工神经元)组成,每个神经元都通过加权系数或者简称权(人造的突触)和其他(一般是很多)神经元相连接。这些节点有一个激活水平,可以用一个数字来表示,这个数字可以用以表示神经元的激活频率,也就是它每秒钟产生的脉冲个数。在生物的神经网络中,一个神经元可以产生的脉冲越多,它也就越活跃。节点可以通过在连接上传播信号的方式相互影响彼此的激活水平。通常当一个节点从其他的节点所接收到的总和超过一个特定阀值的时候,它就被激活。权值表示着突触连接的强度,也用数字来表示,说明一个神经元对其所连接的其他神经元影响的程度。神经网络的“个人历史”或知识就保存在这些特定的连接强度中。如果给定神经网络现在的状态还有输入,它们可以通过某种学习方式来获得知识,使得连接发生改变。一个有名的例子是Hebbian学习法则,说明同时被激活的神经元之间的连接被加强。
对于机器人使用的神经网络,有一个输入层连接机器人的传感器、摄像头、脚上的压力传感器、红外传感器等,一个或者几个神经元的内部层(也经常被叫做隐藏层),还有一个输出层连接电动机系统。隐藏层经常有所谓的回归连接或者回路,这样可以维持它们的激活,如实现某种短期的记忆,即输出层节点的激活不只是由神经网络的输入决定的,也是受之前隐藏层的值影响的,也就是说,受神经网络最近的历史影响。输出层的激活用来控制电动机,从而控制机器人的实际运动。
真正令人吃惊的是尽管人工神经网络是从大脑经过许多抽象而来,它还是十分强大的,因此它们在机器人领域中也变得十分流行,尤其是有关适应性机器人的方面。虽然生物的大脑比人工神经网络在许多方面都更为优越,神经网络还是取得了许多骄人的成绩,如在模式识别,产生运动模式和感觉一运动协调等方面。
在科学文献中关于各种各样的神经网络有数以千计的出版物,但它们可以大致地被归入4大类(这部分是为了对技术方面更感兴趣的读者准备的)。第一,就是经典的前馈式神经网络,连接只是从输入到输出,这种类型非常适合于许多分类和模式识别类问题(举例说,很适于从脑扫描中识别肿瘤的图像)。第二种,动态网络,包含有回归连接;
这种类型和生物学的实际情况更接近并可用来控制周期性运动(走路或者奔跑)或者用来|
识别周期性的模式。这种类型虽然也是连续的,但是有吸引子状态(atractor
state),可以与一些类型的符号处理相连接,如我们在本章所展示的一样(见图5.3)。第三种,脉冲式|
神经网络,从生物学角度看,更为真实,因为神经元不仅有一个代表平均脉冲频率的激|
活水平,而且神经元在特定的时间产生单独的脉冲。这大大提高了它们的能力,因为脉冲之间的时间间隔所蕴涵的信息是可以被利用的。这点在语音处理等时间起决定性作用的场合是重要的。最后一类神经网络――从生物学角度来看也是很真实的一―其基础是神
|经调控(neuron modulation),即突触的活动是受被称为神经调控器的人工分子控制的。这些分子控制着突触什么时候应该学习,也就是说,什么时候它们应该改变这些突触的权值。例如,我们可能希望一个机器人只在它成功地握住一个瓶子的时候学习,而不是它失败的时候。总的来说,神经调控器很大地提高了神经网络的适应能力。
大脑有着数以亿计的神经元,是真正并行的,但人工神经网络中的大部分并行还是由一个串行微处理器仿真实现的,因为每个神经元的激活状态需要一个一个地被更新,所以这需要很多的计算。这说明实时处理并行的好处被减弱了,并行只是概念上的,并非真实的。因此,尽管现在已经有了非常强大的微处理器,计算速度对于必须在现实世界工作的机器人来说,还是一个真正的瓶颈,这也是为什么在大部分的机器人中,倾向于应用简单的神经网络。比如说,因为计算量非常大,所以脉冲式神经元模型不会经常使用。随着以后更多并行硬件被开发出来,这点有可能被改变;但是暂时我们还是只能使用串行处理器仿真并行的神经网络。(神经网络的发展历史在第2章已经被简单地概括了,在这里我们就不详述了)。
即使我们有了更强大的并行处理器,这也不能单独解决机器人的神经网络设计问题,因为神经网络必须和机器人的形态一起发育。举例来说,只重视神经网络的设计,不能解决在真实世界识别物体的问题,然而一个发育的,具身性的方法却有可能最终解决这样的问题,因为它允许和环境的积极交互,因此产生了必需的感觉上的刺激(见第4章)。
这是非常简单和基础的。因此让我们思考一下我们想如何从这里继续,也就是如何取得一个我们想称之为符号处理的行为。如果我们在网络中已经有了不同的吸引子,我们应该如何处理它们?或者说智能体如何处理它们?想象一下如果观察者并非人类,而是其他动态神经网络(或者网络的其他部分)“观察”第一个网络的行为(这种想法很接近于Minsky’sA和Bbrains;Minsky,1985.)。这些神经网络的吸引子状态一方面受它们所“观察“的网络行为影响,另一方面受它们自己的本身的动态机制影响。这样这些“观察者”网络的活动,特别是吸引子状态之间的转换,可以被理解为一种非常简单的“符号处理”,第一个网络的吸引子状态转换可能触发“观察者”网络的状态转换。反过来,这种活动可以影响它们正在“观察”的网络的动态,因为这些网络直接影响着运动,所以这种“符号处理”可以直接影响机器人的行为,这不只是在智能体的内部。在这种方式下,“符号处理”是完全以机器人的大脑–身体系统为基础的。我们在这里用了引号,是要说明这种“符号处理”和传统的观点不同,在那种观点中,符号结构很明确地被编程到系统中了。
我们在这里所说的是很基础的,而且无可否认是推论性的,不过我们觉得这样的提议是有希望的,开启了符号接地问题和关于发育本质的新观点。探索符号处理和神经网络特征之间的联系,成为最近机器人学中一个比较活跃的领域(Inamura等,2004;Okada和Nakamura,2004;Kuniyoshi等,2004)。未来有一个有趣的
可能性就是通过使用某种类似于进化算法的方法,在这些“观察者”网络应该做些什么和它们应该采取什么样的形式方面,减少设计者的偏好性。
在展示这些想法如何被应用于解决符号接地问题之前,也许关于体象的最后的一些评论也已准备就绪。尽管我们相信这种方式有很大的希望,我们还是必须意识到,和生物系统的复杂性相比,我们只是接触了表面。到现在为止提出的关于体象基本想法,应该被延伸到包含其他因素如关于身体形状的不明确的或者明确的信息,肢体的形状,传感器的位置,驱动器的所在,或者还有有关的生理知识0。尽管“Puppy的案例研究很简单,我们觉得不论是在理解真正的认知是如何产生的方面,还是在说明体象概念的方面它都有很大的潜力。综合性方法论的主要优点就在于我们总是可以精确地定位我们正在谈论的事物。因为它的极端重要性,如何建立一个体象吸引了发育机器人学研究者的注意力(Yoshikawa等,2004b;Kuniyoshi等,2004)。
接下来让我们转向符号接地问题。