尽管神经元网络对很多专门问题的确非常有效,但仍未解决通用智能系统的核心问题。因为“思维”(或称其为“智能”、“认知”等等)不能被简单看成用数据拟合一个函数。本文试图说明,为什么仍有理由认为思维遵循某种“逻辑”,但这种逻辑不是“经典逻辑”。经典逻辑并没有错,但是在知识和资源不足的情况下不能用,而非公理化逻辑则正体现了在这种情况下的理性原则。
我在《人工智能迷途:计算机的高技能等于高智能吗?》中介绍了“通用人工智能”的概念,并在《计算机会有超人的智能吗?》中提到了我设计的“纳思”系统。这个系统的全名是“非公理化推理系统”(Non-Axiomatic Reasoning System,NARS)。顾名思义,我试图构建一个遵从逻辑规则的计算机推理系统,以此实现通用人工智能。
有些对人工智能有了解的读者看到这里已经开始摇头了:“基于逻辑的人工智能不是条死胡同吗?现在最有希望实现人工智能的技术不是深度神经元网络吗?”我在《机器是如何被骗并骗人的?》中已经简单说明了我对神经元网络的看法:这项技术对很多专门问题的确非常有效,但仍未解决通用智能系统的核心问题。
“思维”(或称其为“智能”、“认知”等等)不能被简单看成用数据拟合一个函数。当然,神经元网络有局限性不说明逻辑就没有局限性。实际上,基于逻辑的人工智能所遭到的批评要多得多。下面我们得从头说起。
“逻辑”一般是指正确的推理规则,而也常被引申来指正确的思维规则或论证规则。“首先总结人的思维规律,然后据此构建计算机系统”听起来像是个实现“思维机器”的合理计划。
这里的主要难点在第一步,因为对什么是“人类的逻辑”,学者们仍然是众说纷纭,甚至思维是否真有“逻辑”都是个有争议的话题。这个论题在逻辑学、心理学、哲学等领域已经讨论了两千多年了。一方面,有理由认为人类思维的确有某些普适规则,否则我们完全不可能互相理解或彼此说服。另一方面,对这种规则的严格刻画仅仅获得了有限的成功,而大量思维活动仍处于“无逻辑可言”的境地。
就其内容而言,一个“逻辑”系统主要包括:1) 关于语言的规定,比如一套语法规则。只有满足要求的语句才可以被处理。2) 关于语义的规定,即指出如何在原则上确定语词的意义和语句的真值。3) 关于规则的规定,即指出如何正确地从前提语句组合中推出结论语句。
在历史上影响最大的逻辑系统是亚里士多德建立的传统逻辑和弗雷格、罗素等建立的数理逻辑。
这些“经典”逻辑系统在很多领域中取得了伟大的成就,但在解释人类思维时仍有明显的局限性,包括下列广为人知的问题:·不确定性表示与处理:经典逻辑中的语句非真即假,而人类知识中往往不可能完全消除各种不确定性,尤其是预测、解释、概括、分类等推理活动似乎无法得到完全确定的结论。
·非演绎推理的合法性:人类思维在很大程度上依赖于归纳、归因、类比等推理类型,但它们都可能从真前提中推出假结论,即不具有传统意义下的“保真性”,所以在经典逻辑中均不合法。·可修正的常识推理:那些一般有效,但有例外的“常识”常常在推理中被作为真前提来使用。在认识到例外发生后,这种推理的一些结论需要修正。比如看到一只鸟,人们会依据常识认为它会飞,直到获得相反的证据。