本发明涉及工业数据集成领域,尤其是涉及一种基于本体的供应商数据分析方法及分析系统。
背景技术:
随着信息技术的发展,越来越多的数据采用电子化形式存储,以提高数据存储的便捷高效性,同时可以根据这些数据进行后期的分析。
而工业大数据分析的数据量越大,从中分析得到的有效的、有价值的判断就越多。由于工业信息资源具有异质、异构的特征,缺乏统一的数据标准规范,工业数据集成难度较大,因此给数据分析带来了一系列问题。
技术实现要素:
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于本体的供应商数据分析方法。
本发明的目的可以通过以下技术方案来实现:
一种基于本体的供应商数据分析方法,该方法基于用户分析请求,利用本体语义查询方法在语义层中获得供应商数据,进而获得分析结果,其中,所述语义层的构建具体包括以下步骤:
1)爬取供应商相关web数据;
2)基于所述供应商相关web数据构建供应商局部本体;
3)分别建立供应商局部本体与供应商全局本体的映射关系以及供应商局部本体与数据库的映射关系,形成语义层。
进一步地,所述供应商局部本体描述有供应商概念及其关系。
进一步地,所述步骤2)中,构建供应商局部本体具体为:
将所述供应商相关web数据解析为文本数据和结构化数据,分别基于所述文本数据和结构化数据构建对应的供应商局部本体。
进一步地,基于所述文本数据构建供应商局部本体的过程包括:
a1)使用自然语言处理技术对所述文本数据进行处理;
a2)从步骤a1)获得的数据中抽取概念及概念关系;
a3)根据步骤a2),利用jena进行供应商局部本体构建。
进一步地,基于所述结构化数据构建供应商局部本体的过程包括:
利用d2rq映射引擎将结构化数据转换为rdf格式数据,构建供应商局部本体。
进一步地,所述供应商局部本体与供应商全局本体的映射规则包括:
如果2个类有相同的父类和子类,那么2个类可能相同;
如果2个类有相同的实例或相同的属性,那么2个类可能相同;
如果2个属性存在相同的定义域和值域,那么这2个属性可能相同;
如果2个属性的父属性或子属性相同,那么这2个属性可能相同。
进一步地,所述供应商局部本体与数据库的映射规则包括:
局部本体中的概念对应到关系数据库中表名;
局部本体中的属性与关系数据库中的属性列相对性;
将局部本体中的关系对应到关系数据库中外键。
本发明还提供一种基于本体的供应商数据分析系统,包括:
请求获取模块,用于获取用户分析请求;
算法调用模块,用于根据所述用户分析请求调用相应的供应商数据分析算法;
查询模块,用于根据所述供应商数据分析算法,利用本体语义查询方法在语义层中查询获得所需的供应商数据;
数据调用模块,用于根据所述查询模块的查询结果在存储层进行所需供应商数据调用;
分析模块,用于根据所述供应商数据分析算法和供应商数据获得分析结果并输出;
所述语义层具有供应商局部本体与供应商全局本体的映射关系以及供应商局部本体与数据库的映射关系。
与现有技术相比,本发明将本体引入到供应商数据分析中,确保了供应商数据的语义统一,保障了对多源异构的供应商数据分析准确性,具有以如下有益效果:
1)本发明将供应商web数据解析为文本数据以及结构化数据,并分别构建供应商局部本体,通过建立已有的供应商领域本体与供应商局部本体以及供应商局部本体与数据库的映射规则作为语义层,支持供应商数据的语义查询,同时能够为供应商数据分析提供数据。
2)本发明通过本体来实现语义的查询,解决了工业大数据多源异构等导致的信息孤岛问题。本体可实现形式化地描述概念,从而作为语义的共享模型,为语义集成提供重要的技术支持。
3)本发明供应商数据解析为文本数据以及结构化数据,按不同方式构建相应的供应商局部本体,全面可靠。
4)本发明构建语义层,提供了数据分析的语义查询转换功能,且语义层的构建,考虑特定映射规则,方便可靠地实现供应商局部本体与已有领域本体以及数据库的映射工作。
5)本发明在方法层面与技术层面为供应商数据分析提供解决方案,为供应商选择提供意见。
附图说明
图1为爬取的供应商文本类型数据实例;
图2为爬取的供应商结构化数据实例;
图3为基于文本构建供应商本体的流程示意图;
图4为基于结构化数据构建供应商本体的流程示意图;
图5为查询过程示意图;
图6为基于本体的供应商数据分析流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图6所示,本实施例提供一种基于本体的供应商数据分析方法,该方法基于用户分析请求,利用本体语义查询方法在语义层中获得供应商数据,进而获得分析结果。其中,语义层的构建具体包括:
步骤1:爬取供应商相关web数据。
步骤2:基于供应商相关web数据构建供应商局部本体,具体为:
将供应商相关web数据解析为文本数据和结构化数据,分别基于文本数据和结构化数据构建对应的供应商局部本体。如图1所示,web数据中关于供应商的相关简介内容为可以存储为文本数据。结构化数据如图2所示,有一定的表格格式可以转化为结构化数据进行存储。
供应商局部本体描述有供应商概念及其关系。供应商概念涵盖了供应商信息、产品信息、法人代表等。
如图3所示,基于文本数据构建供应商局部本体的过程包括:
a1)使用自然语言处理技术对文本数据进行处理,包括分词、词性标注以及停用词过滤,为接下来的本体概念抽取以及概念关系抽取做准备。
a2)从步骤a1)获得的数据中抽取概念及概念关系。
概念抽取:采用基于规则和统计的方法抽取概念,首先利用词法及句法建立规则,实现对多词短语的抽取,然后使用改进的tf-idf算法来对概念进行过滤。
关系抽取:概念关系包括分类关系和非分类关系,采用基于规则的方法抽取分类关系,同时采用关联规则及依存句法分析来进行非分类关系抽取。
a3)根据步骤a2),利用jena进行供应商局部本体构建,基于protégé可视化本体。
如图4所示,基于结构化数据构建供应商局部本体的过程包括:
利用d2rq映射引擎将结构化数据转换为rdf格式数据,构建供应商局部本体。
步骤3:分别建立供应商局部本体与供应商全局本体的映射关系以及供应商局部本体与数据库的映射关系,形成语义层。本体映射是利用映射规则,完成供应商局部本体与已有领域本体以及数据库的映射工作。
供应商局部本体与供应商全局本体的映射规则包括:
如果2个类有相同的父类和子类,那么2个类可能相同;
如果2个类有相同的实例或相同的属性,那么2个类可能相同;
如果2个属性存在相同的定义域和值域,那么这2个属性可能相同;
如果2个属性的父属性或子属性相同,那么这2个属性可能相同。
供应商局部本体与数据库的映射规则包括:
局部本体中的概念对应到关系数据库中表名;
局部本体中的属性与关系数据库中的属性列相对性;
将局部本体中的关系对应到关系数据库中外键。
基于上述供应商数据分析方法,本实施例可提供一种供应商数据分析系统,包括:
请求获取模块,用于获取用户分析请求;
算法调用模块,用于根据用户分析请求调用相应的供应商数据分析算法;
查询模块,用于根据供应商数据分析算法,利用本体语义查询方法在语义层中查询获得所需的供应商数据;
数据调用模块,用于根据查询模块的查询结果在存储层进行所需供应商数据调用;
分析模块,用于根据供应商数据分析算法和供应商数据获得分析结果并输出,反馈给用户。
查询模块的查询过程如图5所示,具体为:
b1)根据算法提交查询请求,查询生成器将查询请求包装成全局的查询语句,并对sparql语句进行必要的参数转换。
b2)将封装好的sparql语句提交到查询分解器,查询分解器将根据局部本体和领域本体的映射关系,以及局部本体和数据源的映射关系,将sparql语句分解为对应不同数据源的子查询语句,并将接收的子查询相关参数改写为局部数据库中参数,将子查询语句转化为相应数据库的查询语言。
b3)通过修改后的子查询语句对不同的底层数据源进行访问。
b4)数据库将返回访问得到的结果到整合查询模块中。
b5)查询模块将结果按照要求合并处理后返回。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。