一种基于本体的支持模糊匹配的事件发布订阅方法

文档序号:8473033阅读:398来源:国知局
一种基于本体的支持模糊匹配的事件发布订阅方法
【技术领域】
[0001] 本发明属于计算机技术领域,涉及一种基于本体的发布订阅匹配方法。
【背景技术】
[0002] 发布订阅系统是指一种能够提供用户以发布者和订阅者的角色参与到消息转发 中的中间件系统,被转发的消息在本专利中又被称作事件,其中发布者和订阅者是系统最 基本的角色。订阅者和发布者角色可以被同一个系统终端用户所拥有,即一个终端用户可 以同时是订阅者和发布者。发布者是事件的生产者,而订阅者是事件的消费者,订阅者通过 订阅语句来表达对于某些事件的兴趣,而发布者在发布订阅系统中按照一定的约束来发布 事件,最终事件经过匹配算法被转发给特定的订阅者。所以发布订阅系统的目标是保证订 阅者所需要的事件准确、及时、高效地转发给订阅者。
[0003] 组成一个发布订阅系统的基础是数据模型和匹配算法,其中数据模型决定了匹配 算法的实现方式。基于主题的发布订阅把事件按照主题来分类,事件的表达能力有限,但是 匹配算法实现简单。基于内容的发布订阅提供事件的更细粒度的表达,但是匹配算法的复 杂度比较高,没有考虑事件的语义信息。随着语义技术的发展,更多的研宄转移到基于语义 的发布订阅上来。经过调研,基于本体的语义发布订阅系统也有很多,但是很少有支持推理 功能和模糊匹配的。

【发明内容】

