一种基于知识本体的食品安全数据信息检索的方法及系统与流程

文档序号:12598317阅读:451来源:国知局
一种基于知识本体的食品安全数据信息检索的方法及系统与流程

本发明涉及信息检索技术领域,特别是涉及一种基于知识本体的食品安全数据信息检索的方法及系统。



背景技术:

随着网络技术在人民生活中的广泛普及,社会信息化程度的广泛提高,各个领域所积累的信息资源在飞速增长。对于食品安全领域来说,食品安全监管部门产生大量的食品安全检测数据,单个数据都只说明被检测的样品中某个元素(危害物)的情况,但是大量数据的集合蕴含了丰富的食品安全信息。

现如今,搜索引擎的主要搜索方法为索引关键字的方式,用户是通过索引关键字来查询食品安全信息。

在发明人应用在先技术时,发现在先技术在食品安全信息查准率方面有很大的欠缺,互联网数据信息虽然多,但是这些信息之间缺乏联系,信息结构松散,且由于用户查询食品安全数据的形式多样化,计算机难以识别复杂的自然语言等原因,导致用户无法精确地查找到与需求相关的资源。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于知识本体的食品安全数据信息检索的方法和相应的基于知识本体的食品安全数据信息检索的系统。

依据本发明的一个方面,提供了一种基于知识本体的食品安全数据信息检索的方法,包括:

构建食品安全知识本体库;所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;

接收客户端输入的查询串;

判断所述查询串是关键词、关键词组合、还是自然语言;

如果所述查询串是关键词,则将所述关键词与食品安全知识本体库进行匹配,获得查询结果;

如果所述查询串是关键词的组合时,则根据该关键词的组合确定食品知识本体和关系对象的组合;

如果所述查询串是自然语言,则对所述查询串进行分词,得到分词结果,并根据分词结果确定食品知识本体和关系对象的组合;

基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果;

将所述查询结果返回给客户端。

可选地,所述构建食品安全知识本体库的步骤之后,还包括:

接收用户对食品安全知识本体库的更新操作;所述更新操作包括:对所述食品安全知识本体库中的食品知识本体和/或食品知识本体之间存在的关系对象的添加、修改和删除。

可选地,所述对所述查询串进行分词,得到分词结果,并根据分词结果确定食品知识本体和关系对象的组合,包括:

对所述查询串进行分词,并利用概念类词典和关系类词典确定分词结果中各分词的词性;所述词性包括食品知识本体词性和关系对象词性;

将食品知识本体词性的分词和关系对象词性的分词,组合为所述食品知识本体和关系对象的组合。

可选地,所述基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,包括:

将查询串中的食品知识本体的分词与食品安全知识本体库中的食品知识本体进行匹配;

如果食品知识本体的分词与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

对于每个食品知识本体所关联的关系对象,计算其与查询串中对应食品知识本体相应的关系对象之间的第二相似度;

将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象。

可选地,所述基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,还包括:

如果食品知识本体的分词与食品安全知识本体库的食品知识本体未匹配上,则对所述分词结果进行扩展,得到对应各食品知识本体的扩展集合,所述扩展集合包括至少一个扩展的食品知识本体;

将每个扩展的食品知识本体与食品安全知识本体库中的食品知识本体进行匹配;

如果扩展的食品知识本体与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

对于每个食品知识本体所关联的关系对象,计算其与具有关系对象的分词之间的第二相似度;

将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象。

可选地,所述将所述查询结果返回给客户端的步骤,包括:

将总相似度排序靠前的N个食品知识本体与关系对象的组合所关联的另外一个食品知识本体的信息返回给客户端。

可选地,所述计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度的步骤,包括:

利用公式(1)

<mrow> <mi>S</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>t</mi> <mi>2</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>&delta;</mi> <mi>i</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>t</mi> <mi>2</mi> </msub> <mo>)</mo> </mrow> <msub> <mi>&theta;</mi> <mi>i</mi> </msub> <mo>...</mo> <mo>...</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>

计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;其中,所述t1是匹配上的食品知识本体,t2是食品安全知识本体库的其他的食品知识本体,n是t1和t2在食品安全知识本体库中的层级关系中的层级深度;δi(t1,t2)是在层级深度为i时,t1和t2之间的父类关系值,其中θi是权重。

依据本发明的另一个方面,提供了一种基于知识本体的食品安全数据信息检索的系统,包括:

