随着人们对网络上信息使用要求的不断提高,对网络上信息内容提出了更高要求。可以这样认为,网络只是给人们提供了一个信息共享和信息浏览的环境,人们可以在网络环境中找到自己想要的信息,而对这些信息的理解还需要人来完成,也就是说,目前网上的信息是人所能理解的信息,而不是机器所能理解的信息。
虽然Internet上分布着海量的信息,但它们主要是面向人类的。由于信息内容没有更好地形式化表示,计算机难以处理这些信息。而互联网上广泛存在的信息格式的异构性、信息语义的多重性以及信息关系的匮乏和非统一,给人们在信息搜索、抽取、表示、解释和维护方面造成极大的不便。正是由于这样,使得网络的深层次应用,如电子商务、电子政务和数字图书馆等智能化服务的开展十分困难。此外,由于计算机拥有对大规模信息处理的能力,因此将网上信息处理和利用尽可能地交给计算机自动完成是解决这些问题的关键。而要达到这样的目的,人们必须让计算机能够“理解”这些信息,并在“理解”的前提下更好地处理和利用这些信息。WWW的发明者Tim Berners-Lee描述了在现有Web的基础上建设下一代Web的蓝图——语义Web(Semantic Web)。
语义Web中语言塔与本体
1.本体论
语义Web采用一定的知识表示方法赋予网页信息一定的语义,达到人机和计算机之间基于语义信息的交换和处理。而在Web这样一个巨大的信息资源中,知识库是多种多样的,既包含通用的常用知识库,也包含各个领域中的领域知识库。要保证在网络环境的信息能够被计算机理解和交互,就需要有一种统一的表示语言对Web的信息进行基于语义的统一表示和交互。
本体论为同一应用领域的成员之间提供了统一的术语集,能够将描述对象进行概念化表示。一个本体由概念类、关系、函数、公理和实例等5种元素组成。本体中的概念是广义上的概念,它除了可以是一般意义上的概念以外,也可以是任务、功能、行为、策略、推理过程等等。本体中的这些概念通常构成一个分类层次。本体中的关系表示概念之间的关联,这种关联表现了除分类层次关系之外的概念之间的所有联系;函数是一种特殊的关系,与关系不同支持是概念之间的关系还是对应的概念。如:“球的体积”定义球的体积由球的半径唯一确定。公理在许多领域中,表示函数之间或关联之间也存在着关联或约束。实例是指属于基本概念类的基本元素,即某概念类所指的具体实体,特定领域的所有实例。
语义Web中的本体表示的是人们对特定领域中的概念的统一的、本质认识。对于网络上的应用,重要的是需要定义一种具有统一语法的语言,使得本体能够遵循统一的语法格式进行信息交换。
2.语义Web中的语言塔
Berners-Lee等人从当前Web技术的现状出发,提出了类似于网络模型的语义Web分层体系结构,为语义Web的发展奠定了基础(如图1所示)。
图1? 语义Web的语言塔
目前在语义Web的语言塔中,前两层(Unicode&URI层与XML+NS+xml schema层)的语言都语义成为国际标准,得到广泛应用。第三层的RDF+rdfs已经成为推荐标准,在本体层的描述语言有DAML+OIL,以及在此基础上发展起来的由W3C推荐的标准OWL。
语义Web中各层次语言标准的研究
本体论为同一应用领域的成员之间提供了统一的术语集。这些成员是人或者智能代理。这样,就需要制定一种表示语言,将描述对象进行概念化表示。现有的表示语言和系统可以分为两类,一类是基于一阶谓词逻辑的表示方法,他们分别是本体语言(KIF-based Ontololingua)、Loom, 框架逻辑(Frame-Logic),这些方法具有不同表达能力和计算特性。但是,对于互联网上的应用,更重要的是要定义一种具有统一语法的语言,这样才能使得本体遵循统一的语法格式进行信息交换。XML已经成为当前互联网上数据交换的标准语言,具有良好的可扩展性、样式与内容的分离以及由可遵循的严格的语法要求等特点,支持不同系统之间的信息交换。因此,为了简化语言分析器的分析任务,人们希望建立基于XML语法的、支持本体信息交换的语言标准,这样就导致了第二类基于XML的本体语言标准的研究。这些语言包括:SHOE(Simple HTML Ontology Extensions) 、XOL (Ontology Exchange Language)、OML (Ontology Markup Language)、RDF (Resource Description Frame)、??? OIL (Ontology Interchange Language)、DAML+OIL (DARPA Agent Markup Language+Ontology Inference Layer)和OWL (the Web Ontology Language)。这些语言虽然都是基于XML的,但是它们之间有不同的层次。
基于本体的语义Web基础软件(Semantic Web Infrastructure)
1.早期的基于本体的基础软件研究
OntoKnowledge.org是一个由BT、Swiss Life等多家欧洲科研机构和大学组成的研究项目。它的成果OIL(Ontology Inference Layer)对本体语言提供了一个层次结构视图,已经成为DAML的一个基础。这些组织还开发了许多研究工具,其中最成熟的是Oiled,它是一个本体的编辑、设计工具,支持DAML格式。
SiRPAC (Simple RDF Parser & Compiler)是一个RDF的解释器,被广泛使用于许多语义Web项目,由斯坦福(Stanford)大学开发。SiRPAC 实际上是一个 RDF API, 可以在文件系统的基础上访问和存储本体。Sesame是一个开发源代码的本体存储与查询系统,由Aidministrator公司开发。
另外,Stanford大学的KSL实验室的Chimeara是目前对Web环境下的本体研究最为成熟的成果之一。
2. Karlsruhe大学的研究
KAON(The Karlsruhe Ontology and Semantic Web Infrastructure)是德国Karlsruhe大学的一个科研项目。该项目致力于为语义Web提供所需的基础本体系统和相关工具。它针对基于本体的上层商业应用的需求提供了一个开放的本体管理软件,为本体的存储、创建和标识提供了一个全面的支撑平台。
图2? KAON平台的体系结构
RDF API采用的是斯坦福大学的RDF API,但做了相应的重写和扩展,为上层应用或KAON API提供了本体的内存存储机制。目前,RDF API不但包括了一个RDF Parser可解析RDF文件,还包括了RDF Serializer可以将本体序列化到关系型数据库和文件中去。
KAON API为应用屏蔽了底层的存储机制,但实际上它也可以通过多种方式访问KAON本体,一种是通过RDF API(然后通过RDF Server),另一种是直接通过Engineering Server。KAON API的定义有其合理性,例如它有Observable这个设计范式,可以让应用自动得到本体修改或升级的消息。
RDF Server和Engineering Server都基于关系型数据库,可以提供并发控制和交易机制,它们还可以直接支持EJB(可选),提供Entity Java Beans接口。不同的是RDF Server面向RDF,Engineering Server面向KAON自己的本体标准。Engineering Server还有一个特点就是已经具有了初步的分布机制,有客户端。
KAON的RDF Crawler用于crawling,并综合Web上的RDF信息。可以把crawling的深度、指定范围等这样的参数放到配置文件中,并把结果存于本地文件。KAON Portal用于建立一个多语种的、基于本体的门户网站。需要先将网站内容进行本体标识。在网站上可以基于本体进行可视化的浏览导航。它把显示与内容做了严格的分离。有很好的可配置性。KAON的OI-Modeler是一个本体的建模工具,用于可视化地建立文件并维护它。
3. HP的Jena本体处理平台
惠普(HP)实验室的Jena也是一个以RDF API为核心,用于实现语义Web(Sematic Web)的工具。它的体系结构如图3所示。
图3? Jena的体系结构
从图3可以看到,Jena由Network API、Query、Readers、Inference、Writers、Stores几部分围绕RDF API组成。
4.基于Web的分布式本体系统
WODOS(Web Oriented Distributed Ontology System)系统由清华大学计算机系知识工程室研究开发。它是一个全面的基于本体的语义Web知识处理平台,支持中英文,可将本体信息存于关系型数据库中,可以做RDF文件的导入导出,支持RQL查询,第三方软件可以通过OdoAPI进行操作。WODOS引入推理机制,可以对存于WODOS中的本体事实施以规则(基于Flogic),并在这些规则的基础上进行推理。WODOS建立了统一的用户界面,可以把对WODOS的各种操作(如原有的RQL查询、RDF文件导入导出和新加入的Flogic操作等)集成在一起。
Web信息向基于本体的语义内容的转换
本体赋予语义Web语义信息,因此围绕本体对互联网信息进行的操作的研究成为语义Web研究的一个重要领域。主要体现在:
1.本体标注
将网页上的信息和本体库中的本体关联起来是Semantic Web发展的首要任务。Semantic Web标注就是要建立这种关联,一般采用RDF或者DAML对 Web进行标注。Web标注最早开始于10年前的Mosaic1.2版中,从那时开始,Web标注的工具便被开发出来,例如:CritLink和ThirdVoice等。
随后的研究中又开发了很多Web标注系统,比较流行的有CritLink、ThirdVoice、IMarkup、XLink、CREAM、Annotea等。但所有的这些标注系统都需要手工操作来实现标注,也就是用户手工选择Web文档中需要标注的信息以及它所对应的本体,从而实现Web的标注。这种标注方法在标注少量页面的时候比较理想,但如果需要全部标注大量文档集合的时候,这种纯手工的方法就很不适用了。因此有关半自动化的标注的研究已经开始,S-CREAM就是一个正在研究的半自动的标注系统,它利用Amilcare来作为信息抽取工具。Amilcare可以通过一组已经手工标注好的Web文档集作为训练集,然后利用学习算法自动抽取出提取规则,最后利用这些规则自动进行其他的相似文档的标注。S-CREAM可以很好的实现半自动的标注,但是他自动标注的文档必须和原先文档是同一类文档,例如描述个人信息的页面。
2.本体集成
因为语义Web的工作方式是极为分散的,一个相同的领域的本体会在多个地方被编辑、建立和发布,一旦两个领域的本体需要协助工作,它们之间会存在语义异构的问题。如何解决这种语义异构问题,在不同的领域本体上提供一个统一的语义访问层,是目前语义Web的一个研究热点。这就需要在不同的本体之间进行映射。目前在本体映射中普遍采用的方法有两种:一种是利用一个已有的中间本体对不同的本体进行标识。这种做法采用的中间本体一般来说是开放的,标准的。另外一种是直接对两个本体进行映射。领域中的两个本体会有很多的相似之处,所以可以对两个本体进行映射。两个本体进行映射也就是对本体里面的概念和关系进行映射,而概念的映射完成后,关系的映射也就完成了。
3.本体建立
本体描述语言给出了一个描述本体的标准语言,而本体是一个特定领域中对其中语义的共同认识,不同领域有不同的领域本体。一个领域中包含的知识和词汇非常丰富,如何定义领域本体成为语义Web的重要研究问题。目前对本体的建立的研究有两种,一种是在一个本体创建工具支持下完全手工建立领域本体。另一种是利用现在包含在文本中的大量信息,采用机器学习的方法,通过聚类等技术,半自动建立本体。
语义Web的应用
1.语义Web在Web Services中的应用
语义Web与Web Services的结合被认为是语义Web的一个极好应用。Web Services作为Web技术的最新发展成果,它的出现及推广将变革现有的Web应用模式。但是要想要使分布于Internet上的服务器可以通过Web更自动化地,更智能化地交互,就必须解决目前Web上广泛存在的信息格式的异构性、信息语义的多重性以及信息关系的匮乏和非统一。
将本体的概念和相应技术引入Web Services技术中,将从根本上解决以上问题。同时,由于本体具有丰富的语义和广泛的关系,它将变革现有的Web Services,使之成为Intelligent Web Services,使Web实现从自动化到智能化的转变成为可能。
在将本体的概念和技术应用于Web Services中,需要全面研究建立基于本体的Web service描述、service组装与分解、基于本体的服务发面和服务管理等问题。
2.在电子商务中的应用
Web技术已经逐渐渗透到我们日常生活的各个方面,电子商务也已经成为一种重要商业模式。开放和灵活的客户关系建立和管理以及商业模式是实现有效电子商务系统的重要因素。而这种开放性和灵活性的取得可以通过本体技术得到解决。比如建立基于本体的产品描述、分类体系,以及对商务处理过程的结构化、标准化以及个性化的处理已经成目前电子商务领域的研究热点。
结语
语义Web的概念一经提出,就引起学术界的广泛重视,并且在短短几年中已经取得的较大的发展。相信,在学术界和工业界的不断努力下,语义Web会逐步实现人们设想的、一个全新的Web!
虽然Internet上分布着海量的信息,但它们主要是面向人类的。由于信息内容没有更好地形式化表示,计算机难以处理这些信息。而互联网上广泛存在的信息格式的异构性、信息语义的多重性以及信息关系的匮乏和非统一,给人们在信息搜索、抽取、表示、解释和维护方面造成极大的不便。正是由于这样,使得网络的深层次应用,如电子商务、电子政务和数字图书馆等智能化服务的开展十分困难。此外,由于计算机拥有对大规模信息处理的能力,因此将网上信息处理和利用尽可能地交给计算机自动完成是解决这些问题的关键。而要达到这样的目的,人们必须让计算机能够“理解”这些信息,并在“理解”的前提下更好地处理和利用这些信息。WWW的发明者Tim Berners-Lee描述了在现有Web的基础上建设下一代Web的蓝图——语义Web(Semantic Web)。
语义Web中语言塔与本体
1.本体论
语义Web采用一定的知识表示方法赋予网页信息一定的语义,达到人机和计算机之间基于语义信息的交换和处理。而在Web这样一个巨大的信息资源中,知识库是多种多样的,既包含通用的常用知识库,也包含各个领域中的领域知识库。要保证在网络环境的信息能够被计算机理解和交互,就需要有一种统一的表示语言对Web的信息进行基于语义的统一表示和交互。
本体论为同一应用领域的成员之间提供了统一的术语集,能够将描述对象进行概念化表示。一个本体由概念类、关系、函数、公理和实例等5种元素组成。本体中的概念是广义上的概念,它除了可以是一般意义上的概念以外,也可以是任务、功能、行为、策略、推理过程等等。本体中的这些概念通常构成一个分类层次。本体中的关系表示概念之间的关联,这种关联表现了除分类层次关系之外的概念之间的所有联系;函数是一种特殊的关系,与关系不同支持是概念之间的关系还是对应的概念。如:“球的体积”定义球的体积由球的半径唯一确定。公理在许多领域中,表示函数之间或关联之间也存在着关联或约束。实例是指属于基本概念类的基本元素,即某概念类所指的具体实体,特定领域的所有实例。
语义Web中的本体表示的是人们对特定领域中的概念的统一的、本质认识。对于网络上的应用,重要的是需要定义一种具有统一语法的语言,使得本体能够遵循统一的语法格式进行信息交换。
2.语义Web中的语言塔
Berners-Lee等人从当前Web技术的现状出发,提出了类似于网络模型的语义Web分层体系结构,为语义Web的发展奠定了基础(如图1所示)。
图1? 语义Web的语言塔
目前在语义Web的语言塔中,前两层(Unicode&URI层与XML+NS+xml schema层)的语言都语义成为国际标准,得到广泛应用。第三层的RDF+rdfs已经成为推荐标准,在本体层的描述语言有DAML+OIL,以及在此基础上发展起来的由W3C推荐的标准OWL。
语义Web中各层次语言标准的研究
本体论为同一应用领域的成员之间提供了统一的术语集。这些成员是人或者智能代理。这样,就需要制定一种表示语言,将描述对象进行概念化表示。现有的表示语言和系统可以分为两类,一类是基于一阶谓词逻辑的表示方法,他们分别是本体语言(KIF-based Ontololingua)、Loom, 框架逻辑(Frame-Logic),这些方法具有不同表达能力和计算特性。但是,对于互联网上的应用,更重要的是要定义一种具有统一语法的语言,这样才能使得本体遵循统一的语法格式进行信息交换。XML已经成为当前互联网上数据交换的标准语言,具有良好的可扩展性、样式与内容的分离以及由可遵循的严格的语法要求等特点,支持不同系统之间的信息交换。因此,为了简化语言分析器的分析任务,人们希望建立基于XML语法的、支持本体信息交换的语言标准,这样就导致了第二类基于XML的本体语言标准的研究。这些语言包括:SHOE(Simple HTML Ontology Extensions) 、XOL (Ontology Exchange Language)、OML (Ontology Markup Language)、RDF (Resource Description Frame)、??? OIL (Ontology Interchange Language)、DAML+OIL (DARPA Agent Markup Language+Ontology Inference Layer)和OWL (the Web Ontology Language)。这些语言虽然都是基于XML的,但是它们之间有不同的层次。
基于本体的语义Web基础软件(Semantic Web Infrastructure)
1.早期的基于本体的基础软件研究
OntoKnowledge.org是一个由BT、Swiss Life等多家欧洲科研机构和大学组成的研究项目。它的成果OIL(Ontology Inference Layer)对本体语言提供了一个层次结构视图,已经成为DAML的一个基础。这些组织还开发了许多研究工具,其中最成熟的是Oiled,它是一个本体的编辑、设计工具,支持DAML格式。
SiRPAC (Simple RDF Parser & Compiler)是一个RDF的解释器,被广泛使用于许多语义Web项目,由斯坦福(Stanford)大学开发。SiRPAC 实际上是一个 RDF API, 可以在文件系统的基础上访问和存储本体。Sesame是一个开发源代码的本体存储与查询系统,由Aidministrator公司开发。
另外,Stanford大学的KSL实验室的Chimeara是目前对Web环境下的本体研究最为成熟的成果之一。
2. Karlsruhe大学的研究
KAON(The Karlsruhe Ontology and Semantic Web Infrastructure)是德国Karlsruhe大学的一个科研项目。该项目致力于为语义Web提供所需的基础本体系统和相关工具。它针对基于本体的上层商业应用的需求提供了一个开放的本体管理软件,为本体的存储、创建和标识提供了一个全面的支撑平台。
图2? KAON平台的体系结构
RDF API采用的是斯坦福大学的RDF API,但做了相应的重写和扩展,为上层应用或KAON API提供了本体的内存存储机制。目前,RDF API不但包括了一个RDF Parser可解析RDF文件,还包括了RDF Serializer可以将本体序列化到关系型数据库和文件中去。
KAON API为应用屏蔽了底层的存储机制,但实际上它也可以通过多种方式访问KAON本体,一种是通过RDF API(然后通过RDF Server),另一种是直接通过Engineering Server。KAON API的定义有其合理性,例如它有Observable这个设计范式,可以让应用自动得到本体修改或升级的消息。
RDF Server和Engineering Server都基于关系型数据库,可以提供并发控制和交易机制,它们还可以直接支持EJB(可选),提供Entity Java Beans接口。不同的是RDF Server面向RDF,Engineering Server面向KAON自己的本体标准。Engineering Server还有一个特点就是已经具有了初步的分布机制,有客户端。
KAON的RDF Crawler用于crawling,并综合Web上的RDF信息。可以把crawling的深度、指定范围等这样的参数放到配置文件中,并把结果存于本地文件。KAON Portal用于建立一个多语种的、基于本体的门户网站。需要先将网站内容进行本体标识。在网站上可以基于本体进行可视化的浏览导航。它把显示与内容做了严格的分离。有很好的可配置性。KAON的OI-Modeler是一个本体的建模工具,用于可视化地建立文件并维护它。
3. HP的Jena本体处理平台
惠普(HP)实验室的Jena也是一个以RDF API为核心,用于实现语义Web(Sematic Web)的工具。它的体系结构如图3所示。
图3? Jena的体系结构
从图3可以看到,Jena由Network API、Query、Readers、Inference、Writers、Stores几部分围绕RDF API组成。
4.基于Web的分布式本体系统
WODOS(Web Oriented Distributed Ontology System)系统由清华大学计算机系知识工程室研究开发。它是一个全面的基于本体的语义Web知识处理平台,支持中英文,可将本体信息存于关系型数据库中,可以做RDF文件的导入导出,支持RQL查询,第三方软件可以通过OdoAPI进行操作。WODOS引入推理机制,可以对存于WODOS中的本体事实施以规则(基于Flogic),并在这些规则的基础上进行推理。WODOS建立了统一的用户界面,可以把对WODOS的各种操作(如原有的RQL查询、RDF文件导入导出和新加入的Flogic操作等)集成在一起。
Web信息向基于本体的语义内容的转换
本体赋予语义Web语义信息,因此围绕本体对互联网信息进行的操作的研究成为语义Web研究的一个重要领域。主要体现在:
1.本体标注
将网页上的信息和本体库中的本体关联起来是Semantic Web发展的首要任务。Semantic Web标注就是要建立这种关联,一般采用RDF或者DAML对 Web进行标注。Web标注最早开始于10年前的Mosaic1.2版中,从那时开始,Web标注的工具便被开发出来,例如:CritLink和ThirdVoice等。
随后的研究中又开发了很多Web标注系统,比较流行的有CritLink、ThirdVoice、IMarkup、XLink、CREAM、Annotea等。但所有的这些标注系统都需要手工操作来实现标注,也就是用户手工选择Web文档中需要标注的信息以及它所对应的本体,从而实现Web的标注。这种标注方法在标注少量页面的时候比较理想,但如果需要全部标注大量文档集合的时候,这种纯手工的方法就很不适用了。因此有关半自动化的标注的研究已经开始,S-CREAM就是一个正在研究的半自动的标注系统,它利用Amilcare来作为信息抽取工具。Amilcare可以通过一组已经手工标注好的Web文档集作为训练集,然后利用学习算法自动抽取出提取规则,最后利用这些规则自动进行其他的相似文档的标注。S-CREAM可以很好的实现半自动的标注,但是他自动标注的文档必须和原先文档是同一类文档,例如描述个人信息的页面。
2.本体集成
因为语义Web的工作方式是极为分散的,一个相同的领域的本体会在多个地方被编辑、建立和发布,一旦两个领域的本体需要协助工作,它们之间会存在语义异构的问题。如何解决这种语义异构问题,在不同的领域本体上提供一个统一的语义访问层,是目前语义Web的一个研究热点。这就需要在不同的本体之间进行映射。目前在本体映射中普遍采用的方法有两种:一种是利用一个已有的中间本体对不同的本体进行标识。这种做法采用的中间本体一般来说是开放的,标准的。另外一种是直接对两个本体进行映射。领域中的两个本体会有很多的相似之处,所以可以对两个本体进行映射。两个本体进行映射也就是对本体里面的概念和关系进行映射,而概念的映射完成后,关系的映射也就完成了。
3.本体建立
本体描述语言给出了一个描述本体的标准语言,而本体是一个特定领域中对其中语义的共同认识,不同领域有不同的领域本体。一个领域中包含的知识和词汇非常丰富,如何定义领域本体成为语义Web的重要研究问题。目前对本体的建立的研究有两种,一种是在一个本体创建工具支持下完全手工建立领域本体。另一种是利用现在包含在文本中的大量信息,采用机器学习的方法,通过聚类等技术,半自动建立本体。
语义Web的应用
1.语义Web在Web Services中的应用
语义Web与Web Services的结合被认为是语义Web的一个极好应用。Web Services作为Web技术的最新发展成果,它的出现及推广将变革现有的Web应用模式。但是要想要使分布于Internet上的服务器可以通过Web更自动化地,更智能化地交互,就必须解决目前Web上广泛存在的信息格式的异构性、信息语义的多重性以及信息关系的匮乏和非统一。
将本体的概念和相应技术引入Web Services技术中,将从根本上解决以上问题。同时,由于本体具有丰富的语义和广泛的关系,它将变革现有的Web Services,使之成为Intelligent Web Services,使Web实现从自动化到智能化的转变成为可能。
在将本体的概念和技术应用于Web Services中,需要全面研究建立基于本体的Web service描述、service组装与分解、基于本体的服务发面和服务管理等问题。
2.在电子商务中的应用
Web技术已经逐渐渗透到我们日常生活的各个方面,电子商务也已经成为一种重要商业模式。开放和灵活的客户关系建立和管理以及商业模式是实现有效电子商务系统的重要因素。而这种开放性和灵活性的取得可以通过本体技术得到解决。比如建立基于本体的产品描述、分类体系,以及对商务处理过程的结构化、标准化以及个性化的处理已经成目前电子商务领域的研究热点。
结语
语义Web的概念一经提出,就引起学术界的广泛重视,并且在短短几年中已经取得的较大的发展。相信,在学术界和工业界的不断努力下,语义Web会逐步实现人们设想的、一个全新的Web!