[0004] 技术问题:针对传统发布订阅系统的缺点,本发明提出了一种以语义技术为基础, 支持事件的语义表达和推理、订阅的语义表达、事件/订阅的基于本体的支持模糊匹配的 事件发布订阅方法。
[0005] 技术方案:本发明的基于本体的支持模糊匹配的事件发布订阅方法,包括以下步 骤:
[0006] 步骤1)构建用以提供发布订阅系统中的概念和概念间关系定义的领域本体;步 骤2)首先分别按照如下两种方式构建基于所述领域本体的同义词词库:
[0007] a)从一个以上的中文百科中抽取重定向;
[0008] b)利用固定模式从中文语料库中抽取同义词;
[0009] 然后将两种方式构建的同义词词库共同构成基于Web的同义词词典,如果两种方 式构建的同义词词库集合之间存在交集,则对两者进行合并,去掉重复的词条;
[0010] 步骤3)构建RDF事件图(RDF是用来表现万维网上各类资源的信息的一种语言): 事件发布者首先通过浏览器在网页上构建事件内容,然后通过事件代理把事件内容转换成 RDF事件图;
[0011] 步骤4)构建订阅请求:订阅者首先通过浏览器在网页上构建订阅内容,然后通过 订阅代理把订阅请求内容转化成SPARQL语句(这是一个递归缩写,代表的是一种用于RDF 上的查询语言);
[0012] 同时收集用户订阅时输入的关键词;
[0013] 步骤5)事件和订阅匹配:首先利用本体的上下位推理能力对所述步骤4)中生成 的SPARQL语句做父子类扩展,然后利用SPARQL查询引擎查询得到满足SPARQL查询条件的 事件节点集合;
[0014] 步骤6)基于每个事件节点,在所述步骤3)构建的RDF事件图上进行有向图的广 度优先遍历,得到从事件节点出发的子图,一个子图即一个事件的描述信息;
[0015] 步骤7)基于用户订阅的关键词和构建好的同义词词典在事件描述信息中进行词 频-逆向文件词频计算,得到所述关键词和事件描述信息之间的匹配相关度得分,最后根 据匹配得分对事件进行排序并返回给订阅者。
[0016] 本发明方法的优选方案中,所述步骤1)中构建的领域本体用OWL( -种用于描述 语义网上本体论关系的语言)文档形式存储。
[0017] 本发明方法的优选方案中,所述步骤2)中的中文百科采用维基百科、互动百科和 百度百科。
[0018] 本发明方法的优选方案中,所述步骤3)中,事件内容的主题是从步骤1)中所构建 的领域本体中定义的事件类中选取的;所述RDF事件图是在关系型数据库中构建事件表来 存放RDF事件得到的。
[0019] 本发明方法把语义技术引入到发布订阅系统中,以提高语义发布系统的事件表达 能力、订阅表达能力、订阅/事件匹配准确度。
[0020] 有益效果:本发明与现有技术相比,具有以下优点:
[0021] 本发明支持以浏览器这种用户容易接受的方式来构建事件内容和订阅请求,这种 用户界面比直接构建事件内容和订阅请求的方法更友好。另外在订阅与事件匹配上考虑了 上下位扩展从而对用户订阅请求匹配到的事件比类似于主题模型的发布订阅系统匹配到 的事件更多。这里扩展在本质上是依靠构建好的领域本体来实现的,例如领域本体中有这 样一条规则:类A包含于类B,那么如果用户订阅了类B主题下的事件,通过上下位推理,该 用户同样会收到主题A下面的所有满足条件约束的事件。此外我们利用了中文三大百科构 建了基于领域本体的同义词词典用于提高订阅与事件的匹配准确度。例如:在构建的同义 词词典中"金陵"是"南京"的同义词,用户的订阅只包含"南京"或"金陵"和同时包含"南 京"和"金陵"效果一样,即都能收到包含南京或金陵并且满足其他约束条件的事件。最后 在事件排序上就是基于前面构建的词典和订阅中的关键词并使用信息论中的词频-反向 词频度量方法来计算关键词和事件之间的相关度,因为现存的发布订阅系统考虑事件排序 的很少,而排序对于用户来说很有必要,因为经过排序可以使用户很容易浏览到其最关注 的事件。综上所述本发明与现存的订阅匹配方法相比具有更友好的用户体验、事件匹配的 准确率和相关性更高等优点,通过验证,该方法是完全正确可行的。
【附图说明】
[0022] 图1是一个领域的本体图。
[0023] 图2是事件代理处理过程图。
[0024] 图3是订阅代理处理过程图。
[0025] 图4是订阅事件匹配过程图。
【具体实施方式】
[0026] 为使本发明的目的技术方案和优点更加清楚,以下结合实施例和说明书附图对本 发明进一步说明。
[0027] 本发明方法包括以下七个步骤:
[0028] 步骤1)构建领域本体,构建的内容包括领域中的概念、概念的属性、概念间的关 系以及属性和关系的约束。本体构建是一个工程性的工作,本系统利用斯坦福大学开发的 工具prot6g6来构建本体。本体的模式层相对于数据层来说比较小,构建的模式层包括类、 数据属性、对象属性、类之间和属性之间的关系包括等价关系、继承关系。如图1为构建出 来的一个本体。它的具体实现描述如下:
[0029] 本体中每个类、属性都需要唯一的URI引用来标识,按照本体的约束,各个类之间 可以存在多重继承,但是不容许出现循环的继承关系,例如奥运会篮球比赛是篮球比赛和 奥运会比赛的子类。同理属性之间可以存在多重继承,但是不容许出现循环的继承关系。一 个类可以拥有多个属性,一个属性也可以服务于多个类。为了适应事件模型,在本体中定义 了所有事件的父类,该类去掉命名空间后的名称是"Event",这样一个事件必须指向Event 类或Event的子类。上下位推理的意义是,奥运会篮球比赛、CBA、NBA等都是篮球比赛下的 派生类,如果一个订阅者对这两个比赛的事件都感兴趣,而且对地点进行限制:比赛场地在 北京(NBA有国际赛场),这样他可以订阅篮球比赛并设置条件hasLocation="北京"而不 需要对奥运会篮球比赛、CBA等都构建一个订阅请求。
[0030] 步骤2)构建基于特定领域的同义词词库,同义词构建包括以下两种方式
[0031] 从百度百科、互动百科和维基百科中抽取重定向。首先,利用Ansj分词工具(一 个开源的Java中文分词工具)对本体中的所有标签进行分词。然后将分词后的所有词语 加入待访问集合(UnvisitedSet)中。最后,遍历待访问集合中的词,将其分别提交到三大 百科,若存在重定向,则将重定向的词抽取出来,与原本体标签建立映射。
[0032] 利用固定模式从语料库中抽取同义词。从语言学的角度来看,大量的同义词会以 固定的模式出现在文本中,从本体的标签字符集合串出发,利用手工构建中文通用同义词 模式包括"[*]别称[*]"、"[*]即[*]"、"[*]又被称为[*]"、"[*]又叫做[*]"来抽取同 义词,这些模式中[*]是对文本分词后的最靠近模式词("别称"、"即"等)的名词。
[0033] 如果两种方式构建的同义词词库集合之间存在交集,则对两者进行合并,去掉重 复的词条,从而构建基于Web抽取的同义词词典。
[0034] 步骤3)构建事件模型,在发布订阅系统,事件构建页面后台有一个领域本体支 持,这样发布者在发布事件内容的时需要选择事件所属的类,这里选择的类必
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1