什么是知识表示?
从一般意义上讲,知识表示是为描述世界所作的一组约定,是知识的符号化、形式化或模型化。
从计算机科学的角度讲,知识表示是研究计算机表示知识的可行性、有效性的一般方法,是把人类知识表示成机器处理的数据结构和系统控制结构的策略。
对于一个知识表示方法,通常有以下基本要求:
- 具备足够的表示能力。针对特定领域,能否正确地、有效地表示出问题求解所需的各种知识就是知识表示的能力,这是一个关键的问题。选取的表示方法必须尽可能扩大表示范围并尽可能提高效率。同时,自然界的信息具有固有的模糊性和不确定性,因此对知识的模糊性和不确定性的支持程度也是选择时所要考虑的一个重要因素。
- 与推理方法匹配。人工智能只能处理适合推理的知识表示,因此所选用的知识表示必须适合推理才能完成问题的求解。
- 知识和元知识的一致。知识和元知识是属于不同层次的知识,使用统一的表示方法可以简化知识处理。在已知前提的情况下,要最快地推导出所需的结论以及解决如何才能推导出最佳结论的问题,就得到在元知识中加入一些控制信息,也就是通常所说的启发信息。
- 清晰自然的模块结构:由于知识库一般都要不断地扩充和完善,具有模块性结构的表示模式有利于新知识的获取和知识库的维护、扩充与完善;表示模式是否简单、有效,便于领域问题求解策略的推理和对知识库的搜索实现,这涉及到知识使用效率;表示方法还应该具备良好定义的语义并保证推理的正确性。
- 说明性表示与过程性表示:一般认为说明性的知识涉及的细节少,抽象程度高,因此表达自然,可靠性好,修改方便,但是执行效率低;过程性知识表示的特点恰恰相反。
实际上选取知识表示方法的过程也就是在表达的清晰自然和使用高效之间进行折中。
目前使用较多的知识表示方法有:
谓词逻辑表示法
产生式表示法
框架表示法
语义逻辑表示法
面向对象表示法
基于本体的知识表示法
基于Petri网的表示法
基于模糊逻辑的表示法
基于关系模式的表示法
基于事件关联的表示法
基于决策表的表示法
基于问题归约的表示法