1 定义与基本问题
1.1 什么是知识表示
知识表示是人工智能领域中对知识进行形式化编码的方法论体系,其核心目标是将人类认知世界过程中形成的概念、关系、规则和推理模式转化为计算机可操作的结构化符号系统。它既是构建智能系统的技术基础,也是一场关于知识本质的跨学科对话。
1.1.1 符号化与结构化
符号化是将现实世界中的实体、属性、关系等用离散符号替代的过程,例如用“Cat”代表猫这一物种。结构化则强调这些符号之间的组织方式,如分类层次、因果链条或空间关系。两者结合使知识从混沌的经验变为有序的数据模型,就像把散落的珍珠穿成项链——每颗珠子(符号)都有其固定位置(结构)。
1.1.2 核心要求:表达力、推理效率、可操作性
一个优秀的表示方案需满足三个基本标准:表达力指能否涵盖所需知识的范围与精度;推理效率决定计算资源消耗与响应速度;可操作性则涉及知识库的构建、维护与更新成本。三者常相互制约,好比造一辆车——要跑得快(推理效率)就不能装太多行李(表达力),而结构太复杂又会让维修(可操作性)变得头疼。
1.2 知识表示与知识的区别
1.2.1 “知道” vs “表示知道”
“知道”是一种主观认知状态,涉及理解、信念甚至直觉;而“表示知道”则是将这种状态外化为客观符号。人脑知道“热水会烫手”时伴随着疼痛记忆,而计算机的表示仅是在数据中写下“热水 → 高温 → 危险”的链条。前者是体验,后者是编码——机器永远无法真的“烫”到,只能模拟其逻辑后果。
1.2.2 知识表示中的“黑话”与“方言”
不同学派会采用不同的术语体系来描述同一现象:逻辑学家谈论“谓词演算”,语义网开发者偏爱“三元组”,而机器学习研究者则热衷“嵌入”。这些“黑话”本质上是同一问题的不同方言,好比“手机”在重庆叫“机机”,在广东叫“手鸡”——目标一致,腔调各异。
1.3 知识表示的关键挑战
1.3.1 概念化难题
如何将现实世界中模糊、连续、动态的概念切割为精确、离散的符号?例如“椅子”的定义:四条腿?带有靠背?一块能坐的木板算不算?概念化本质上是一种暴力划分,它迫使人类将泼墨般延展的世界塞进棱角分明的格子中。
1.3.2 不确定性与模糊性
现实充满“大概”“可能”“有时候”等模糊表达。知识的绝对确定性在真实世界中几乎不存在,而符号系统天然依赖精确的布尔逻辑。解决方式包括引入概率、模糊集合或置信度标记,但每个方案都会在表达力与效率间做出妥协。
1.3.3 常识知识缺失(比如“猫不会飞”这种人类觉得显然的事)
人类在成长中积累了海量常识:物体落地、人不能穿墙、冰是冷的。但计算机默认对这些一无所知,除非被明确告知。这就是“常识知识缺失”问题——系统无法理解“如果一个人把鱼缸摔了,鱼就会在地上蹦跶”,除非有人事无巨细地写下所有“显然”的规则。更糟糕的是,人们往往忘了把这些“显然”写进去。
2 主流表示方法
2.1 逻辑式表示
逻辑式表示是最基础、最严谨的知识编码方式,通过形式化语言描述命题之间的推理关系,以真值演算为核心。
2.1.1 命题逻辑与一阶谓词逻辑
命题逻辑将知识拆解为“原子命题”(如“天在下雨”),并用“与”“或”“非”等逻辑连结符组合。一阶谓词逻辑在此基础上引入对象、性质与关系,能表达“对于所有x,如果x是鸟,x会飞”。后者更强大,但推理复杂度也更高——就像从算数提升到了代数。
2.1.2 描述逻辑(DL)与语义网标准
描述逻辑是谓词逻辑的轻量级子集,专注于概念层次与角色关系,常用于本体工程。它与OWL(Web本体语言)、RDF(资源描述框架)共同构成了语义网的标准基石,让网页不再仅仅是供人阅读的文档,而成为机器可理解的知识图谱。
2.1.3 非单调逻辑:“翻脸比翻书还快”的推理方式
经典逻辑是单调的——增加前提不会撤销已有结论。但真实世界经常“打脸”:知道“鸟会飞”,发现“企鹅是鸟但不会飞”后,原有结论便需撤回。非单调逻辑允许在获得新信息后推翻旧的推导,通过缺省推理或否定为失败实现这种“翻脸”功能。
2.2 语义网络
语义网络以图结构表示知识,节点代表概念或个体,弧(即边)代表概念间的关系。
2.2.1 节点与弧:就是画圈圈连线
直观性是其最大优势:画一个“老鼠”节点,用弧连接到“哺乳动物”节点,再连接到“动物”节点。每个圈圈都是一个概念,每条线就是它们之间的关系——整个网络宛如一张巨大的概念地图。
2.2.2 IS-A关系与继承(猫是动物,所以会呼吸)
“IS-A”(“是……的一种”)是语义网络中最核心的关系类型。若“猫 IS-A 动物”,且“动物能呼吸”,则根据继承机制,“猫能呼吸”自动成立。这避免了为每个物种重复书写所有性质,犹如在家族谱系中,子孙自动继承祖先的特征。
2.2.3 框架(Frame)与脚本(Script)
框架是描述典型对象的模板,如“人”框架包含“年龄”“性别”“职业”等槽位。脚本用于描述典型事件序列,如“餐厅就餐脚本”规定了“进入 → 找座 → 点餐 → 用餐 → 结账 → 离开”的流程。二者都基于“默认性知识”——槽位可预设默认值,当信息不全时使用常识填充。
2.3 产生式规则
产生式规则以“条件-动作”对的形式封装知识,像一本充满“如果……那么……”指令的手册。
2.3.1 IF-THEN结构的“逻辑密码”
每条规则形如“IF(前提)THEN(结论)”,例如“IF 发烧 AND 喉咙痛 THEN 疑似感冒”。多个规则构成规则库,系统通过匹配当前事实与规则前件激活相应后件。这种结构直观易懂,像极了程序员写控制流,只是规则是显式的知识而不是隐藏的代码。
2.3.2 正向推理与反向推理
正向推理从已知事实出发,不断匹配规则推导新知;反向推理则从目标假设开始,逆向搜索能证明该假设的事实。前者适合监控式系统(如报警器),后者适合诊断式系统(如医生问诊最后确诊)。
2.4 本体(Ontology)
本体是对共享概念模型的明确形式规范,试图从“哲学概念”转变为“工程工具”,对领域知识进行正式的、可复用的描述。
2.4.1 从哲学概念到工程工具
哲学中的本体论研究“存在是什么”,而人工智能中的本体则是“为了让机器理解,我们约定对存在的描述方式”。例如,一个医疗本体将定义“药品”“疾病”“病人”之间有何关联——重点不在本体本身,而在那些共识性的分类与约束。
2.4.2 OWL与RDF:让知识变成可复用的乐高积木
RDF提供基础的三元组(主语-谓词-宾语)数据模型,OWL则在此基础上提供丰富的建模原语(等价、传递性、互逆等)。开发者可用这些“积木”组装出领域知识结构,并与其他本体相互引用,形成全球共享的语义网络。好比乐高——不同公司用同一规格的砖块,拼出各自的城堡后还能连成一片。
2.4.3 本体工程中的“欧洲中世纪行会”现象(术语大战)
不同团队开发的本体常因术语选择、粒度粗细、分类标准不同而产生冲突。一个常见场景:A本体将“草莓”归为“浆果”,B本体却将其归为“聚合果”。当系统要整合二者时,就引发“哪些词能代表什么”的激烈争论——场面堪比中世纪行会划分地盘时互相指责对方不专业。
2.5 分布式表示(向量与嵌入)
分布式表示用高维向量表示知识,强调实体间的语义相似性通过向量空间距离度量,而非显式符号关系。
2.5.1 词向量与知识图谱嵌入
词向量(Word2Vec等)将单词映射为实数向量,知识图谱嵌入则将实体与关系也映射为向量。这些向量的几何特征(如方向、长度、夹角)反映语义特征(如“男人”+“皇室”≈“国王”)。它们不再依赖人工定义关系,而是从数据中自动学习。
2.5.2 潜语义空间:把“国王-男人+女人”算出“女王”
微观上最有名的演示:词向量空间中的向量运算“(king - man + woman)”得到的向量与“queen”的向量最接近。这并非符号推导,而是统计规律的直观体现——计算机不会说“女王是女性君主”,但知道语义相似的向量挨在一起。
2.5.3 符号主义与连接主义:相爱相杀一百年
符号主义主张逻辑与显式规则,连接主义痴迷于神经网络与统计学习。二者长期对立:符号主义批评连接主义“无法解释推理”,连接主义回击符号主义“无法处理大规模真实数据”。然而互补的诱惑始终存在——符号系统提供可解释的骨架,连接系统提供柔韧的血肉。近年“神经符号系统”的兴起正试图调停这场世纪论战。
3 推理机制
3.1 演绎推理
演绎推理从一般性前提推出个别性结论,是逻辑中最“保险”的推演方式:若前提真,则结论必真。
3.1.1 三段论与保真性
三段论是最经典形式:“所有人都会死,苏格拉底是人 → 苏格拉底会死”。演绎推理的保真性意味着只要前提正确、推理形式有效,结论就绝对可靠——这是逻辑学家的理想,也是现实推理的黄金标准。
3.1.2 逻辑编程(Prolog)的“闭着眼睛输入事实”
Prolog语言基于一阶谓词逻辑,用户只需声明“什么是真”和“规则是什么”,系统便自动执行演绎推理。例如写下“父亲(X,Y) :- 男性(X), 父母(X,Y)”,再输入“父母(张伟,张小明)”“男性(张伟)”,系统就能推出“父亲(张伟,张小明)”。这就像闭着眼睛输入所有事实,然后让机器替你翻出结论。
3.2 归纳推理与溯因推理
归纳与溯因是从特殊到一般的“冒险”推理,结论不一定保真。
3.2.1 从例子到规则(统计学家的浪漫)
归纳推理观察多个例子后总结规律:“见过100只天鹅都是白的,推断天鹅都白”。这种推理不严格——第101只可能是黑天鹅。但它是科学发现、机器学习的核心:从数据中抽象模型,哪怕随时可能被反例“打脸”。
3.2.2 最佳解释推理(“一定是保姆干的!”)
溯因从结果推测原因:“屋里湿了,而今天没下雨,那么一定是水管爆了”。推理路径不唯一,需从众多可能原因中选出“最佳解释”。人类侦探小说中常见的“一定是保姆干的!”即为溯因推理——虽然有时好猜,但经常跑偏。
3.3 非单调推理与默认推理
非单调推理允许在获得新信息时撤销已有结论,更贴合人类认知的灵活性与实用性。
3.3.1 假设世界不变,除非有证据打脸
默认推理依赖于“默认规则”:假设“鸟会飞”,除非明确指出某只鸟跑偏(如企鹅)。这种“除非有别的情况”的推理方式保障了系统能在信息不完备时正常工作,但随时准备接受新证据的打脸。
3.3.2 封闭世界假设与封闭世界假设(“没说不代表不行”)
封闭世界假设(CWA)认为未知即为假:数据库未列出“张三的配偶”,则默认张三未婚。开放世界假设(OWA)则认为未知不代表真或假;系统只是暂时不知道。语义网采用OWA(谷歌不会因为你没写“会飞”就认为猫不会飞),而专家系统常用CWA(若未录入副作用,药物即无毒——反例风险自负)。
3.4 概率图模型与模糊推理
概率图模型处理不确定性,模糊逻辑处理适度的不精确性。
3.4.1 贝叶斯网络:计算“下雨导致堵车”的概率
贝叶斯网络用有向无环图表示变量间的条件依赖关系,例如“下雨 → 路面湿 → 车祸 → 堵车”的因果链。通过联合概率分布,系统可计算“已知堵车时,下雨的概率是多少”。这是医学诊断、垃圾邮件过滤、天气预报的有力武器。
3.4.2 模糊逻辑:不太冷也不太热,就是有点“暖”
模糊逻辑将真值从{0,1}扩展到[0,1]区间,允许部分隶属度。例如“温度30°C”对“热”的隶属度为0.8,对“有点热”为0.5。空调控制器据此调节制冷量,而非简单地送“冷风”或“热风”的二选一。模糊逻辑的哲学是:“冷”“热”是光谱,而非开关。
4 应用与案例
4.1 专家系统
专家系统模拟人类专家在特定领域的决策能力,核心构成包括知识库(存储显式知识)与推理引擎(应用知识)。
4.1.1 从MYCIN到医疗诊断
MYCIN(1970s)是感染病诊断先驱,通过几百条产生式规则判断病原体并推荐抗生素。其准确率一度超过部分医生,但因知识维护困难、推理过程不透明而始终未能走出实验室。如今医疗诊断系统(如Watson for Oncology)范围更广,但仍面临“知道很多,但未必懂”的尴尬。
4.1.2 知识库的“瓶装智慧”如何过期
知识库如一瓶瓶封装好的智慧,但现实世界在变:药品禁忌更新、疾病分类修订、新疗法涌现。若知识库未及时同步,瓶中的智慧便成了失效的自嗨。维护成本往往比开发更高——这是所有专家系统的共同噩梦。
4.2 语义网与知识图谱
语义网旨在让网页内容可被机器理解,知识图谱是其实现形式之一。
4.2.1 链接数据:让网页也学会“交朋友”
链接数据理念是:网页不仅是供人阅读的文档,还是可互相引用的数据源。比如“北京”的网页可链接“中国人口”“奥运举办地”“雾霾报道”等多种数据节点,形成一张跨领域的知识网络——网页间不再只是超链接,而是结构化交互。
4.2.2 谷歌知识面板的“身份验证”游戏
当你在谷歌搜索“爱因斯坦”,右侧弹出的信息面板即为知识图谱的应用。面板上的出生日期、配偶、奖项等数据来自多个权威源。这个面板也是一个小小的“身份验证”游戏——谷歌一边展示信息,一边反问用户“我理解对了吗?”(若用户纠正,知识图谱随之更新)。
4.3 自然语言理解与聊天机器人
知识表示辅助自然语言理解(NLU)系统解析词义、推理用户意图、管理对话上下文。
4.3.1 知识驱动的对话(“机器人,你知道今天星期几吗?”)
当用户问“今天星期几”,知识驱动的聊天机器人需访问日历知识,并根据当前时间输出回答。若系统仅依靠语料库匹配,可能出现“也许你期待的我是一个愉快的话题”之类的回话。知识表示让机器人不再是语料回放机,而是懂得“今天=2025年3月XX日,星期X”的智能体。
4.3.2 大语言模型中的隐式知识表示:全是参数,没有符号
ChatGPT等大语言模型(LLM)不依赖显式的符号知识库,而是将知识编码在神经网络数以千百亿计的权重参数中。它们的回答不是通过检索“周日是休息日”这条语句,而是根据训练数据中关于“周日”的所有语境生成了近乎相同的输出。这种隐式表示有效,但难以追溯“为什么这样回答”——就像你问同学“2+2等于几”,他脱口而出“4”但完全搞不清自己是如何推理的。
4.4 认知架构与通用人工智能
认知架构尝试模拟人类认知过程的整体结构,将知识表示视作系统对世界的“心理模型”。
4.4.1 SOAR与ACT-R:模拟人类大脑的“穷学生”模型
SOAR强调“问题空间”与“通用知识”,把所有问题解决都视为搜索状态空间。ACT-R则更关注认知模块(视觉、记忆、动作等)与符号表示的交互。二者都是“穷学生”模型——尽量用有限的记忆容量、处理速度与资源模拟人类认知的有限理性。它们假设知识消耗资源,所以“节俭”才是真理。
4.4.2 知识表示在AGI中的未来:要么符号当道,要么向量称王
通用人工智能(AGI)的实现路径争论激烈:符号主义者坚持逻辑架构与可解释推理,连接主义者则押注于海量数据支持的神经网络。第三种声音是融合派——顶层用符号系统提供可解释控制,底层用向量表示吸收模糊语义。谁将登顶还无定论,但可以肯定的是,无论符号还是向量,都不会缺席。
5 历史与未来
5.1 萌芽期:逻辑与哲学的老祖宗
知识表示的根源可追溯至哲学逻辑与早期计算机科学思想。
5.1.1 莱布尼茨的“万能字符”之梦
17世纪莱布尼兹提出“普遍字符”(Characteristica Universalis)——用符号表示一切概念,并制定规则组合这些符号以推导新知。他认为有了这套语言,思想冲突时只需“坐下来,拿起笔算一算”。这大概是知识表示最早的乌托邦:妄想用符号包容全世界。
5.1.2 从语义网到Cyc项目:知识的“百科全书”能填满吗?
1984年道格拉斯·莱纳特发起Cyc项目,试图将人类常识编入巨大的符号知识库。三十多年过去,Cyc收录了上亿条逻辑语句,但仍无法覆盖最简单的日常推理——比如“你吃饭不会把盘子吞进去”。知识百科的“填补”始终是西西弗斯式的任务:总有无穷无尽的小常识在等着。
5.2 符号主义黄金时代(1950s-1980s)
50年代到80年代是符号主义的全盛期,专家系统、逻辑编程等成果涌现。
5.2.1 McCarthy的常识:“冰箱不会自己跑路”
John McCarthy提出“常识”是人工智能的关键难题之一。他举过一个例子:“冰箱和空调有什么区别?”前者是放食物的,后者是调节室温的,但人普遍知道“冰箱不会自己跑路(它又不是空调)”。这种微妙差异难以形式化为规则,导致系统经常犯低级错误。
5.2.2 专家系统热潮与“AI冬天”的教训
80年代专家系统被捧为未来,政府与企业大量投资。然而知识瓶颈(手动构建太费力)、维护困难、推理脆弱等问题暴露,加上日本第五代计算机计划未达预期,导致90年代初“AI冬天”——资金缩水,公众失望。教训是:知识表示不能凭一腔热血解决所有问题,现实远比符号系统复杂。
5.3 神经符号学与融合趋势
21世纪后,深度学习与符号系统的融合逐渐成为热点。
5.3.1 用神经网络“猜”符号:这可能吗?
神经符号学试图教神经网络进行符号推理:让网络先“猜”出命题的真假,再核对是否与逻辑规则一致。现有尝试包括“微分逻辑”和“关系网络”。效率与正确率仍在提升中,但方向可行——相当于让一种直觉型演员(神经网络)去学习剧本(逻辑)并照着演。
5.3.2 未来展望:知识表示将不再需要人工编写,但需要人工理解
知识表示正从“手工编码”转向“自动学习”,如同维基百科获取海量知识并进行精炼。理想状态是:计算机从文本、图像等多种模态自动习得知识表示,然后人只需承担解释与验证的角色。这意味着未来的人们可能不用再写“猫是哺乳动物”这样的句子了,但必须能读懂计算机学到的“猫”向量中隐含的情感与常识。
6 争议与吐槽
6.1 符号接地问题:机器真的“理解”了吗?
符号接地问题质疑:符号系统里的标签与外部世界之间存在真正的联系吗?机器中的“杯子”符号是否只指向另一个符号?
6.1.1 中文房间实验:一个关于“懂不懂”的哲学冷笑话
John Searle的经典思想实验:一个不懂中文的人被锁在房间里,接收门缝塞进的中文字条,按手边的英文规则手册(即知识库)查找对应输出中文字条回递。外人以为房间里的东西懂中文,但事实上它只是按手册机械操作。这个实验嘲笑符号系统:你给它一本字典,它看似理解,实则不过是翻翻手册。机器“表示知道”了“中文”,但它真的“知道”中文吗?——可能最扎心的答案是:连“本身”的定义都值得商榷。
6.2 表示与计算效率的“跷跷板”
知识表示的精细程度与推理的计算复杂度往往成为一对矛盾。
6.2.1 越精细的表示,推理越慢(就像天天相亲,对象越多越累)
当你构建的知识库包含数百万条规则时,每次推理都需遍历大量可能性。这好比相亲——搜集信息越详尽(性格、爱好、星座、血型……),越难找到匹配对象。更妙的比喻是:系统像一位强迫症患者,想兼顾所有细节,结果效率直线下降。
6.3 知识表示中的“政治正确”陷阱
知识库的构建者难免带入个人或群体的偏见,导致系统出现歧视性结论。
6.3.1 一个本体如何避免歧视:比如把“护士”默认设成女性?
一个典型陷阱:在构建“职业”本体时,默认“护士”的槽位“性别”为“女”。虽然基于统计的事实是护士女性居多,但直接硬编码会造成系统自动在所有没有提供性别的护士实例上显示“女”。反之,若强制中立化(使用“性别未知”),又会被质疑回避现实。对于知识表示而言,这就像在“真实分布”与“伦理中立”之间走钢丝,稍有不慎就会摔得鼻青脸肿。
6.4 笑话一箩筐:知识表示的“冷梗”合集
知识表示圈素有自嘲文化,以下是圈内流传的几个冷梗:
6.4.1 问:知识表示和修电脑有什么关系?答:都是把“不知道怎么办”变成“知道怎么办”
另一个梗:“知识表示系统开发者最怕听到的需求是什么?——‘把这个世界所有的知识都表示进去,但不要占太多内存’。”第三个冷梗:一个符号主义者和一个连接主义者进酒吧,路过一棵树时被掉落的苹果砸中。符号主义者说:“这棵树应被逻辑规则分类为——苹果树。”连接主义者说:“它的模式表明,约83.7%的观察结果会掉落苹果。”服务员淡定补刀:“你们两个说的都没错,但苹果砸到头的感觉是一样的。”