构建模块,用于构建食品安全知识本体库;所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;

输入模块,用于接收客户端输入的查询串;

判断模块,用于判断所述查询串是关键词、关键词的组合、还是自然语言;

如果所述查询串是关键词,则将所述关键词与食品安全知识本体库进行匹配,获得查询结果;

如果所述查询串是关键词的组合时,则根据该关键词的组合确定食品知识本体和关系对象的组合;

分词模块,用于如果所述查询串是自然语言,则对所述查询串进行分词,得到分词结果,并根据分词结果确定食品知识本体和关系对象的组合;

语义分析模块,用于基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果;

返回模块,用于将与所述查询结果返回给客户端。

可选地,所述用于构建食品安全知识本体库的构建模块之后,还包括:

更新模块,用于接收用户对食品安全知识本体库的更新操作;所述更新操作包括:对所述食品安全知识本体库中的食品知识本体和/或食品知识本体之间存在的关系对象的添加、修改和删除。

可选地,所述对所述查询串进行分词,得到分词结果,并根据分词结果确定食品知识本体和关系对象的组合,包括:

分词模块,用于对所述查询串进行分词,并利用概念类词典和关系类词典确定分词结果中各分词的词性;所述词性包括食品知识本体词性和关系对象词性;

将食品知识本体词性的分词和关系对象词性的分词,组合为所述食品知识本体和关系对象的组合。

可选地,所述基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,包括:

匹配模块,用于将查询串中的食品知识本体的分词与食品安全知识本体库中的食品知识本体进行匹配;

第一相似度计算模块,用于如果食品知识本体的分词与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

第二相似度计算模块,用于对于每个食品知识本体所关联的关系对象,计算其与查询串中对应食品知识本体相应的关系对象之间的第二相似度;

总相似度计算模块,用于将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择查询对象模块,用于选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象。

可选地,所述基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,还包括:

扩展模块,用于如果食品知识本体的分词与食品安全知识本体库的食品知识本体未匹配上,则对所述分词结果进行扩展,得到对应各食品知识本体的扩展集合,所述扩展集合包括至少一个扩展的食品知识本体;

匹配模块,用于将每个扩展的食品知识本体与食品安全知识本体库中的食品知识本体进行匹配;

第一相似度计算模块,用于如果扩展的食品知识本体与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

第二相似度计算模块,用于对于每个食品知识本体所关联的关系对象,计算其与具有关系对象的分词之间的第二相似度;

总相似度计算模块,用于将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择查询对象模块,用于选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象。

可选地,所述将所述查询结果返回给客户端的返回模块,包括:

返回模块,用于将总相似度排序靠前的N个食品知识本体与关系对象的组合所关联的另外一个食品知识本体的信息返回给客户端。

可选地,所述计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度的步骤,包括:

利用公式(1)

<mrow> <mi>S</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>t</mi> <mi>2</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>&delta;</mi> <mi>i</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>t</mi> <mi>2</mi> </msub> <mo>)</mo> </mrow> <msub> <mi>&theta;</mi> <mi>i</mi> </msub> <mo>...</mo> <mo>...</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>

计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;其中,所述t1是匹配上的食品知识本体,t2是食品安全知识本体库的其他的食品知识本体,n是t1和t2在食品安全知识本体库中的层级关系中的层级深度;δi(t1,t2)是在层级深度为i时,t1和t2之间的父类关系值,其中θi是权重。

针对在先技术,本发明实施例具备如下优点:

根据本发明中基于食品安全知识本体库,提出了一种食品安全数据信息检索的方法及系统,首先构建食品安全知识本体库,所所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;然后根据用户输入的查询串,判断所述查询串是关键词、关键词的组合、还是自然语言,对于单个关键词,将所述关键词与食品安全知识本体库进行匹配,获得查询结果;对于关键词的组合,则根据该关键词的组合确定食品知识本体和关系对象的组合;对于自然语言,进行分词并得到分词结果,根据分词结果确定食品知识本体和关系对象的组合;根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果;最后将查询结果返回给用户。构建的食品安全知识本体库中食品知识本体具有层级结构,且层级之间通过关系对象关联,食品知识本体之间关系逻辑严密,对于用户查询的食品安全数据的形式进行划分,针对不同情况分别处理,且对于复杂的自然语言可以进行分词处理,由此解决了用户无法精确地查找到与需求相关的资源的问题,使得用户可以比较精确地查找到与需求相关的资源。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明的食品安全数据信息检索方法的步骤流程图;

