Chapter 7
机器学习chapter7如何用不精确的概念来推理呢?真正的天才在于评估不确定、危险和相互冲突的信息的能力----温斯顿教堂
7.1推理和学习之间的紧张关系有很长的历史,至少可以追溯到亚里士多德,正如前面提到的,他在他的后验分析中对比了“三段论和归纳”。然而,在他的论文中,亚里士多德几乎完全处理了三段论,这可能引发了西方文明的高度重视。最近,逻辑推理已经从最高声誉的基础上走了下来。正如人们经常指出的那样,人类不懂逻辑。但这并不是唯一的问题。计算机非常擅长逻辑,但我们通常不相信它们会评估不确定、危险和相互冲突的信息——即使我们这样做了,在这方面取得成功的计算机系统通常也不是基于逻辑推理,而是基于从大量数据中学习。本章采用了亚里士多德的格言,即信仰来自两个基本来源:三段论和归纳法,或推理和学习。尽管近年来这个逻辑遭受了打击,但我的目标是描述这两个消息来源如何统一成一个一致的整体。这样做,学习就是首要地位,但推理仍然是至关重要的。在前几章中,我区分了有理论的主题(有解释理论和无理论的主题),我认为关于无理论的信仰具有PAC学习的语义,因为它们首先是通过学习归纳获得的。(一旦一个人学会了这样的信念,它就会转移到另一个人,但即使这样,语义仍然是学习的。)我现在将讨论如何用这种没有理论的信息来推理的问题。这是有一定意义的,因为人类经常对没有理论的主题进行推理。这种推理是有意义的,是理论内容的理论已经被数学逻辑学家长期确立。继19世纪乔治·布尔和戈特洛布·弗雷格的工作之后,在理解数学上严格的推理观点所能采取的形式方面取得了很大的进展。我们现在可以问一些关于数学本身内部推理机制的本质和力量的问题。真理和可证明的概念已经被定义和区分,问题是在给定的逻辑系统中,是否一切真实都是可证明的,所有可证明的都是正确的。从这项工作中发展出来的数学逻辑已经被证明适用于正式的主题,特别是数学本身,并且对这些主题有重要意义要说。到20世纪初,对这一领域的关注已经转移到了知识分子领域的中心舞台。所有的数学问题都能翻译成一种统一的正式语言吗?从一组真理是不言而喻的共同公理中,能有一组错误的公理吗?一些著名的人物,包括哲学家伯特兰·罗素和数学家大卫·希尔伯特,都相信这样一个程序是可以实现的。令普遍惊讶的是,1930年,24岁的库尔特·戈德尔表现出了相反。特别是,他证明了在任何足够丰富的逻辑系统中,都有无法证明的真实陈述。这种发展,虽然看起来是消极的,但却产生了深远的智力影响。这也许是第一个结果,让人瞥见了通过推理可以实现的一些最终\
7.2对于简单的生物来说,一套学习过的反应很可能就足够了。单一学习电路的应用,我称之为反射反应,近似于生活中特定情况的最佳行为。2(在这里,电路这个词的使用意义与我在第4章中介绍它的一般意义相同。)当然,即使对人类来说,这样的反射能力往往就足够了。在开车时,经验丰富的司机被认为可以通过唤起从以前类似的情况中学到的反射反应来应对。他们不需要经过一个明确的推理过程,即考虑替代行动可能产生的替代事件序列。然而,这些反射反应并不足以解释所有的智能行为。有一个地方有更多的东西,这个东西就是推理。如果与数学逻辑或概率推理不同,这种推理要与无理论知识兼容,它将需要能够以有原则的方式操纵不确定和不可靠的知识,从而对预测的准确性提供一些保证。满足这些需求的最简单的推理形式是连续应用两个学习电路,每个电路都具有PAC学习的语义。锁在两个或多个电路可能是有效的情况下,相信单个电路可能已经被学习是不合理的。考虑以下示例。如果你被问及亚里士多德是否爬过一棵树,或者他是否有手机,你可能可以一些自信地回答这两个问题,尽管之前没有机会直接为这两个问题获得很多统计证据。在回答这些问题中的任何一个时,你调用的是一个单一的电路,该电路已经学会了识别一些单一概念的实例,如手机所有权或爬树。对这样的问题做出反射性反应需要你的大脑中有一个经过特殊训练的电路,以一个名字作为输入,输出那个人是拥有手机还是爬过树。实际上是不可理解的。似乎更合理的是,你宁愿应用一系列电路序列,每个电路都封装了一个常识规则。通过这种方式,你会不断地在脑海中的图片中添加越来越多的信息。你首先把亚里士多德看作是一个生活在某个时代的特定的人。然后,您将依次应用一些常识规则来进行一些推论,以建立一个更完整的图景。关于孩子们喜欢爬树的想法和手机被发明的时代的想法将在这些规则中表达出来。其中一些规则可能表达事实,而许多规则没有理论上的内容,并将被归纳地学习。对这个例子的一个可能的批评是,人类没有学习任何关于爬树和手机所有权的规则,仅仅因为这个问题对爬树和手机所有权没有重要价值。如果立即做出这样的决定很重要,那么也许我们会学习对他们的反射反应。因此,推理仍然有可能只对几乎不重要的人为问题有用。如果动物主要通过执行反射任务来生存,那么也许人类的理性只对神秘之谜有用单一学习电路的应用,我称之为反射反应,近似于生活中特定情况的最佳行为。2(在这里,电路这个词的使用意义与我在第4章中介绍它的一般意义相同。)当然,即使对人类来说,这样的反射能力往往就足够了。在开车时,经验丰富的司机被认为可以通过唤起从以前类似的情况中学到的反射反应来应对。他们不需要经过一个明确的推理过程,即考虑替代行动可能产生的替代事件序列。然而,这些反射反应并不足以解释所有的智能行为。有一个地方有更多的东西,这个东西就是推理。如果与数学逻辑或概率推理不同,这种推理要与无理论知识兼容,它将需要能够以有原则的方式操纵不确定和不可靠的知识,从而对预测的准确性提供一些保证。满足这些需求的最简单的推理形式是连续应用两个学习电路,每个电路都具有PAC学习的语义。锁在两个或多个电路可能是有效的情况下,相信单个电路可能已经被学习是不合理的。考虑以下示例。如果你被问及亚里士多德是否爬过一棵树,或者他是否有手机,你可能可以一些自信地回答这两个问题,尽管之前没有机会直接为这两个问题获得很多统计证据。在回答这些问题中的任何一个时,你调用的是一个单一的电路,该电路已经学会了识别一些单一概念的实例,如手机所有权或爬树。对这样的问题做出反射性反应需要你的大脑中有一个经过特殊训练的电路,以一个名字作为输入,输出那个人是拥有手机还是爬过树。实际上是不可理解的。似乎更合理的是,你宁愿应用一系列电路序列,每个电路都封装了一个常识规则。通过这种方式,你会不断地在脑海中的图片中添加越来越多的信息。你首先把亚里士多德看作是一个生活在某个时代的特定的人。然后,您将依次应用一些常识规则来进行一些推论,以建立一个更完整的图景。关于孩子们喜欢爬树的想法和手机被发明的时代的想法将在这些规则中表达出来。其中一些规则可能表达事实,而许多规则没有理论上的内容,并将被归纳地学习。对这个例子的一个可能的批评是,人类没有学习任何关于爬树和手机所有权的规则,仅仅因为这个问题对爬树和手机所有权没有重要价值。如果立即做出这样的决定很重要,那么也许我们会学习对他们的反射反应。因此,推理仍然有可能只对几乎不重要的人为问题有用。如果动物主要通过执行反射任务来生存,那么也许人类的理性只对神秘之谜有用然而,更基本的论点可以支持额外的推理能力。学习电路的链可以使应用单个学习电路无法实现的能力。例如,所需的单个电路可能是属于可学习的类之外的形式,但它可能相当于一对可以分别学习的电路。所以,继续使用亚里士多德,一旦我们认识到他是人类,可能会有一个简单的条件来决定他是否曾经爬过树。然而,如果不首先确定所涉个体的物种,一个关于什么可以爬树的一般标准可能太复杂了,不可能在可学习的类别中。与PAC学习本身一样,通过推理得出的结论有时将被允许是错误的,仅仅因为学习到的规则有时被允许是错误的。我们永远不能绝对确定我们的结论;亚里士多德可能已经在宇宙中激起了足够的好奇心,吸引了带着手机的外星游客。然而,即使在存在所有这些不确定性的情况下,原则推理也有一定的保证\
7.3在半个 世纪的人工智能研究过程中,理解推理的努力遇到了几个挑战。我认为四种计算复杂度、脆性、语义和基础是与本文提出的方法最相关的方法。我解决所有这些挑战的方法是确保在推理系统中所表示的信息与这种表示本身之外所指的内容之间存在某种明确的关系。这种关系将与PAC学习相同,并将被称为PAC语义。第一个挑战是不可计算性和计算复杂度的障碍。在第5.1节中,我引用了图灵的引用,在推理等同于数学逻辑的背景下。在其他公式中也发现出现了类似的复杂性问题。事实上,图灵证明停止问题是不可计算的,可以看作是对所谓的形式主义末日的早期预警。如果一个框架太宽泛,不允许高效的计算,那么在一个正式的框架中表达我们所希望的东西往往是徒劳的。我不接受这种形式主义本身就注定要失败。挑战在于确定一种有效的形式——一种足够广泛到手头的任务,而不是广泛到计算上难以处理的形式。就像学习和进化一样,我们必须再次在锡拉和查里布迪斯之间航行。考虑到我们对计算复杂度问题的讨论程度,我将在这里不进行进一步的讨论。\
7.4脆弱性的挑战 几十年来,人们付出了广泛的努力,向计算机灌输知识,使它们能够回答常识性的问题。主要来说,知识是由人类编程的,一个正式的逻辑系统被用来推理这些知识。3总的来说,这些努力到目前为止只取得了有限的成功,而且在程序员没有预见到的情况下,计算机经常会失败,它们给出的反应往往是不合理的,甚至是荒谬的。计算复杂度的障碍本身并不能解释这种失败。即使预期的、有数学原则的演绎过程在允许的时间内得出结论,计算机的结论也往往没有达到目的。造成这种失败的原因必须是,推理系统所解释的编程语句不能捕捉到目标现实。虽然每个编程语句对程序员来说都是合理的,但以程序员没有计划的方式组合这些语句的结果可能是不合理的。 这种失败通常被称为脆性。无论逻辑推理系统还是概率推理系统被实现,在任何没有理论的系统中,脆弱性都是不可避免的。如果所表示的信息本身并不一致,并且与被建模的领域完全对应,那么就不能对推断的准确性提出索赔。虽然这些系统在理论内容上有原则,但它们没有为没有理论提供有用的保证避免这种脆性和实现鲁棒性的唯一方法是让系统学习。谓词微算和贝叶斯概率都是建立充分的数学系统。然而,在这些系统中,面对有限的数据和有限的计算,控制错误的鲁棒性问题并没有得到解决。学习理论确实解决了这些问题,因此是这个企业更合适的基础。4事实上,其优势至少有两方面。首先,根据定义,PAC学习是对计算和数据的鲁棒性。它量化了学习规则的准确性保证如何随着数据和计算越来越多的增长而变得越来越强。如果没有这样的保证,就几乎不能说任何不太完美的系统。其次,一个学习系统具有根本的优势,即它可以检查其对世界的预测。如果它发现自己做出了错误的预测,它就可以适应自己,以便在未来更有可能更准确。有了这样的反馈,系统就可以从其知识上的几乎任何差距或不一致中恢复过来。一个密切相关的问题是对噪音的弹性。即使人类提供的一些信息是假的,可能在传播过程中被噪音破坏。令人高兴的是,政治交流委员会的基本模型,它不讨论噪声,很容易扩展以适应它。此外,研究表明,学习算法对某些噪声具有一定的弹性。5例如,如果通过一定概率随机改变例子的标签来引入噪声,那么在没有噪声的情况下可学习的类(SQ可学习类)在其存在时保持PAC可学习的。 赋予机器常识知识的经验努力表明,所需的知识数量比预期的都要高得多。这是困难的进一步来源,但它纯粹的规模更有力地表明了在知识获取\
7.5语义学的挑战我相信,如果没有系统中所代表的信息和它所引用的外部现实之间的明确对应关系,任何用大规模的常识进行推理的系统都不能有效地工作。要理解或构建这样的系统,我们需要对这种对应关系有有原则的看法。采用无原则的观点似乎是不合理的乐观,并希望纯粹偶然地满足这一最基本的要求。 如果一个人用英语表达的日常概念编写机器,那么就需要确保每个单词都以一致的方式使用。自然语言中的几乎任何一个单词都有一定的含义,有些单词有几个不同的含义。如果在编程规则中使用了端口、绿色或保守词等词,那么必须确保每个规则都在完全相同的意义上使用这些概念。如果要区分“端口”的几种含义,例如饮料和系泊场所,则变体必须命名(例如端口1、端口2),并一致使用。这样做的困难已经充分解释了脆性的一个重要方面。PAC学习提供了一种解决这个问题的方法。在每个概念中,比如端口2,系统都会有一个假设或程序来识别它,比如说,“是的,这是端口2的一个例子,”或者“不,它不是”。这个程序将会根据已经被认可的特性来学习。其中一些特征可能是以前已经学过的。其他一些将被预先编程,或者像生物体一样,通过进化学习。后一类的例子是视网膜中的光探测器或计算机的相机输入设备中的像素。但是,无论这些特性是什么,整个系统中的最终产品都将是“端口2”概念的识别器。提供给系统的输入可以由这个识别器进行标记,以指示哪些是“端口2”的例子,哪些不是。如果一个系统中的所有识别器在很大程度上都是一致的,即在大多数自然情况下,附加到输入上的标签并不与识别器所说的话相矛盾,那么我们可以认为该系统在PAC意义上是一致的。然而,如果在自然情况下经常遇到矛盾,那么系统就可以自己检测到这一点,并通过修改其识别器来寻求达到一个更一致的状态。学习的一个重要目标是在这个意义上达到PAC的一致性。对于这样的PAC一致系统,一个概念的意义只是该概念所标记的电路所识别的任何东西。因此,经过PAC一致性训练后,该系统中的概念端口2的含义只不过是以端口2为目标的电路计算的函数。这个电路可能涉及其他已学习的概念,但最终将依赖于接受外部感官输入的预编程特征。该电路计算的函数与外部现实之间的关系是PAC语义之一。\
7.6我们终于遇到了第四个挑战,我称之为接地。它与语义和脆性都密切相关,简单地说,它涉及两个主要问题:声称要表示的知识的范围,以及时间、空间的限制,或PAC语义要准确的其他限制。即使是对于最简单的逻辑语句,也会出现这些问题。想想“所有的人类都是凡人”这一断言。逻辑学家可能会把它说为“对于所有t,如果t是人类,那么t是凡人”,并将其缩写为∀t人类(t)→凡人(t),其中倒a,∀运算符,表示“对于所有人”。即使有这个简单的例子,也有一些明显的困难。这个语句适用的t的范围到底是什么?如果它适用于宇宙中的任何地方,我们怎么能如此确定这个断言是正确的呢?它适用于小说中描述的人类吗?例如,如果我们希望从书面文字中了解这个世界,那么最后一个问题并不无关紧要,因为很多文字指的是虚构的个人。超人是虚构的事实很容易知道我们是否只想了解真实的人。我们总是可以向语句添加一些先决条件,以更详细地指定正在断言的范围。例如,∀t非虚构的(t)→(人类(t)→凡人(t))。这将确保只有对非虚构的人类才能宣称人类死亡。然而,我们在这里有一个无限的回归。我们确定这是一个完整的定义吗?更重要的是,我们如何定义非虚构、人类和凡人这些术语?这些问题不是也有同样的问题吗?请注意,互补的存在量词∃,即“E”的镜像,表示“存在”,提出了所有相同的问题。如果我们认识到人类智能每天都能有效地应用于更没有普遍性和持久性的问题,就可以更欣赏这一挑战的严重性。我们与有不同个性和欲望的不同的人互动。我们需要预测他们的行为,而没有描述他们以及在什么情况下会做什么的公理。我们需要一个原则性的基础来解决这个基础问题。PAC学习通过识别它学习和执行的特定分布D来解决这个问题。如果没有一些这样的基础概念,就不可能有一个学习理论。但是我们如何指定人类个体从中学习的典型情况的分布D呢?如何确保在经常发生的情况下,我们会做正确的事情,以及如何保护我们不做出没有我们经验不支持的草率决定?无论其机制是什么,我们都需要在人工系统中得到同样的保护。如果我们创建了一个系统来执行一个任务,但并没有我们期望它表现良好的目标分布,那么我们真的不知道我们正在试图完成什么。为了以不同的方式强调这一点,我们在这里以一个悖论作为结论,它说明了讨论概率事件而没有定义它们所指的分布的谬误。考虑以下建议,并决定它是否会对你有利。你要去街上随便找一个人,提出比较你每个人身\
7.7心灵之眼:通往世界的针孔在这一节和下一节我将会描述健全的逻辑。它是一种解决推理问题的方法,解决了所有四种障碍 。它用一种共同的语义阐述学习和推理,保持计算的可行性,并且为脆性和接地的问题提供一种有原则的方法。这个能让所有问题被同时解决的设备是一种工作记忆的定量公式 ,一种最初被认知科学家们用更少的计算术语提议的概念,我会把这种计算版本成为心灵之眼。在思考过程中除了我们一般的长期记忆,为了将一个我们正在思考的主题的不同线索桥接在一起,我们利用一些特殊的机置的概念是认知科学的中心思想。这种机制被称作工作记忆,它与其他记忆如短期记忆、意象、注意力和意识紧密联系。它从众多角度被研究过,其中最惊人的发现之一是它是多么有限。认知心理学家乔治·米勒明确的证实了它的有限,他在他著名的论文<< 神奇的数字七加或减二>>中表示,在这个工作记忆中我们只能同时持有七个物体。心灵之眼通俗来说是相同概念。当我们思考时,我们每次通常只能意识到很少的事情。对于我们的讨论,只要回顾十九世纪博学的弗朗·高尔顿提出的以下早期自省就足够:当我忙于仔细思考每一件事的时候,过程对于我来说似乎是这样的:处于我全意识之内的任何时刻的想法似乎都能吸引他们自己的,除了我手边的很多其他想法是最合适的,但是不完全在我的意识范围内。我的大脑好像一个会客厅,全意识指挥,同时两或三个想法在听,还有一个充满或多或少相关想法的前厅,它位于完全意识范围之外。在这个前厅中,与在场厅中的想法最接近的想法似乎以一种机械性的逻辑方式被召集起来,然后轮到他们听了。这样一个受限的 "存在室 "或心灵之眼似乎有局限性,但我认为,它在将我们的认知系统需要解决的学习任务的复杂性保持在可行的范围内,具有关键作用。在传统计算机中,我们有一小部分硬件投资用于寄存器,而在寄存器上存放的信息需要操作和更改。其余的更大一部分硬件要么是存储信息,要么是移动信息。在并行计算机中,处理器和寄存器将被复制,但与通信和存储能力相比,寄存器的投资部分仍然很小。在生物大脑中,工作记忆可能不像今天的计算机中的寄存器那样在物理上被定位。然而,人们认为工作记忆在任何时候所包含的信息都比长期记忆的总内容少得多。通过计算字典中的相关词汇,估计人类能够识别的视觉概念数量约为30,000个。人类长期记忆的总容量可能比这大得多,因为并非所有的概念都是视觉的,而且我们可以回忆具体的事实和\
7.8健全的逻辑:在一个未知的世界推理我们正在靠近描述健全逻辑系统的目标,该系统解决了推理的四个挑战。回顾一下,任何这样的系统,如果要对认知进行建模,需要满足两个要求⑴ 所有的学习和推理过程都需要在计算上是可行的,也就是在适当的参数上是多项式时间。学习过程需要在PAC意义上是稳健的,而不是脆弱的,这样,在充分地进一步接触到知识所涉及的环境后,知识中的任何错误都可以减少。学习的知识需要有清晰的语义和基础。⑵推理需要有一个原则性的基础,也就是说,如果两件各有一些PAC准确性保证的知识被连续应用,那么这样得出的任何结论也应该继承一些准确性保证。为了满足这些要求,我们有心灵之眼,现在我们将比迄今为止做的更正式地讨论它。让我们把心灵之眼在某一瞬间的内容称为一个场景。一个场景包含一个固定的数量,比如说20个无差别的标记,用t1,...,t20,表示,并且有一套固定的关系,可能适用于一个场景中的各种标记子集。每个标记都可以暂时与我们的心眼当时正在考虑的任何东西联系起来。这些关系来自于系统当时知道的一个固定的集合。假设在一个特定的场景中,关系 "大象 "对t1为真,关系 "花生 "对t2为真,关系 "喜欢依次对t1,t2为真;意思是大象代表喜欢花生。这三个关系应用于这些标记上,就可以表现出心灵之眼在某一瞬间的内容,如图7.2左侧所示。健全的逻辑有学习和推理的机制。其新颖之处在于,学习和推理将基于相同的语义,特别是PAC语义。这就是关键所在。在经典的逻辑中,一条规则可以写成\mathrm{\forall}∀ 符号再次意味着 "对于所有"。这句话将被解释为:对于任何两件东西t1和t2,如果第一件是大象,并且第一件喜欢第二件,那么就可以得出第二件是花生。换句话说,如果大象喜欢什么,那么这个东西就是花生。\


