随着计算机应用水平的提高,人们对计算机的应用不仅是信息的组织和处理,更要求计算机能够理解和处理自然语言,能够进行知识管理。知识资源越来越丰富,传统的知识管理方式遇到了困难,传统知识库的构建方法很难适用于大型知识库的构建[1~3]。发现知识,知识索引与检索,多形式的知识组织与呈现,知识之间的互操作,Web上资源的有效利用,知识的共享和重利用已成为一项迫切而重要的研究课题[4]。知识地图是一种能在语义和知识层次上描述知识的模型,其目的在于以一种通用、直观的方式来获取知识、组织与呈现知识,进行知识的快速检索,实现知识的共享和重利用。
1 知识地图的概念
知识地图(Knowledge Map)的发展覆盖的领域很多,如情报学、哲学、知识工程、知识管理等。知识地图起源于地理上的地图,美国捷运公司最早的知识地图是一张充满知识资源的美 国地理地图。带有索引号或表示层次关系的表格和文件,以及信息资源管理表和信息资源分布图[3,6]是知识地图的早期形式,它侧重于揭示信息资源与各相关部门或人员关系,但未揭示各信息资源款目之间的关系。
情报学理论中布鲁克斯(B.C.Brooks)的“知识地图”[6]是对文献中的逻辑内容进行分析, 找到人们创造与思想的相互影响及联系的结合点, 为用户提供知识之间关系。布鲁克斯的“知识地图”定义主要是基于情报学理论,强调知识的创造以及人的思想,它是一种理想状态的知识地图的定义,但是它的理论还没有真正地在计算机上得到实现[7]。
台湾中原大学贺嘉生教授提出知识地图是以概念图与基模设计的知识库[12]的表示。知识地图包含描述概念属性的概念基模与描述概念关系的概念阶层,它具有概念图的优点,能明确表现概念与概念之间的关系;同时具有基模的功能,呈现概念的相关属性。
台湾国立中山大学梁定澎博士认为知识地图是一个与知识搜寻有关的概念,它告诉人们知识的所在位置,并且将知识与知识间建立关联,把知识按一种层级方式组织起来,让人们在搜寻时可依其层级及所提示的关联性。
国内的知识地图的定义主要侧重于知识的索引和快速检索,如AMT Club的知识地图作为Club知识内容的目录和索引;中国农业科学院农业信息研究所李思经、周国民在成果“科研机构知识管理及其系统研究”认为知识地图 能快速方便形象地完成知识表达和知识检索,形成显性知识、隐性知识的系统管理,其中运用基于XML的组件式知识系统构建技术解决知识管理系统的集成问题。
可见,目前对知识地图还没有统一的定义。本文关注的是知识管理领域中的知识地图。其定义为:知识地图是知识目录的总览,是用于定位知识的知识管理设 施,能将散落的知识汇整起来,予以有效地管理与维护,让人们能够充分地存取、分享、再使用这些知识。它包括两个方面的内容: 一是通过知识资源调查所获取的知识资源目录; 二是目录内各款目之间的关系。
2 知识地图的类型与功能
2.1 知识地图的类型
知识地图的分类方式很多,现有文献通常按照知识地图的呈现方式和功能进行分类。通常,特定类型的知识地图采取特定的呈现方式,具体方式有:
1)信息资源分布图是知识地图的雏形,它侧重于对信息资源与各相关部门或人员关系的揭示,尚未揭示各信息资源款目之间的关系,且多依靠手工来建设和完成;
2)阶层式(hierarchies)、分类式(taxonomies)[6]、语义网式(semantic networks)[4,13]等呈现方式适用于概念型与职称型的知识地图;
3)企业流程图、认知流程图、推论引擎、流程图等主要适应流程型的知识地图。
4)网页形式的知识地图,显示了人员专长以及单位信息、社会网络信息、关系路径等信息。
更为习惯的是根据知识地图的功能和应用对知识地图进行分类。目前,研究较多的知识地图有:
1)企业知识地图??企业知识资产的指南,协助使用者快速且正确地找到所欲寻找的知识。
2)学习知识地图??以概念图与基模设计的知识库的表示。能够将学生所学的概念,和将要学习的概念之间关系表达出来,学生可以以既有的概念为基础,将新的概念建构在其上面,产生新的知识结构。
3)资源知识地图??领域显性和隐性知识的索引。
Guarino的观点则是主张从详细程度和领域依赖程度这两个维度对知识地图进行划分[9]。在具体应用中,最常见的分类依据是知识地图的概念主题和形式化程度来划分。确定知识地图所属的类别,明确知识地图的特征,对知识地图构建过程中不同构建原则方法的选择具有很大的指导作用。
2.2 知识地图的功能
总的来看,知识地图可作为知识表达的基础,并通过统一的术语和概念达成知识共享的目的,主要体现在通信、互操作和系统工程上[3]。 通信方面,知识地图使得人们和组织之间的交流准确无歧义。不同的模型方法、范例、语言和软件工具可以借助知识地图进行转换映像从而实现不同系统之间的互操 作。在系统工程上主要体现在四个具体的方面:①知识地图能够对重要的实体、属性、过程及其相互关系进行形式化描述,使得它们成为软件系统中可重用或者是共 享的组件; ②在知识获取上,使用已有的知识地图作为基础来指导知识的获取,能够提高获取的速度和可靠性; ③知识地图提供的形式化表示可以自动对结果进行一致性检查,使得软件系统更加可靠; ④知识地图可以支持需求的识别以及能确定信息系统的规范[9]。
知识地图在知识管理方面具有下面的功能[10]:
1)导航图的功能??指示知识资源的位置,它能告诉人们到哪里找需要的知识,并通过各种方式引导人们找到所需的知识。例如Microsoft公司把每个人员的能力和特定工作所需知识制作成地图,让员工与团队的配合更加默契[7]。
2)揭示隐性知识??隐性知识存在人脑中,找到拥有知识的人,也就找到了需要的隐性知识。如有哪些人从事过哪些项目,有什么知识背景和经验等,通过 “人力资源”知识节点联系在一起。知识地图还可以将专家的知识、专家资源纳入地图中。微软“知识地图”以人为导向,采用多级知识评估标准将员工所具备和应 具备的技能显性标示出来,便于找到知识源。
3)揭示关系??知识节点之间以及节点与人或特定事件之间的关系。通过揭示款目之间的关系实现知识的提取和共享,如等级关系、相关关系、因果关系、 逻辑关系、评价关系等。每个知识节点与其它存在关系的节点相连,与相关的人员相连,与相关的事件相连,构成知识网络,从中找到所有与节点有关的东西。 IBM知识管理[5]中知识地图的特点是对人、场所、事进行关联,并形成索引。
4)识别不同系统的知识资源??知识地图通过获取、整合现有系统中的知识扩展自身能力。IBM知识地图有信息的自动抓取和知识地图的生成,用户可以利用知识地图进行检索。
5)知识资产清单??知识地图可以作为一种评估知识现状,展示可以利用资源,发现需要填补的空白的工具。IBM知识地图跟现有系统相结合,实现专家定位,可以看到哪些人在线上,是哪方面的专家。
知识地图是一种知识管理工具。显然,知识管理工具和知识检索工具有多种,如数据库、辞典、百科全书、索引典、分类表和语义网络等[11]。 知识地图类似于数据库,两者都能在某种程度上独立于应用程序获得对资料或者知识的独立性。不同的是, 知识地图通过在应用程序之外去确定和管理知识的语义信息而获得语义的独立性,而数据库模式通过建立规范及对应用程序之外存储的数据元素的管理获得资料的独 立性。知识地图在表述知识上是比较完整和全面的,语义信息也很丰富,而且它还提供了对知识推导的支持[12]。
3 知识地图构建技术
3.1 知识地图构建原则
文献[10]中总结了构建知识地图通常要遵守的一些原则,这些原则有:
1)直观信息量尽可能少,减少维护成本 知识产生是动态的,构建知识地图时知识也在产生,因此要考虑知识地图的动态性和扩充性,尽量减少对结构的控制。将其设计成灵活的分布式的输入输出结构,以反映知识的不断增长和更新。
2)以需求为导向 知识地图包含的信息数量以及链接的建立应考虑最终用户的使用,不一定求全,但要实用、方便,这是对知识地图工具的基本要求。
3)确定基础结构 应尽可能预先明确知识地图的设计特性,构成成分、节点关系的定义、链接资料的存贮方法等。如台湾学者提到的概念基模与概念阶层[12]。
4)有长远的维护发展策略 知识地图在使用过程中不断更新,应尽可能从基础用户获取最新、最准确的知识,以保持其时效性和准确性,不断更新。
5)协调组织文化 知识地图的风格要与组织文化相匹配。比如,微软“知识地图”以人为导向,强调企业知识属于企业全体而非个人,促进企业内知识的交流与共享,实现为恰当的工 作找到恰当的知识和恰当的人;采用多级知识评估标准,将员工所具备和应具备的技能显性标示出来,便于找到知识源。
知识地图的构建需要图书馆学、情报学知识和知识库管理技术知识。在知识地图绘制工作中,要制定相应的知识款目著录规则及建立各条款目之间关系的规则, 这些关系包括互见、参见等[10]。
3.2 知识地图的构建方法
知识地图的构建过程包括知识的识别与组织、知识分级、建立联系合展现知识地图几个步骤。同时,知识地图的构建过程是一个动态的,不断地用产生的新知识更新知识地图。
①“知识的识别与组织”主要包括三种活动:知识的识别、组织、审查。使用形式化的方法,按概念、概念的属性、概念之间的关系来对知识进行识别;按语 义联系(即主题)来组织知识;重点是知识审查??审查知识资产及其来源,确定关键知识。透过知识审查,了解所缺乏的知识,知道经常使用的知识、专业术语的 使用、关键工作的相关知识、知识的使用频率、难以获得的知识、那些使用者需要专家等等。
②“知识分级”指将职位知识、用户知识、创造性知识分级,然后将每个人的知识分级;微软“知识地图”采用多级知识评估标准将员工所具备和应具备的技能显性标示出来。
③“建立联系”主要包括三种活动:建立索引、知识配置、个性化。建立索引指建立知识的索引连结。知识地图是动态的概念,索引源有显性知识,有人员、过程等隐性知识的连结。IBM知识地图对人、场所、事相关联,它的索引机制记录何时、何地、何人使用那些知识。
④“地图展现”是根据知识分类,配合专业术语,将知识分门别类地归类在不同的范畴内,并标示其间的关系,用可视化的技术(选择目录等级层次、树形结构或者网状结构)把知识地图展现出来。
3.3 描述语言与辅助工具
3.3.1 描述语言
知识地图的表示方式可以多种多样,如自然语言、框架和逻辑语言等[8,9,14,18]。自然语言是非形式化的表示方法,用 于构建的初期或者文档中进行描述;框架表示法使用框架将概念、概念的属性、概念之间的关系清晰地表示出来,框架代表概念,框架的槽描述概念的属性,表示与 其它概念的关系,其语法是高阶的,框架的槽值可以是另一个框架;逻辑语言主要使用谓词逻辑语言对知识地图进行描述。框架的描述方式比较自然、形象,但是其 本身的推导能力很弱,逻辑语言的推导机制则较强。由于这一点,一些描述知识地图的语言综合了逻辑和框架语言的特性。目前已经出现了许多描述知识地图的语 言,比较有名的有以下几种:
(1)Ontolingua。 它是一种基于KIF(Knowledge Interchange Format)提供的统一的规范格式来构建知识地图的语言,KIF是一种用于不同计算机系统之间交换知识的一阶语言。Ontolingua提供了对类、关 系、函数、对象和公理进行定义的表示形式,它使用Frame支持二阶关系的表示。由Ontolingua构造的知识地图可以很方便地转换到各种知识表示和 推理系统,能很好地适应于不同的系统以及进行系统之间的移植[3,6]。
(2)CycL。它是Cyc系统的描述语言,具有一阶谓词演算能力,扩充了等价推理、缺省推理等功能,还扩展了一些二阶谓词演算的特性。
(3)OIL(Ontology Inference Layer)。它综合了三个方面的特性:描述逻辑提供的形式语义和有效的推导支持、框架提供的建模元语和Web提供的为句法交换标记所提供的标准。因 此,OIL能为开发者提供大量的基于框架的知识地图的建模元语,对知识地图的描述具有描述逻辑的简单、清晰、良定义的语义,并能提供进行自动一致性检测和 包含性确认。
(4)OWL(Web Ontology)。OWL语言是用来定义和实例化Web上的知识地图,它使用RDF/XML的语法形式定义。一个OWL包含描述类、属性以及它们的实 例。OWL定义的知识地图之间是相互联系的,一个知识地图能够显式引用其它的知识地图或知识地图中的信息。
不同的语言其特点不同,各有其适用之处,在具体使用时要根据具体应用选择合适的语言。如Ontolingua利用其易于转换的特性,更适合在知识层次上表示知识,具体的实现可以通过它进行转换,这使得对知识地图的维护与使用它的目标表示系统分离开来[9]。OIL和OWL与Web上一些标准表示相结合的特点,使得它们主要用于Web上的知识地图的表示。
3.3.2 辅助构建工具
为了便于知识地图的开发,出现了很多可以进行知识地图编辑的工具,如Ontolingua Server[9], OntoEdit, Chimaera[11]等。它们能好地辅助进行知识地图的编辑、修改、浏览和维护等工作。
(1)Ontolingua Server。它是比较有代表性的协作式的知识地图建造工具,用于辅助知识地图的协作式开发。可以对知识地图进行浏览、创建、编辑、修改和使用,而且它可 以通过Web来发表、浏览、创立和编辑存储在Ontolingua Server上的知识地图。
(2)OntoEdit。它是知识地图工程环境,集合了基于方法学的知识地图开发以及协调和推导的能力。从方法学角度考虑, OntoEdit主要注重于知识地图开发中的三个步骤:需求规范、精化和评价。
(3)Chimaera。它是基于Web的知识地图浏览的环境,它接受超过15种指定的输入形式的选择,如KIF, Ontolingua, Protege和CLASSIC等,同时还有其它的OKBC兼容的形式。它提供的两个主要功能是:将多个知识地图合并起来,对单个或者多个知识地图进行诊 断。
3.3.3 半自动、自动构建技术
人工智能中许多机器学习的方法被改进应用到知识地图的学习中,实现知识地图自动构建。机器学习中的许多技术也可以被知识地图借鉴利用。借助聚簇技术帮助解决概念的分类问题;增量式的学习方法[4]可以应用到Web上的知识地图的更新中;关联挖掘技术可以帮助从语料库、文本中发现概念,丰富已有的知识地图中的概念,关联规则的发现可以帮助提取概念之间的层次性关系及确定适当的抽象层次等。
将机器学习直接应用于知识地图学习的一个最大障碍是: 知识地图最终是人们可理解的,然而机器学习的结果是非理解的形式。所以需要对机器学习技术进行一定的修改,使其适用于知识地图的学习[8]。
将机器学习应用到知识地图学习中,实现知识地图的自动构建能在很大程度上加快知识地图的构建进程,节省很多的人力和时间。知识地图的学习(KML)目前也成为研究的重点之一。
4 知识地图的应用
1)在知识检索方面的应用
知识地图使得传统的基于关键词的检索,上升到语义检索的高度。其基本思想是:先建立相关领域的知识地图,根据知识地图收集的信息进行标注,用户的检索请求按照知识地图转换成规定的格式,在知识地图的帮助下匹配出符合条件的资料集合[13,15,16]返回给用户。目前知识地图应用在信息检索中的著名项目包括(Onto)2Agent,Ontobroker等。(Onto)2Agent的目的是为了帮助用户检索到所需要的WWW上已有的知识地图, Ontobroker面向的是WWW上的网页资源,目的是为用户检索到所需要的网页。
2) 在信息集成方面的应用
分布式信息集成的问题是结构、设施的异构和缺乏统一的语义集,借助知识地图可以在一定程度上解决语义异构的问题。集成方式有两种:自底向上,自顶向 下。自顶向下方式的基本思想是先建立相关领域的知识地图,然后由该知识地图来统一底层各信息源的语义。自底向上方法是先提取底层各信息源的局部资料模式, 再在局部资料模式上抽取局部概念模式,最后在局部概念模式上构造全局概念模式[19,20]。信息集成的著名项目KACTUS[9]是欧洲的ESPRIT项目。在KACTUS中,主要的知识表示形式是CML(Conceptual Modeling Language), KACTUS支持面向应用和理论的工作包,提供了一个既能对理论问题做实验,又能进行实际工作的环境。
3) 在知识获取方面的应用
借助知识地图能够更加有效地获取知识;在资料挖掘中,基于知识地图的资料挖掘可在高层次进行,产生高层次或多层次的规则,甚至在具有语义意义的规则 上产生挖掘结果;在软件工程方面, 知识地图能帮助更加准确地获取软件需求信息。这方面,国内已有相应的研究正在开展,还有在多Agent系统的自动设计、B2B电子商务和CSCW等方面都 引入了知识地图。例如Ontoknowledge主要目的是提供对弱结构化的在线信息资源进行访问、获取和维护。Ontoknowledge的知识地图用 三层结构对信息进行访问:在最底层(信息层),抽取机器可处理的元信息;中间层(表示层)使用这些元信息对信息资源进行自动访问、创建和维护;最高层(访 问层)使用基于Agent的技术、人工查询技术和可视化技术等来指导用户去访问这些信息。
知识地图的功能主要是实现知识共享和重用,它使得计算机对信息和对语言的理解上升到语义层次。所以, 知识地图在一些涉及到信息的互操作、知识理解等方面的领域具有很大的应用前景。
4 总结与展望
知识地图作为一种新的知识组织方式,不同类型的知识地图,适用于不同的工作性质:概念型知识地图,用于协助搜寻检索、主题学习、分类编目等工作;流程型知识地图,用于实务的确认、制造作业、工程设计等工作;职称型知识地图,用于协助企业组成项目团队、线上社群、远距教学等[17]。
知识地图在企业的应用是知识地图的原始动力,知识地图的教育应用(“教师知识地图”、辅助学习系统[12]等)已取得很大的进展,在电子政务、国防和军事的应用正在受到人们的重视。
知识地图理论及应用研究还处于初步阶段,主要急需创新解决的困难有以下几个方面:
1)知识发现,建立索引 利用Web挖掘技术发现知识关联网络,分析这种关联网络的大小(范围)、密度、强度和种类构建知识地图。
2)动态知识地图的自动构建技术 在信息计算的基础上,实现知识模板的演化和自动生成。
3)多形式的知识地图的呈现 采用可视化的技术把知识地图展现出来,以便更直观展示知识间的关联。
今后知识地图的研究将围绕这些困难继续进行,在理论与应用两个方面不断地深入下去。对弱结构化的在线信息资源进行访问、获取和维护是知识地图的核心 问题。Ontoknowledge在这方面做了不少工作,开发的一个三层结构来提供对信息的访问,其中最高层(访问层)使用基于Agent的技术、人工查 询技术和可视化技术,这些技术与知识地图技术是相辅相成的。随着相关领域研究成果的丰富,知识地图技术将得到迅速的发展和应用。
参考文献:
[1] M. Rezayat. Knowledge-based product development using XML and KCs. CAD 2000; 32(3): 299-309
[2] 邓志鸿,唐世渭,杨冬青. 面向语义集成??本体在Web信息集成中的研究进展[J]. 计算机应用, 2002,22(1):15-17.
[3] Salamander Organization. Knowledge maps and knowledge management[R]. The Salamander Organization Ltd , 2002.
[4] 史忠植. 智能主体及其应用. 北京:科学出版社,2000
[5]何民雄(IBM Lotus). http://www.chinakm.com/share/list.asp?id=1791. 2005-6-18
[6] Vail E F. What is A Knowledge Map? [EB/OL]. http://www.kmreview.com, 2002-08-29.
[7] http://www.chinakm.com/share/list.asp? . 2002,2
[8] Kevin Knight, et al. Building a Large Scale Knowledge Base for Machine Translation[C]. Proc. Of AAAI, Seattle, 1994. 773-778.
[9] Mike Uschold, et al. Ontologies: Principles, Methods and Applications[J]. Knowledge Engineering Review, 1996, 11: 93-155.
[10] Chen Lina. Knowledge Mapping in Knowledge Management at Enterprises. LIBRARY AND INFORMATION SERVICE. NO.8, 2003. 58-78
[11] Thomas R Gruber. Ontolingua: A Translation Approach to Potable Ontology Specification[J]. Knowledge Acquisition, 1993, 5(2):199-200.
[12] 陈强,孟月萍,周如旗,李晓霞, 知识管理中知识地图及其应用研究,全国计算机新科技与计算机教育论文集,2005年,第13卷
[13] 史忠植,蒋运承,张海俊,董明楷. 基于描述逻辑的主体服务匹配. 计算机学报. 2004年5月. 第27卷第5期. 625-635
[14] Marfa Auxilio, Medina Nieto. An Overview of Ontologies[R]. Ex. Hacienda Sta. Catarina Maryir s/n Cholula, 2003.
[15] Martin J.E. (2002). Handbook on Knowledge Management 1, Springer Verlag. 189-300.
[16] Logan, D., Caldwell, F., “Knowledge Mapping: Five Key Dimensions to Consider,” GartnerGroup, 2000.
[17] Vail, Edmond F. Knowledge mapping: getting started with knowledge management. Information Systems Management, 1999,16(4):16-23
[18] Thomas R. Gruber Ontolingua: A Mechanism to Support Portable Ontologies[R]. Technical Report, Knowledge Systems Laboratory.
[19] Debra M. Amidon. Innovation Strategy for the Knowledge Economy. The Ken Awakening. Butterworth-Heinemann (1997).
[20] Rita Kuo. Maiga Chang. Da-Xian Dong and Jia-Sheng Heh. “Applying Knowledge Map to Intelligent Agents in Problem Solving Systems,” World Conference on Educational Multimedia, Hypermedia & Telecommunications, Denver, Colorado, USA, Jun. 24-29, 2002.