图1A示出了本发明的系统基本功能结构划分图;

图1B示出了本发明的查询串分词流程图;

图1C示出了本发明的食品安全知识本体库部分结构示意图;

图2示出了本发明的食品安全数据信息检索系统的结构框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

知识本体是领域概念及概念之间关系的规范化描述,这种描述是规范的、明确的、形式化的,可共享的。知识本体的目标是捕获相关领域的知识,提供对该领域知识的共同理解,确定该领域内共同认可的词汇,并从不同层次的形式化模式上给出这些词汇和词汇间相互关系的明确定义。

实施例一

参照图1,示出了根据本发明的一种基于知识本体的食品安全数据信息检索的方法实施例的步骤流程图,具体可以包括如下步骤:

步骤100,构建食品安全知识本体库;所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;

参照图1A,示出了本发明的系统基本功能结构划分图,包括构建食品安全知识本体库,其中所述构建食品安全知识本体库的步骤包括:对食品知识本体及其关系对象的整理;对食品知识本体及其关系对象的机器化描述。

其中,所述食品安全知识本体库中的食品安全数据包括:食品名称、有毒物质、中毒事件;对于食品安全数据的整理方式包括:类、属性、关系。类是关于食品名称、有毒物质、中毒事件的所有食品知识本体的集合化的整理;属性如中毒事件发生的时间、地点、发生的单位,有毒物质的简介、类别、危害,食品的生产、加工、运输方式等;关系如等价、包含、导致等。

构建食品安全知识本体库的主要数据来源包括:

从目前已有的食品安全数据库中导入食品安全事件,人为整理食品安全事件中涉及到的食品知识本体,并分析食品知识本体之间存在的关系对象,然后加入到食品安全知识本体库中;

利用各种与食品安全相关的报纸、期刊、专业网站中获得食品安全领域的食品知识本体和食品知识本体之间的关系对象,加入到食品安全知识本体库中。

所述食品安全知识本体库包含3个元素{C,R,H},C代表一组同类食品知识本体集合;R代表食品知识本体之间关系的集合;H代表由对象所派生的食品知识本体层次体系集合。举例来讲:

C={事物、食物、食品、动物性食品、植物性食品、干制食品、腌制品、烘焙食品、罐藏食品、天然食品、婴幼儿食品、膨化食品、速冻食品、食品添加剂、……}

R={加工情况(食品,加工食品|半成品|未加工食品),类别(食品,肉类|植物类|复合类|人工合成类),植物性食品类别(食品,根|茎|叶|花|果|籽|皮|汁),肉性食品类别(食品,猪肉|牛肉|羊肉|鱼肉|鸡肉),致癌物质(食品,亚硝酸类|黄曲霉素|苯并芘|瘦肉精|地沟油|甲醛),……}

H={(事物),(事物,食品),(事物,食物),(食品),(食物),(食品,食材),(食品,问题食品)……}

其中,元素C代表同类食品知识本体集合,也可称为概念集合,可以按照类别不同分为食品名称、有毒物质、中毒事件,上例主要是食品名称类的集合。元素R是食品知识本体之间关系对象的集合,由上例可以看出,括号内为两个食品知识本体的列举(分隔符代表并列关系),括号外的对象为两个食品知识本体之间的关系对象。元素H是由对象所派生的食品知识本体层次体系集合,由上例可以看出,“事物”可以派生出“食品”和“食物”两个食品知识本体,派生出的“食品”和“食物”两个食品知识本体,可以作为新的派生“母体”,进而派生新的食品知识本体,如:“食材”、“问题食品”等,元素H可以使得食品安全知识本体库进行扩充,对于食品安全知识本体库的更新有重要意义。

建立的食品安全知识本体库描述了食品知识本体之间的语义关系,食品知识本体间关系逻辑严密,支持语义逻辑上的推理,可扩展性强。

对食品安全领域的各种数据进行整理,确定食品知识本体以及食品知识本体之间的关系对象,构建食品安全知识本体库。所述食品安全知识本体库构建之后,采用一种机器可读的文法,比如XML(Extensible Markup Language,可拓展标记语言),和机器可以理解的资源描述框架,比如RDF(Resource Description Framework,资源描述框架)对食品安全知识本体库进行描述、序列化以方便信息的存储、传输和处理。其中,XML格式的序列化表示是将对象状态转换为可保持或传输的格式的过程,提供了一种描述结构数据的格式。