图7.2 两个场景。左边的面板在文中已经讨论过了。右边的板块要复杂一些,它显示了一个交易,一个人t2将一个物卖给另一个人t3,并得到t3的钱t4作为回报。不幸的是,这种语义学对于PAC学习来说有些陌生。一个原因是,这个逻辑声明只是一个单向的暗示。它并不打算暗示作为一个花生就一定要让所有的大象都喜欢它。然而,当学习一个概念时,我们希望有一个双向的暗示--无论概念为真时还是为假时,学到的概念都应该是目标概念的一个良好近似值。由于这个原因,我们需要学习以下形式的规则"复杂条件''≡花生(t2)其中,符号≡表示这种等价关系,或双向牵连。请注意,这些等价关系可用与逻辑暗示完全相同的方式推理。每当左手边被满足时,我们可以推断出右侧的断言花生t2也是成立的,至少是可能的。现在,机器学习提供的一个优势是,像上述规则中的 "复杂条件 "可以是任意复杂的,只要它可以通过学习获得。本着这种精神,我们将允许一般形式的规则F([\mathrm{\exists}∃ 大象(t1)和喜欢(t1、t2),...]=花生(t2)其中,函数F来自一个可学习的函数类C,它的参数是某些限制性表达式,将在后面描述。在这个例子中,F的第一个参数断言存在(\mathrm{\exists}∃ )是一头大象的某些东西(t1)和喜欢(t2)。这样一条规则的目的是预测任何特定场景下,右侧命名的标记集(就在这个例子中)是否具有某些确定的内容,比如说是花生。对于字典中的每一个词的变体;例如花生,我们可以想像在右边有一个关于这个单词变体的规则。左手边相当于在其他词方面的一个近似定义。更具体地说,每条规则的左手边将表达一个关于场景的标准,以使右手边的概念成立。左手边可能非常复杂,通常会列举出所有常见的条件,对于每一个条件,答案 "花生 "都是可靠的。在这个例子中,许多这样的条件之一可能是 "如果被问到大象喜欢吃什么,该怎么说"。在这种一般形式的规则中,左手边将从PAC意义上的例子中学习。学习到的函数F可能是复杂的--为某物是花生提供证据的条件可能是多种多样的、复杂的。没有人需要有意识地去描述它。重要的是,函数F来自可学习的C类,在这种情况下,即使是捕捉所有常见的花生证据形式的非常丑陋表达式,也可以被计算机和大脑学习。我们的大脑中充满了这样的电路,这并不是不可信的。毕竟,对人类来说,在几百毫秒内确定我们所看到的是花生还是老虎是很重要的。\
健壮逻辑被定义为了规则可以在多项时间内被学习和推理。一个有说服力的可学习类C的候选者似乎是以下内容。左手边被定义为可以被表达为线性分隔符表示的函数类,因此是可学习的,但其中的变量现在是独立量化的表达式(IQES),如"\mathrm{\exists}∃ 象(t1)和喜欢(t1,t2)。"最后这个例子是一个模式的实例,它由一个\mathrm{\exists}∃ ("存在z/)符号组成,是两个关系的连接,一个有一个参数,另一个有两个参数,一个标记在两者中被共享,另一个标记被量化。换一种说法,我们通过用任何其他关系代替elephant()和likes(,),从这个实例中获得同一模式的其他成员,只要它们有正确的参数数量。IQEs有以下两个相互矛盾的方面。一方面,它们在能够表达场景中物体之间的复杂关系方面相当强大。另一方面,它们很简单,因为给定一个特定的场景,这样的IQE对该场景来说要么是真的,要么是假的,而且很容易确定哪一个是真实的情况。由于这个原因,我们可以把每个IQE看作是一个布尔变量,对于任何例子的场景,它的值要么是0,要么是1。这样,我们可以把IQEs当作标准PAC学习中的特征,并使用我们喜欢的任何学习算法。例如,我们可以将布尔值0和1解释为数字,并使用以这些IQEs为特征的感知器算法。我们可以有基于比图示更广泛的模式的IQE,比如有三或四种关系而不是两种。然而,这可能会在学习和推理中产生高得多的计算成本。特别是,如果我们使用一个模式,但没有关于它所定义的IQE中哪些是相关的信息,那么我们在学习过程中就必须接受所有这些信息。这种考虑限制了在实践中有用的模式的规模。我们在这里的方向是这样的。学习将由传统的学习算法来完成,比如感知器算法,但现在的变量将是这些IQEs。在任何一个场景中的推理都是通过调用场景左侧满足的任何规则来完成,用这些规则的右侧的关系来更新场景,并根据情况重复这个过程。\
读者现在可能会问:但这个符号是什么意思?量化的内容是什么?∃ 是指 "宇宙中的某处存在 "吗?∀ 是否意味着 "对于地球上的每个物体"?不,两者都会违反我们对基础的渴望。符号 "∃ "意味着仅仅存在于有关的一个场景中,而 "∀ "意味着对这一个场景中的每一个物体的普遍性。换句话说,要使IQE"∃ 大象(t1)和喜欢(t1,t2)"对某一特定场景中的代币t2来说是真的,该场景中必须存在一些货币t1,使大象(t1)和喜欢(t1,t2)的关系在该场景中成立。同样地,∀ 符号表示场景中的所有对象,而不是宇宙。一般来说,几个变量可以被量化,有些是存在性的(∃ ),有些是普遍性的(∀ )。然而;不同的IQE中的量词必须被独立解释。这意味着,人们不能直接断言存在一个同时满足两个IQE的符号。如果想断言,那么就必须扩展允许的模式,以允许将原来的两个IQE组合成一个可能是两倍大小的IQE,并接受随之而来的更大的计算成本。这些定义的解释是,给定一个规则的左手边和一个特定的场景,人们可以评估该场景中哪些IQE是真的,哪些是假的,从而确定左手边是否对该场景成立。换句话说,人们可以通过场景中的信息来确定一条规则是否适用于该场景。不需要其他知识。一旦我们处于这个位置,我们就可以对所选的可学习类使用任何常规的学习算法。如果是线性分离符类,那么我们可以使用感知器算法。我们为一个固定的模式生成所有可能的IQE的方法数(即通过用允许的任何其他词替换大象来生成z)创造了大量但仍然是多项式数的IQE。重要的是,所需的例子的数量不能过分依赖于这种IQE的数量,其中大部分可以预期是与任何一个自然概念无关的。幸运的是,正如第5.11节所提到的,有一些学习算法是有高效属性的,即大量不相关的特征的存在不会产生过高的成本。特别是,Winnow算法可以学习析取,使用一些随着不相关特征数量增长仅以对数方式增长,而不是以线性方式增长的例子。\我们决不能忽视这样一个事实,即规则的目的是对以前没有见过的例子进行预测。给定一个场景,其中规定了标记上的一些关系,我们希望能够预测其他的关系也成立。在稳健逻辑中,我们将通过应用那些左手边对该场景成立的规则来做到这一点。我们推断出右手边的关系对场景中的特定标记也会成立,至少有很高的概率。我们可以在一个链条中依次调用几条规则,以便陆续填补给定信息所隐含的内容。如果一个人被告知外面在下雨,他就可以利用自己的常识数据库对其他可能隐含的内容做出若干推论。健全逻辑的制定是为了使这种预测的准确性得到一些保证。稳健逻辑系统的技术内容可以总结如下。场景,使心眼的内容的形式化,根据自然的概率分布发生,反映了世界的所有复杂性,正如该心眼所属的个人所感知的。这个分布可以是任意复杂的,而且个人不需要对它有任何了解。然而,可以从该分布的例子中学习规则,这些规则在同一分布的新例子中是可靠的。(这种学习的可能性是计算学习理论的主要内容;我们在第五章中已经描述了。即使在一个太过复杂而无法完全描述的世界里,表达可学习的规律性的规则也是可以获得的)。)与纯粹的学习理论相比,稳健逻辑的附加内容是,它提供了一种通过链接学习规则进行推理的方式,因此,只要组成规则有一定的准确性保证,那么所做的预测也会有一定的准确性保证。所有这些都是在计算上可行的资源和可控的误差下实现的。与标准的机器学习框架相比,鲁棒逻辑操作多对象场景(即心目中包含多个标记--例如,一个是大象,另一个是花生)这一事实增加了额外的复杂性负担。正是这种复杂的情况使得有必要使用IQE来保持计算的可行性。\
7.9 思维无论我们用强健的逻辑作为计算机实现 “思维机器 “的基础,还是作为思考人类认知的基础,我们都需要更具体地询问,头脑中的信息如何高尔顿的 “思想……在我的全部意识中 “的概念,正如我们之前引用他的话,将被操纵。首先,在任何这样的系统中,工作记忆的内容是如何被检查和行动的?在第一种情况下,答案是简单的如下。给定一个特定的场景,长期记忆中的学习规则被检查,那些左手边满足场景并因此适用于它的规则被选中。然后对场景进行修改,以便将右手边的预测添加到场景中。第二,如何选择进入工作记忆的新内容?例如,在作出购买决定时,如果没有 “价格 “的标记,那么为 “价格 “指定一个标记可能是有用的,这样在推理是否进行购买时,可以将这个概念纳入判断。为此,我们可以扩展规则的语法,允许在右手边有一种新的操作符,用于联合目前在场景中没有使用的标记,并将新的期望关系强加于它们。这些只是如何管理这种心灵之眼的两个组成部分。还有其他几个方面也可能对其有效性至关重要。例如,我们还需要一些机制来决定在系统继续思考时将哪些令牌重新分配给新角色。任何包含稳健逻辑的系统都需要一些来封装一些这样政策的管理构架。对于学习和进化,我在前几章中声称,有一些计算模型在变异下是稳健的。对于我们通常所理解的智力现象,我并没有提出这一主张的依据。相反,我声称任何对智能的理解都需要对我所列举的稳健逻辑的标准有一个原则性的看法,而稳健逻辑提出了一个实现这些标准的原则性和可行的方式。 虽然可能有很多种类的智能,但从所学到的信息中进行推理的一些最低限度的能力,以及由此带来的所有不确定性,必须要发挥作用。此外,任何无理论的推理系统,包括人类的系统,都会像我们强大的逻辑一样受到同样的缺陷的影响。把我们认为可能近似正确的信念串联起来是合理的,
但结论也只是可能近似正确,推理链越长,我们不得不接受的错误就越大。\这就结束了我们对学习、进化和从学习的数据中推理这三种现象在生态算法方面的表述。生态算法只包括图灵通用机器所能执行的计算的一个子集。但直到图灵的时代,正是这个子集主宰世界。\