Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

Symbolic AI

符号 AI,也称为 GOFAI,通过人类可读的符号、显式规则和逻辑进行推理。了解专家系统的工作原理、局限性和神经符号 AI。

符号人工智能是一种人工智能(AI)方法,它将知识表示为人类可读的符号,例如 bird、penguin 或“苏格拉底是人”,并通过明确的规则、逻辑和搜索进行推理。从 1956 年的达特茅斯研讨会到 20 世纪 80 年代,符号人工智能一直主导 AI 研究。哲学家 John Haugeland 后来于 1985 年将其称为“老派人工智能”(GOFAI)。符号系统得出的每个结论都可以追溯到人类编写且能够读懂的规则,因此具有可审计性;但系统中的每一条知识都必须手动编写,因此难以扩展。

符号人工智能的工作原理#

符号系统由两部分组成。知识库使用一阶逻辑、if-then 产生式规则或知识图谱等形式语言存储事实(“苏格拉底是人”)和规则(“所有人都会死”)。推理引擎应用规则推导出未存储的事实(“苏格拉底会死”)。正向链式推理从已知事实出发,执行所有满足条件的规则,直到不再产生新事实。反向链式推理则从目标出发,反向推导能够证明目标的事实;逻辑编程语言 Prolog就采用了这种策略。

这种方法的理论基础是 Allen Newell 和 Herbert Simon 于 1976 年提出的物理符号系统假设,该假设认为,操作符号对于通用智能既是必要条件,也是充分条件。下面用几行纯 Python 代码就能实现正向链式推理引擎:

# Knowledge base: IF every premise is a known fact THEN add the conclusion
rules = [
    ({"has_feathers", "lays_eggs"}, "bird"),
    ({"bird", "cannot_fly", "swims"}, "penguin"),
]
facts = {"has_feathers", "lays_eggs", "cannot_fly", "swims"}

# Forward chaining: keep firing rules until no new fact appears
changed = True
while changed:
    changed = False
    for premises, conclusion in rules:
        if premises <= facts and conclusion not in facts:
            facts.add(conclusion)
            changed = True
            print(f"{conclusion} <- {sorted(premises)}")

该引擎会先打印 bird <- ['has_feathers', 'lays_eggs'],然后打印 penguin <- ['bird', 'cannot_fly', 'swims']:只有第一条规则添加了 bird,第二条规则才会触发。每一行输出都完整解释了结论成立的原因;这类推理轨迹正是可解释 AI(XAI)方法试图为神经网络重建的内容。

专家系统#

20 世纪 70 年代和 80 年代,符号人工智能通过专家系统进入工业领域。斯坦福大学的 MYCIN 根据从医生处收集的约 600 条规则,识别严重感染背后的细菌并推荐抗生素;Digital Equipment Corporation 的 XCON 则为 VAX 计算机配置客户订单。专家系统在基本引擎之外,还包含知识工程师和解释功能:知识工程师会访谈领域专家,将其知识编码为规则;解释功能则会重放得出每个答案所依据的规则。

访谈环节成了瓶颈。专家很难将直觉表述为规则,大型规则库会在遇到无人预料的情况时失效,而且系统无法从数据中学习。Doug Lenat 于 1984 年启动了 Cyc 项目,试图手工编码常识,这项工作已持续数十年。20 世纪 80 年代末,专家系统的预算大幅削减,该领域因此进入第二次“AI 寒冬”。

符号 AI 与统计 AI#

统计式 AI从示例中学习模式,是现代机器学习(ML)和深度学习(DL)的基础。这两种范式各自在对方不擅长的领域失效:

  • 符号人工智能:精确、透明,完全不需要训练数据,适用于算术、规划、法规和形式证明。但它无法处理原始感知,因为没人能编写出仅凭像素值识别猫的规则;对于规则未曾预料到的输入,它也会失效。
  • 统计式 AI:直接从数据中学习感知和语言,并能够容忍噪声;但它需要大型数据集,决策过程难以检查,而且语言模型可能生成流畅却错误的回答,即所谓的幻觉。

符号人工智能如今的应用场景#

  • 规则引擎与合规: 税务软件和业务规则引擎会将法规编码为明确规则,因此每个结果都能追溯到生成该结果的条款。
  • 规划与调度: 自动规划器会根据对行动、前置条件和效果的符号化描述进行搜索,为物流、工厂作业和航天器运行制定计划。
  • 形式验证: Microsoft 的 Z3 等 SAT 和 SMT 求解器可证明芯片和软件的性质;Lean 等证明助手则会逐步检查数学证明。
  • 知识图谱: 搜索引擎和 Wikidata 会将数十亿条事实存储为实体和关系,以便查询遍历。

神经符号 AI#

神经符号 AI结合了这两种范式:神经网络负责感知和模式识别,符号组件则负责规则、约束和精确推理。通过函数调用调用计算器、SQL 数据库或代码解释器的语言模型,也采用了相同的分工。在视觉流水线中,像 Ultralytics YOLO26这样的检测器会将像素转换为符号,即所检测到目标的类别名称,再由简单规则对这些符号进行推理:

from ultralytics import YOLO

# 神经感知:检测目标,并将其类别名称保留为符号事实
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
facts = {result.names[int(c)] for c in result.boxes.cls}

# 符号推理:如果存在一辆公交车并且有一个人,则发出警报
if {"bus", "person"} <= facts:
    print("Rule fired: pedestrians next to a bus")

更改规则会立即改变系统行为,无需重新训练。Google DeepMind 的 AlphaGeometry将同样的分工用于数学:神经语言模型提出辅助构造,符号演绎引擎根据这些构造证明结果;两者结合,在 2024 年发表于 Nature 的论文中解出了 30 道国际数学奥林匹克竞赛几何题中的 25 道。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来