可选地,在步骤100之后,还包括:

步骤105,所述构建食品安全知识本体库的步骤之后,还包括:

接收用户对食品安全知识本体库的更新操作;所述更新操作包括:对所述食品安全知识本体库中的食品知识本体和/或食品知识本体之间存在的关系对象的添加、修改和删除。

参照图1A,示出了本发明的系统基本功能结构划分图,包括对食品安全知识本体库的更新:对食品安全数据进行整理,并对食品安全知识本体库中的食品知识本体和/或关系对象进行添加、修改和删除。

根据获得的食品安全数据进行人为分析食品知识本体以及食品知识本体之间存在的关系对象,对所述食品安全知识本体库中的食品知识本体和/或食品知识本体之间存在的关系对象进行更新操作,包括添加食品知识本体和/或食品知识本体之间的关系对象,修改食品知识本体和/或食品知识本体之间的关系对象,删除食品知识本体和/或食品知识本体之间的关系对象。

在所述食品安全知识本体库构建之后,用户可以对食品安全数据进行信息检索。

步骤110、接收用户输入的查询串;

参照图1A,示出了本发明的系统基本功能结构划分图,在语义查询过程中,首先要接收用户输入的查询串。

步骤120、判断所述查询串是关键词、关键词组合、还是自然语言;

其中,用户输入的查询串存在三种情况:

(1)单个关键词;

(2)多个关键词构成的组合;

(3)自然语言构成的句子等。

例如,用户输入的“哪些物质导致肉制品致癌?”这个自然语言构成的句子。

步骤130、如果所述查询串是关键词,则将所述关键词与食品安全知识本体库进行匹配,获得查询结果。

步骤140、如果所述查询串是关键词的组合时,则根据该关键词的组合确定食品知识本体和关系对象的组合。

步骤150、如果所述查询串是自然语言,则对所述查询串进行分词,得到分词结果,并根据分词结果确定食品知识本体和关系对象的组合;

参照图1B,示出了本发明的查询串分词流程图:

当用户输入的查询串是自然语言构成的句子时,需要应用分词,对用户输入的查询串进行预处理,生成词组,转化为前两种情况。

对所述查询串进行分词,并利用概念类词典和关系类词典确定分词结果中各分词的词性;所述词性包括食品知识本体词性和关系对象词性。

将食品知识本体词性的分词和关系对象词性的分词,组合为所述食品知识本体和关系对象的组合。

以用户输入的“哪些物质导致肉制品致癌?”这个自然语言构成的句子为例,对其进行分词,生成词组:“肉制品”,“导致……致癌”,“哪些物质”,之后对这些词组进行分析,“肉制品”是食品知识本体,“导致……致癌”是关系对象。

步骤160、基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果。

参照图1A,示出了本发明的系统基本功能结构划分图,在语义查询中过程中要计算相似度,包括:

将查询串中的食品知识本体的分词与食品安全知识本体库中的食品知识本体进行匹配;

一方面,如果食品知识本体的分词与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

对于每个食品知识本体所关联的关系对象,计算其与查询串中对应食品知识本体相应的关系对象之间的第二相似度;

将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象;

并根据所述查询对象获得查询结果。

另一方面,如果食品知识本体的分词与食品安全知识本体库的食品知识本体未匹配上,则对所述分词结果进行扩展,得到对应各食品知识本体的扩展集合,所述扩展集合包括至少一个扩展的食品知识本体;

将每个扩展的食品知识本体与食品安全知识本体库中的食品知识本体进行匹配;

如果扩展的食品知识本体与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

对于每个食品知识本体所关联的关系对象,计算其与具有关系对象的分词之间的第二相似度;

将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象;

并根据所述查询对象获得查询结果。

如果扩展的食品知识本体与食品安全知识本体库的食品知识本体未匹配上,则返回空值。

本发明中相似度分析方法借鉴了语言学中的语义距离的计算与感知。

相似度定义:设t1和t2是食品安全知识本体中的两个食品知识本体或者关系对象,S(t1,t2)表示这两个食品知识本体或关系对象之间的相似程度,则有公式:

