符号人工智能是人工智能的一种研究方法,通过显式符号表示对象、关系和知识,并运用规则操作这些表示。此类系统包括逻辑推理系统、基于规则的程序,以及在各种可能行动之间进行搜索的规划系统。与以学习数值表示为核心的方法不同,符号方法会将问题结构的重要方面明确表示出来。形式逻辑学是其主要基础之一,但符号人工智能也涵盖启发式搜索等并非完全围绕逻辑演绎展开的过程。(www-formal.stanford.edu)
历史发展
符号人工智能在20世纪50年代开始崭露头角。艾伦·纽厄尔、赫伯特·西蒙和J. 克利福德·肖开发了“逻辑理论家”(Logic Theorist),这是一个用于发现符号逻辑证明的早期程序。在1956年的达特茅斯会议上,他们介绍了实现该程序所用的表处理语言。这类项目将智能问题求解视为对结构化表达式的操作,而不只是数值计算。(www-formal.stanford.edu)
约翰·麦卡锡开发了Lisp,以支持对符号表达式的计算;其实现工作始于1958年秋。他提出的“建议接受者”(Advice Taker)将这项编程工作与一种构想联系起来:用语句表示信息,并通过推理决定行动。Lisp的列表结构支持表达式的表示与变换,使其成为早期人工智能研究的重要语言。(www-formal.stanford.edu)
1976年,纽厄尔和西蒙提出了物理符号系统假说,认为物理符号系统为通用智能行为提供了必要且充分的手段。他们将其作为一种经验性假说,而不是已经证明的数学定理。他们的论述还强调了启发式搜索:选择有希望的变换,而不是穷尽所有可能性。(web.cs.wpi.edu)
知识表示
知识表示与推理是符号人工智能关注的核心问题之一,即选择能够表达相关信息并支持有效计算的结构。知识库可以包含事实、一般规则和对当前情境的描述。例如,LocatedIn(package, warehouse)表示两个已被表示的对象之间的一种关系。符号的预期含义由对其表示方式的解释赋予,而不是仅由符号的拼写决定。(www-formal.stanford.edu)
命题逻辑表示陈述及其组合,而一阶逻辑则进一步引入变量、量词,以及描述对象和关系的谓词。其他符号结构包括语义网络和框架,它们通过关系或属性集合来组织信息。这些表示方式在表达能力以及所支持的推理过程方面各有不同。(cl.cam.ac.uk)
计算领域的本体规定某个领域中的类、属性、个体和关系。这一技术用法不同于作为哲学分支的本体论。网络本体语言(OWL)提供了形式化定义的语义,使推理系统能够检查一致性,并推导出显式描述中隐含的信息。(w3.org)
推理与问题求解
推理引擎将规则应用于已表示的信息。在前向链推理中,计算从已有事实出发,反复推导其后果。在后向链推理中,计算从查询或目标出发,寻找能够确立该查询或目标的规则及支持性事实。哪种策略更合适,部分取决于任务是要推导众多后果,还是回答某个特定问题。(cl.cam.ac.uk)
一个简单的演绎推理例子是,将“所有经过检查的包裹都已获准放行”与“包裹A经过了检查”结合起来,推得“包裹A已获准放行”。这说明了存储的事实与推导出的结论之间的区别。逻辑上可靠的推理过程能够保持前提的真值,但不能证明这些前提准确描述了现实世界。(cl.cam.ac.uk)
符号方法求解问题时,也会在状态、表达式或候选解之间进行搜索。启发式方法用于指导优先考察哪些备选项。在自动规划中,行动通过其前提条件和效果来描述,系统则寻找一系列行动,将初始状态连接到目标。理查德·法イク斯和尼尔斯·尼尔森于1971年提出的STRIPS,将一种用于Shakey机器人项目、具有重要影响的规划方法形式化。(web.cs.wpi.edu)
专家系统将编码后的领域知识应用于专门任务。其架构通常将知识库与解释知识库的机制区分开来。这种分离使领域规则可以在不完全重写推理机制的情况下得到修改,不过,从专家那里获取可用知识本身也可能需要投入大量精力。(cl.cam.ac.uk)
优势与局限
显式表示使人们能够检查假设和推理步骤,并可据此解释哪些事实和规则产生了某个结论。然而,可检查性并不意味着大型系统就一定容易理解:冗长的推导以及规则之间复杂的相互作用,仍可能难以解释。因此,符号结构能够为可解释人工智能提供支持,但不能保证其可解释性。(academic.oup.com)
知识获取始终是一项局限。专家可能难以清楚表述非形式化的判断,而人工编码的规则也可能遗漏在其预期适用领域之外出现的情形。常识推理还面临例外和信息不完整等困难。非单调推理处理的是新增信息可能使先前结论失效的情况;这与经典演绎不同,后者在增加前提时不会失去已有的推论。(aaai-24.aaai.org)
框架问题关注的是:如何表示行动发生时哪些事物保持不变,同时避免为此列出数量庞大、实际难以处理的持续性陈述。更一般地说,符号系统必须在表示的表达能力与推理的计算成本之间取得平衡。限制表示语言可以提高计算的可处理性,但也会限制它能够直接表达的内容。(www-formal.stanford.edu)
与基于学习的人工智能的关系
符号人工智能常被拿来与联结主义对比,尤其是与学习分布式数值表示的人工神经网络对比。这一区别并不等同于“推理与学习”的对立:符号系统可以纳入学习获得的知识,而神经网络系统也可以执行涉及推理的任务。(academic.oup.com)
神经符号人工智能将神经网络学习与显式符号表示或推理过程相结合。其设计包括由神经网络组件识别实体并交给推理系统处理,以及将符号约束纳入学习目标等方式。这些组合旨在发挥互补能力,但整合也带来了如何在不同表示之间转换,以及如何保留符号约束含义等问题。(arxiv.org)