刘存涛,赵文栋,杨 华
(1.陆军工程大学 研究生院,江苏 南京 210007;2.陆军工程大学 通信工程学院,江苏 南京 210007;3.国防科技大学 信息通信学院,湖北 武汉 430019)
随着信息系统在社会各领域的广泛应用,政府、企业、社会团体及个人都可以根据特定需求构建信息系统。但是,由于不同设计者在思维认知、设计理念及开发习惯等方面的差异,面向同一领域的信息系统采用了不同的信息域划分标准及信息描述方法,导致不同系统的信息在逻辑结构和语义表达方面存在差异,妨碍了系统间信息的无损交互和有效共享。因而,如何消除系统间信息的异构性,实现异构信息的有效共享,越来越受到社会各行业的关注。目前,实现异构信息融合与共享的方法主要有以下几种。
一是采用联邦访问的方法,通过设计直达的访问接口实现系统间的互操作[1-2]。这种方法主要用于关系数据库数据的集成,无法处理非结构化的信息,而且在添加新的数据库时需要设计该数据库到其他每个数据库的访问接口。这种一一映射的方式,随着互通数据库数据量的增长,转换接口的复杂度为O(2n),工作量大。
二是采用基于中间件的方法,使用DCOM、COM、CORBA等技术在数据层与应用层之间构建统一的逻辑视图来隐藏底层的数据细节[3],实现信息的集中查询。文献[4]提出了一种基于分层全局 视 图(Hierarchical-Global-As-view,HGAV)的模式映射算法,通过引入中间数据源模式,形成分层的全局视图,以提高数据查询效率;文献[5]提出一种基于中间件的异构数据库访问方法(MingleDB),结合了NoSQL和传统关系型数据库的优点。这种方法在信息组织和逻辑关系表述方面,与具体信息源的数据组织结构紧密耦合,不能解决异构系统间的信息交互问题。
三是基于数据仓库的方法,对原始数据进行抽取、清理、加工和装载等操作,将信息源的信息集中存储到一个全局共享的数据仓库。文献[6]阐述了ETL工具在数据仓库建设中的重要地位,提出了一个基于工作流引擎的ETL系统设计;文献[7]对数据仓库的建模方法进行调查和比较,指出了目前存在的问题、趋势和解决方案。这种方法主要用于为决策分析提供数据,数据仓库中查询操作远远多于修改和删除等操作,并保存了大量的历史信息,导致数据冗余量大,也不能解决异构系统间的信息交互问题。
四是基于模式转换的方法,即将不同信息源的信息描述模型映射到一种形式化的信息描述模型,实现信息的匹配及共享。文献[8-9]采用基于本体的信息描述模型对战场信息进行一致化表示,但它更关注描述实体之间的关系,而没有对实体描述信息的内部逻辑进行分析;文献[10]提出了一种基于图的实体描述模型,通过构建实体建模元素之间的映射关系,将异构数据源的实体模型转换为基于图的实体模型,同样也没有分析实体描述信息的内部逻辑。这种方法需要对现有信息源的信息进行全面处理,初始阶段工作量较大,但是能够有效消除信息冗余,提高信息共享的效率。
其中,模式映射通过实现异构信息的一致化表示,能够在不改变硬件设施及系统接口的情况下,实现现有系统的信息融合和共享,且具有更好的数据处理能力、兼容性、可扩展性和重用性。目前,基于本体的知识表示在实现异构信息一致表示方面得到了广泛应用。但是,由于本体中定义对象属性时的自由性,会存在从某个概念出发指向概念本身的闭环,或者一个概念指向多个上层概念的情况,易引起信息处理时的逻辑混乱。另外,在使用本体模型对数据进行组织时,为了保证海量信息在存储形式上的一致性,通常使用(主语,谓语,宾语)的三元组形式对实体的属性信息和实体之间的关系信息进行描述,虽然降低了存储复杂度,但影响了信息的查询效率。
本文重点研究异构信息在内容逻辑及语义表达方面的一致性,以实体为基本信息描述单元,构建了基于内容和语义的通用信息描述模型,对异构信息进行结构化表示和组织。该模型能够有效表示实体描述信息基于逻辑及语义的层次关系,从而将面向比特的信息内容进行面向内容逻辑关系的结构化表示,有利于实现异构信息基于内容逻辑的融合与共享。
信息系统通常是面向需求的,在设计之初只关心与特定应用目的相关的信息,而不是全面地描述研究领域中目标要素的所有信息。当试图更全面地了解和掌握研究领域内目标要素的信息时,需要在各个系统中共享信息。虽然面向同一领域的不同系统之间在信息描述结构和语义表达方面存在异构,但这些异构信息本质上都是对同一实体空间的描述。比如,组成实体空间的实体对象的类别、属性和状态等实体内部信息以及实体之间的关系。表1显示了与实体有关的基本概念及其符号表示。
定义1(实体空间)ES=(E,A,S,CEC,R,V),其中E、A、S及R的含义见表2;CEC=∪i∈NECi表示实体类集合;V=VA∪VS,表示值域集,满足VA=∪a∈AVa,VS=∪s∈SVs,其中Va表示属性a的值域,Vs表示状态s的值域。
表1 基本概念定义
实体空间是以实体为基本描述单元对现实世界进行的抽象,其中A和S分别描述了实体对象的属性和状态信息;EC描述了实体的分类信息,反映了实体自身的一元关系;R描述了实体之间的语义关系,反映了实体之间的二元关系。当E中每个元素的类别、属性、状态信息以及元素之间的关系信息得到明确后,即得到了现实世界的一个可观测状态。
由于不同系统在应用需求及信息获取能力等方面的差异,某一时刻的系统信息通常描述了实体空间的部分侧面。基于通用信息描述模型对不同系统的异构信息进行一致化描述,并将不同系统的信息进行聚合,可以得到对于实体空间的更全面的描述。以系统A和系统B为例,可以将该问题形式化地描述为ESU={ES´A(t)∪ES´B(t)},其中ES´A(t)=φ(ESA(t)),ES´B(t)=φ(ESB(t)),,ESA(t)和ESB(t)分别表示t时刻系统A和系统B所描述的实体空间,ESU(t)表示t时刻系统A和B的信息合集所描述的实体空间,φ表示不同系统的异构信息到通用表示信息的映射。
如图1所示,描述实体空间的概念之间通常存在着复杂联系。比如,实体所属的类别在逻辑关系上存在包含及互斥等关系,实体的属性与实体所属的类别紧密联系在一起,属性与状态之间存在着一元或多元约束关系,实体关系之间存在着分层结构及多种语义联系等。为此,研究与分析概念间的逻辑与语义关系,分别构建实体类概念逻辑树和实体关系概念逻辑树,对系统概念集进行结构化组织,并用于对实体内部描述信息及实体之间的关系信息进行一致化描述。
图1 实体、实体类、属性和状态之间的联系
2.1.1 属性概念逻辑树
实体类之间主要包括包含、独立、相交、同源及等价等关系。
①包含。如果{ECi→Acic,ECj→Acjc}∧Acic⊆Acjc,则ECi包含ECj,并将ECj称为ECi的下位类,记为ECj⊆ECi。其中,如果此时不存在实体类ECk,满足ECj⊆ECk⊆ECi,则称ECj为ECi的直接下位类。
②互斥。如果{ECi→Acic,ECj→Acjc}∧Acic∩Acjc=∅,则ECi与ECj互斥,记为ECi⊥ECj。
③相交。如果{ECi→Acic,ECj→Acjc}∧Acic∩,则ECi与ECj相交,记为ECi≬ECj。
④同源。如果ECi≬ECj∧ ∃ECk→Ackc∧Ackc⊆(Acic∩Acjc)(k∈N∧k≠i∧k≠j), 则ECi与ECj同源,记为ECi⋈ECj。
⑤等价。如果{ECi→Acic,ECj→Acjc}∧Acic⊆Acjc,则ECi与ECj等价,记为ECj≡ECi。
根据实体类之间的关系,可以得到表2所示的推理规则。这些规则有助于实现基于知识的推理,能够在信息共享过程中提高信息搜索的查全率和准确率。
表2 基于实体类关系的推理规则
如图2所示,借助于集的图表示法,不难理解这些规则,下面分别对规则1和规则10进行证明。
图2 规则的图示
根据实体类概念之间的抽象程度和逻辑关系对实体类进行聚合,得到实体类分类树,显式地描述实体类之间的逻辑层次。
定义2(实体类分类树)设CTEC(FEC)是以FEC为根节点,以研究领域中的所有实体类为其子节点,按照实体类之间的逻辑关系组成的树,基本结构如图3所示。其中,FEC是一个虚拟的实体类,用来表示抽象程度最高的类。设所处层级为0级,其属性集记为AEC,只包含时间和空间等为实体空间中全体实体所共有的属性;状态集记为SEC为空,或认为只包含“存在”这一状态。
图3 实体类分类树的结构
命题1:如果ECj是ECi的直接下位类,ECi→Acic,ECj→Acjc,ECj↔A´cj,且不存在属性a,使得a∈ (Acjc-Acic)∧a∉A´cj成立,则A´cj=Acjc-Acic。
证明:要证A´cj=Acjc-Acic,只需要证左⊆右,右⊆左。
ECj⊆ECi⇒Acic⊆Acjc且A´cj∩Acic=∅ ⇒(Acjc-Acic)∩Acic=∅且A´cj∩Acic=∅。
因 为(Acjc-Acic)⊆Acjc且A´cj⊆Acjc, 易 知A´cj⊆(Acjc-Acic),即左⊆右。
由于任意ai∈ (Acjc-Acic),ai∈A´cj成立,故右⊆左,从而可得左=右。
命题2:如果ECj是ECi的直接下位类,ECk是ECj的直接下位类,则A´ck=Ackc-A´cj-Acic。
证明:由命题 1得,A´cj=Acjc-Acic且A´ck=Ackc-Acjc,故A´ck=Ackc-(A´cj∪Acic)=Ackc-A´cj-Acic。
命题3:如果ECi属于一级类,其某一条分支的子类共分为n(n∈N)级,按上下位顺序组成集合{ECj,ECj+1,…,ECj+n},则可以得到Ac j+nc=A´c j+n∪A´c j+n-1∪…∪Acic∪AEC。
证明:由命题1可得:
同时,由定义2易知Acic=A´ci∪AEC,所以可以得到Ac j+nc=A´c j+n∪A´c j+n-1∪…∪A´ci∪AEC。
基于上述分析,提出了实体类概念逻辑树的概念。它根据实体类分类树的分层结构,将描述实体类别、属性及状态等信息的概念进行结构化组织,表示了实体类及相应状态和属性之间存在的逻辑层次结构。
定义3(属性概念逻辑树)TLEC(ECi)表示ECi的属性概念逻辑树,基本结构如图4所示。它以ECi根节点,形式化表示为TLEC(ECi)=(ECi(S´ci∪Scio,A´cio,Aci,∪TLEC(ECj))),其 中i,j∈N,ECj∈CECi,A´cjo是根据实体类分类树将偶有属性集进行分层后得到的,即如果ECj是ECi的直接下位类,则A´cjo=Acjo-Acio。
图4 概念逻辑树的结构
2.1.2 实体关系概念逻辑树
客观存在的事物之间通常不是孤立的,相互之间存在复杂的语义联系,称之为实体关系。实体关系是有指向的,如表示实体e通过关系x ra与实体ey产生联系。这些实体关系之间存在着包含、互斥、相容、互逆及可达等关系。
①包含。如果,则r包b含ra,记为ra⊆rb。
② 互 斥。 如 果, 则ra
与rb互斥,即两个实体之间不可能同时存在ra和rb两种关系,记为ra⊥rb。
③相容。如果两个实体之间可以同时存在ra与rb两种关系,则ra与rb相容,记为ra||rb。
④互逆。如果,则ra与rb互逆,记为。由于实体关系描述了两个实体之间的相互联系,因而对于任意ra,必然存在其逆关系rb,此时表达的语义是等价的。特别地,如果ra-1=ra,还认为ra具有对称性。
基于上述关系,提出了实体关系概念逻辑树的概念。它根据实体关系之间存在的逻辑及语义联系,将系统中使用的实体关系进行分层组织。
定义4(实体关系概念逻辑树)设TLEC(Fr)是以Fr为根节点,以研究领域中定义的所有实体关系为其子节点,按照实体关系之间的逻辑及语义关系组成的树。其中,Fr是一个虚拟的实体关系,用来表示抽象程度最高的实体关系。
从语义表述的角度来看,实体关系反映了实体之间的语义联系,所以在判断实体关系之间所满足的关系时,主要依据该实体关系所表达的语义进行判别。构建实体关系概念逻辑树,明确实体关系之间的分类层次,有利于进一步明确实体关系之间的推理规则,在获取实体描述信息的基础上实现基于语义的推理。表3显示了基于实体关系的部分推理规则。
表3 基于实体关系的推理规则
概念逻辑树表示了概念之间的逻辑层次,根据概念逻辑树模型设计相应的通用信息描述模板,可用于对实体内部描述信息进行结构化表示和组织。此过程中,构建一个共享的全局概念逻辑树,实现异构信息的通用描述和一致化表示。为确保概念逻辑树构建过程中所使用概念集的通用性,概念的选择应基于研究领域内的共识,以保证不同系统对概念语义的正确理解,确保对异构信息的正确处理。同时,设计不同系统所使用的概念集到共享概念逻辑树的映射,从而使全局概念逻辑树有效覆盖不同系统的信息表达范围,即基于每个系统构造的局部概念逻辑树是全局概念逻辑树的子树。
构建概念树时通常可采用自顶向下、自底向上或两者结合使用的方法。其中,采用自顶向下的方法时,需要对领域内的基本概念具有全面的了解和掌握,通常需要精通领域知识的专家参与,且很难进行自动构建;采用自底向上的方法时,可基于现有系统使用的概念集自动构建概念树,而后进行修改和调整,能够较好地实现对现有系统概念集的语义覆盖。
以目标系统A和B为例,自底向上构建实体类概念逻辑树的基本流程如图5所示,主要分为以下几个步骤。
①分别从目标信息系统中获取概念集,并将概念集按照(ECi,Aci,Sci)的三元组形式进行组织,即将描述同一实体类的属性集及概念集与该实体类进行关联。
②通过概念相似度计算,将不同系统概念集中相似的概念替换成通用概念,并建立被替换概念到通用概念的映射,从而将来自两个系统的概念集进行约简及合并,构造一个通用概念集。
③对通用概念集中的概念进行筛选,将共有属性集与偶有属性集分离。
④基于实体类的共有属性集,通过自底向上逐层聚合构造实体类的分层结构。以表4为例,行表示实体类,列表示属性。如果第i行第j的元素为★,则表示第i个实体类的共有属性集中包含第j个属性。依据表4构建概念格[11],然后确定各实体类的特征概念集,将概念格进行裁剪,去除不需要的概念节点,得到最终的实体类分类树,如图6所示。其中,EC(i⊕j)表示ECi与ECj的共同直接上位类。
⑤基于实体类分类树,将实体类的偶有属性集及状态集进行分层,其中偶有属性集的分层基于父类与子类之间的继承特性,状态集的分层基于其与相应属性集的约束关系。
图5 概念逻辑树的构建流程
表4 筛选后的概念集
图6 实体类分类树的构建
实体关系概念逻辑树的构建算法如下:
分别从系统A和系统B中获取实体关系概念集Ra和Rb;
Ru=Merge(Ra,Rb);
Nr=Num(Ru)+1;
rNr=Fr
for (i=1,i++,i<Nr+1)
Fri=0;
while (∃Fri==0∧ri≠Fr)
do {
for (i=1,,i<Nr+1)
if(Fri==0∧ri≠Fr)
rf=Father(ri);
if(rf∈Ru) thenFri=1, 添加从rf到ri的边,i++;
elseRu=Ru∪rf,Nr++,rNr=rf,FrNr=0,i++;
elsei++;}
returnTLEC(Fr);
end;
其中,Merge(Ra,Rb)表示概念集合并函数,用于将不同系统的概念集进行合并;Nr表示Ru中实体关系的数量;Fri用于标记ri的父节点是否已经找到,当Fri为1时表示ri的父节点已经找到;Father(ri)表示父节点查找函数,用于从通用词典中查找ri的父节点。
按照上述模型对异构信息进行通用描述时,针对实体内部描述信息,根据实体类概念逻辑树的结构形式,使用类XML语言设计通用信息描述模板,并按照模板对不同系统的异构信息进行结构化表示,进而以实体为基本单元对实体描述信息进行集中组织和存储,即使用XML文档Doci集中存储实体ei的描述信息,并将XML文档构成的全集记为FE。针对实体之间的关系信息,采用(ei,rij,ej)的组织形式进行描述,并采用关系矩阵RM对实体关系信息进行集中存储。假设实体空间中有n个实体,则RM可以表示为:
其中,rij表示ei到ej的语义关系;如果ei到ej不存在任何语义关系,记rij=NULL;rii则用于存储ei的身份标识,记为rii=Iei。根据之前的分析可知,
通过实现不同系统实体描述信息的集中存储,构建统一信息空间。
定义5(统一信息空间)统一信息空间(Unified Information Space,UIS)是指以实体为基本信息描述单元,将来自不同系统的实体描述信息进行集中组织和存储而形成的信息总集。比如,由系统A和B的实体描述信息构建的UIS即可表示为UIS={FEA´RMA}∪ {FEB´ RMB}。
基于统一信息空间能够实现不同系统间异构信息的有效共享,基本框架如图7所示。首先,基于通用信息描述模型对不同系统的异构信息进行一致化表示,将面向比特的无结构信息转换为面向内容逻辑的结构化信息;其次,将描述同一实体的信息进行融合,以消除信息冗余,并对UIS进行更新;当系统内的终端需要获取某些信息时,向UIS发送信息查询请求,并通过概念映射将各个信息系统的本地概念替换成通用概念,按照查询条件对UIS进行查询后,将查询结果反馈给系统终端,实现信息的被动共享;当某个系统终端获取重要信息时,可以通过UIS向其他系统的终端进行广播,实现信息的主动共享。
图7 异构信息共享框架
概念逻辑树是一种概念模型,以树的结构描述概念之间的逻辑层次和语义关系,以结构化的方式组织实体的异构描述信息,有助于验证异构信息的逻辑完整性和语义正确性,确保信息融合的正确性。此外,它有助于提高查询效率。例如,当查询的实体信息属性值在一定范围内时,这个属性的级别l可以通过查询概念逻辑树来确定。这样可以直接搜索的信息在l级随后的查询中,可以有效缩短查询时间。
总的来说,在实现异构信息共享方面,使用概念逻辑树模型对异构信息进行描述和组织,主要具有以下几个方面的优点。
(1)采用树结构对概念之间的逻辑关系进行规范,结构性及可理解性好,能够有效避免指向概念自身的闭环及一个概念指向多个上层概念的问题,有助于验证信息的逻辑正确性和语义完整性。
(2)在信息组织方面结合层状结构与网状结构的优点,有助于提高信息查询效率。例如,当需要根据实体的属性值查询实体信息时,可首先通过查询概念逻辑树得到属性所处的位置,在随后的查询中找到存储实体描述信息的文档后,可以直接在对应的位置查询相应属性的取值,以确定是否满足查询条件,能够有效缩短查询时间。此外,采用图结构对实体之间的关系信息进行结构化组织,能够直观表示出实体之间的语义联系,有利于实现基于关系的推理及基于语义的信息查询。
(3)在概念逻辑树的构建过程中,基于不同系统概念集构建通用概念集,能够有效覆盖不同系统概念集的语义覆盖,具有较好的共享性。针对不同的领域,均可以根据各自领域内的概念集构建适用于相应领域的概念逻辑树,使得模型具有较好的可扩展性和重用性。
为了解决不同系统之间异构信息共享面临的困难,本文提出了一种基于结构化概念逻辑树的异构信息描述模型,实现了异构信息的通用结构化描述。该模型能够有效表示实体描述信息基于语义及逻辑的层次关系,实现异构信息之间潜在相关性的显性表示,从而消除不同信息格式对信息无损交互及共享造成的困难,具有良好的结构性和扩展性。未来将对基于概念逻辑树的异构信息融合算法以及基于语义逻辑的自动推理机制进行研究,以进一步提高该模型的综合性能。