<mrow> <mi>S</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>t</mi> <mi>2</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>&delta;</mi> <mi>i</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>t</mi> <mi>2</mi> </msub> <mo>)</mo> </mrow> <msub> <mi>&theta;</mi> <mi>i</mi> </msub> </mrow>

其中,n是食品知识本体或关系对象t1和t2在食品安全知识本体库中食品知识本体所具有的最大深度。例如:t1和t2两个食品知识本体或者关系对象在食品安全知识本体库中分属于第j层和第k层。此时,n=max(j,k)。θi是权重(可取)。δi(t1,t2)的取值定义如下:

根据实际需要,可以对上述公式中的权值θi进行调整。

下面,对公式进行进一步说明。当t1,t2两个食品知识本体或者关系对象在“同一支”上,且其在食品安全知识本体库中分属于第j层和第k层,则存在前min(j,k)个父类相同,0<S≤1,当且仅当t1,t2两个食品知识本体或者关系对象所在深度相同时,S=1;当t1,t2两个食品知识本体或者关系对象在“不同支”上,则无相同父类,则S=0,表示相似程度为0。

可以看出,S的范围为0~1,当S的值较大时,两个食品知识本体或者关系对象之间的相似程度越大。

参照图1C示出了本发明的食品安全知识本体库部分结构示意图:

以用户输入的“哪些物质导致肉制品致癌?”这个自然语言构成的句子为例,分词后得到“肉制品”和“导致……致癌”;

若食品安全知识本体库中存在“肉制品”“导致……致癌”,则在运用相似度公式时,可以得到相似度为1的结果,直接确定查询对象;

若知识本体库中不同时直接存在“肉制品”和“导致……致癌”,且“肉制品”这个食品知识本体没有“致癌物质”这个关系对象,当运用相似度列表进行搜索时,“肉制品”的相似度列表中,“肉类”的相似度强,“食品”的相似度弱;“导致……致癌”这一食品知识本体之间的关系对象,与两部分中的关系对象“致癌物质”相似度相同。综上,服务器会选择“肉类”和“致癌物质”这个组合确定查询对象,而不是“食品”和“致癌物质”这个组合,选取“肉类”和“致癌物质”这个组合对应的“亚硝酸盐”和“瘦肉精”。

步骤170、将所述查询结果返回给客户端;

参照图1A,示出了本发明的系统基本功能结构划分图,在语义查询过程中,计算相似度之后要进行信息检索,将查询结果返回给客户端。

参照图1C示出了本发明的食品安全知识本体库部分结构示意图:

以用户输入的“哪些物质导致肉制品致癌?”这个自然语言构成的句子为例,最后将“亚硝酸盐”和“瘦肉精”返回给用户。

针对在先技术,本发明实施例具备如下优点:

根据本发明中基于食品安全知识本体库,提出了一种食品安全数据信息检索的方法,首先构建食品安全知识本体库,所所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;然后根据用户输入的查询串,判断所述查询串是关键词、关键词的组合、还是自然语言,对于单个关键词,将所述关键词与食品安全知识本体库进行匹配,获得查询结果;对于关键词的组合,则根据该关键词的组合确定食品知识本体和关系对象的组合;对于自然语言,进行分词并得到分词结果,根据分词结果确定食品知识本体和关系对象的组合;根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果;最后将查询结果返回给用户。构建的食品安全知识本体库中食品知识本体具有层级结构,且层级之间通过关系对象关联,食品知识本体之间关系逻辑严密,对于用户查询的食品安全数据的形式进行划分,针对不同情况分别处理,且对于复杂的自然语言可以进行分词处理,由此解决了用户无法精确地查找到与需求相关的资源的问题,使得用户可以比较精确地查找到与需求相关的资源。

对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

实施例二

参照图2,示出了根据本发明的一种基于知识本体的食品安全数据信息检索的系统实施例的结构框图,具体可以包括如下模块:

步骤200,构建模块,用于构建食品安全知识本体库;所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;

可选地,在步骤200之后,还包括:

步骤205,更新模块,用于接收用户对食品安全知识本体库的更新操作;所述更新操作包括:对所述食品安全知识本体库中的食品知识本体和/或食品知识本体之间存在的关系对象的添加、修改和删除。

在所述食品安全知识本体库构建之后,用户可以对食品安全数据进行信息检索。

步骤210,输入模块,用于接收客户端输入的查询串;

步骤220,判断模块,用于判断所述查询串是关键词、关键词的组合、还是自然语言;

