知识图谱 03:知识表示方法
继续沿用前两篇的任务。我们要做一个科技史知识服务系统,并希望它能回答:
詹姆斯·瓦特(James Watt)是工程师(engineer)吗?James Watt 与蒸汽机(steam engine)有什么关系?格拉斯哥大学(University of Glasgow)属于什么类别?为什么系统能根据已有知识继续推出新结论?前一篇已经说明,知识图谱需要概念、类别、实例和层级结构。
但仅有这些还不够。系统还需要一种更进一步的能力:把知识写出来、组织起来、让机器能处理。这就进入了知识表示的方法问题。不同方法回答的是同一个问题:知识应该怎样表达,机器才能存储、检索、推理和利用。
一、知识表示的必要性
如果系统只保存原始文本,它也许能做关键词匹配,但很难稳定地理解对象、关系和规则。
例如,面对“James Watt improved the steam engine”这句话,系统若只是把它看成一句字符串,就不容易进一步回答:
谁是主角?
他属于什么类别?
他与什么技术对象有关?
这说明,知识不能只停留在自然语言层面。
要让机器处理知识,就必须把知识写成更清楚的结构。知识表示的任务,正是把原本分散的知识内容转化为机器可以存储、检索和推理的形式。
延伸阅读:
《知识表示是什么:为什么人工智能离不开知识表示》
二、逻辑表示
最早、最基础的一类知识表示方法,是逻辑表示。它的优点是表达清楚、结构严格。
例如,在当前任务里,可以把:
“James Watt is an engineer”“All engineers are persons”理解为较严格的形式表达。
逻辑表示的重要意义在于:它让知识从“自然语言描述”走向“形式化表达”。
但它也有局限。真实世界知识往往很复杂,若全部依赖逻辑公式,表示和推理都可能变得沉重。
延伸阅读:
《一阶谓词逻辑入门:命题、谓词、量词与知识表达》
三、规则表示
有些知识更适合写成条件判断。这时,就会用到规则表示,特别是产生式表示法。
例如,在科技史任务里,可以设想这样一类规则:
如果某人改进了重要机器,那么该人可以被视为 inventor 的候选;
如果某对象属于 engineer,而 engineer 是 person 的子类,那么该对象属于 person。
这里的重点不是“对象本身长什么样”,而是“在什么条件下可以得到什么结论”。
产生式表示法用“IF–THEN”的规则表达知识,适合表示条件判断与推理链。它是专家系统的重要基础,也可与知识图谱结合,形成“结构化知识组织 + 条件化规则推理”相结合的知识系统。
延伸阅读:
《产生式表示法:规则、条件与推理链》
四、语义网络表示
当知识的重点转向“对象之间怎样连接”时,语义网络表示法就变得很自然。
它用节点表示概念或对象,用边表示对象之间的语义关系。
在我们的任务中,下面这些内容都可以很自然地写成语义网络:
James Watt — improved — steam engineJames Watt — connected with — University of GlasgowJames Watt — associated with — Industrial Revolution“节点—关系—节点”这类表示方式非常直观。它的优势在于:对象和关系一眼可见,层级关系和继承关系也较容易表达。知识图谱正是在这一思路上进一步发展起来的。
延伸阅读:
《语义网络表示法:从节点、关系到继承推理》
五、框架表示
有些知识更适合围绕“对象本身”来组织。这时,框架表示法会更合适。
例如,我们可以围绕“James Watt”组织一个框架,里面放入:
• 姓名
• 职业
• 相关技术
• 关联机构
• 历史背景
这时,知识不再只是一条条关系,而是围绕某个对象形成一个结构化单元。框架表示法特别适合表示“一个对象有哪些属性、属性之间怎样组织”。
延伸阅读:
《框架表示法:槽、侧面、实例与框架系统》
六、其他知识表示方法
除了前面几种,知识表示还有一些重要方法,只是在本专题中不展开为主线。例如:
脚本表示法:适合表示典型情境中的事件序列;
过程表示法:适合表示任务步骤和操作流程;
Petri 网表示法:适合表示状态变化、并发与同步;
面向对象表示法:适合表示对象、属性和行为的统一组织。
这些方法的共同点是:它们都在尝试回答“知识怎样才能被结构化表达”。
延伸阅读:
《脚本表示法:如何表示事件序列与情境知识》
《过程表示法:如何用步骤与操作表示知识》
《Petri 网表示法:如何表示状态、变迁与并发过程》
《面向对象表示法:如何用类、对象与方法组织知识》
七、知识图谱的综合优势
现在回到本专题的核心问题。
既然已经有逻辑表示、规则表示、语义网络、框架表示等多种方法,为什么知识图谱会成为现代人工智能中的重要形式?
原因很简单,它较好地吸收了前面几类方法的优点。
(1)它像语义网络一样,强调对象之间的关系;
(2)它像框架表示一样,关心对象的属性组织;
(3)它可以与规则推理结合;
(4)它还能进一步与 RDF、RDFS、OWL、属性图、向量表示等形式化模型接轨。
对于我们的科技史知识服务系统来说,知识图谱之所以合适,不是因为它“名字新”,而是因为它既能表示对象与关系,又能组织类别层级,还能支持查询、问答和扩展建模。
📘 小结
知识表示方法的核心任务,是把知识写成机器可处理的形式。逻辑表示强调严格表达,规则表示强调条件推理,语义网络强调对象关系,框架表示强调对象结构。知识图谱则整合了这些思路。
“点赞有美意,赞赏是鼓励”