步骤230,关键词匹配模块,用于如果所述查询串是关键词,则将所述关键词与食品安全知识本体库进行匹配,获得查询结果;

步骤240,关键词组合确定模块,用于如果所述查询串是关键词的组合时,则根据该关键词的组合确定食品知识本体和关系对象的组合;

步骤250,分词模块,用于如果所述查询串是自然语言,则对所述查询串进行分词,得到分词结果,并根据分词结果确定食品知识本体和关系对象的组合。

对所述查询串进行分词,并利用概念类词典和关系类词典确定分词结果中各分词的词性;所述词性包括食品知识本体词性和关系对象词性;

将食品知识本体词性的分词和关系对象词性的分词,组合为所述食品知识本体和关系对象的组合。

步骤260,语义分析模块,基于所述食品知识本体和关系对象的组合,根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果;

一方面,如果食品知识本体的分词与食品安全知识本体库的食品知识本体能匹配上:

匹配模块,用于将查询串中的食品知识本体的分词与食品安全知识本体库中的食品知识本体进行匹配;

第一相似度计算模块,用于如果食品知识本体的分词与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

第二相似度计算模块,用于对于每个食品知识本体所关联的关系对象,计算其与查询串中对应食品知识本体相应的关系对象之间的第二相似度;

总相似度计算模块,用于将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择查询对象模块,用于选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象;

查询结果获取模块,用于根据所述查询对象获得查询结果。

另一方面,如果食品知识本体的分词与食品安全知识本体库的食品知识本体未能匹配上:

扩展模块,用于如果食品知识本体的分词与食品安全知识本体库的食品知识本体未匹配上,则对所述分词结果进行扩展,得到对应各食品知识本体的扩展集合,所述扩展集合包括至少一个扩展的食品知识本体;

匹配模块,用于将每个扩展的食品知识本体与食品安全知识本体库中的食品知识本体进行匹配;

第一相似度计算模块,用于如果扩展的食品知识本体与食品安全知识本体库的食品知识本体匹配上,则记录匹配上的食品知识本体为最高相似度,并计算该食品知识本体与食品安全知识本体库的其他的食品知识本体之间的第一相似度;

第二相似度计算模块,用于对于每个食品知识本体所关联的关系对象,计算其与具有关系对象的分词之间的第二相似度;

总相似度计算模块,用于将食品知识本体的第一相似度与关系该食品知识本体的关系对象的第二相似度相乘,获得食品知识本体与关系对象组合的总相似度;

选择查询对象模块,用于选择食品知识本体与关系对象组合的总相似度排序靠前的N个组合,查找其查询对象;

查询结果获取模块,用于根据所述查询对象获得查询结果。

如果扩展的食品知识本体与食品安全知识本体库的食品知识本体未匹配上,则返回空值。

步骤270,返回模块,用于将所述查询结果返回给客户端。

针对在先技术,本发明实施例具备如下优点:

根据本发明中基于食品安全知识本体库,提出了一种食品安全数据信息检索的系统,首先构建食品安全知识本体库,所所述食品安全知识本体库包括食品知识本体和关系对象;所述关系对象将至少一对食品知识本体关联;其中,所述关系对象包括类别关系对象,所述类别关系对象将同类别的食品知识本体中具有父子层级关系的食品知识本体关联;不同类别食品知识本体之间采用非类别关系对象进行关联;然后根据用户输入的查询串,判断所述查询串是关键词、关键词的组合、还是自然语言,对于单个关键词,将所述关键词与食品安全知识本体库进行匹配,获得查询结果;对于关键词的组合,则根据该关键词的组合确定食品知识本体和关系对象的组合;对于自然语言,进行分词并得到分词结果,根据分词结果确定食品知识本体和关系对象的组合;根据食品安全知识本体库中的食品知识本体和关系对象的组合,确定查询对象,并根据所述查询对象获得查询结果;最后将查询结果返回给用户。构建的食品安全知识本体库中食品知识本体具有层级结构,且层级之间通过关系对象关联,食品知识本体之间关系逻辑严密,对于用户查询的食品安全数据的形式进行划分,针对不同情况分别处理,且对于复杂的自然语言可以进行分词处理,由此解决了用户无法精确地查找到与需求相关的资源的问题,使得用户可以比较精确地查找到与需求相关的资源。

对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于知识本体的食品安全数据信息检索的方法及系统设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1