结构化数据的搜索方法、装置、设备及存储介质
文献发布时间:2023-06-19 11:02:01
技术领域
本发明涉及互联网技术领域,尤其涉及结构化数据的搜索方法、装置、设备及存储介质。
背景技术
随着数据业务的发展,同一个业务中,一般既有结构化数据,也有非结构化数据,有时候两种类型的数据还会有某种对应关系,需要关联处理。其中,结构化数据是指行数据,存储在数据库里,可以用二维表结构来逻辑表达的数据,而难以用数据库二维逻辑表来表现的数据即称为非结构化数据,对于结构化数据可直接采用关系型数据库存储,因此,在对结构化数据进行查询时由于其结构关系的存在,导致查询数据化结构难度较高,而现有技术是通过结构化数据内部关联查询,但是通过该查询方式获得的结构化数据的成本较高且搜索效率较低。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种结构化数据的搜索方法、装置、设备及存储介质,旨在解决无法有效提高搜索效率并降低获得结构化数据的成本的技术问题。
为实现上述目的,本发明提供了一种结构化数据的搜索方法,所述结构化数据的搜索方法包括以下步骤:
获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据;
根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集;
根据所述结构化数据集生成对应的初始词库;
获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
可选地,所述获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据,包括:
获取自然语音的结构化数据,对所述结构化数据中的指标信息和对象信息进行特征提取,获得对应的特征信息;
根据所述特征信息对所述结构化数据进行分类,获得不同类型的结构化数据。
可选地,所述获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据之前,还包括:
获取初始词库添加指令,根据所述初始词库添加指令提取预设同义词;
将所述预设同义词添加至所述初始词库,生成第一目标词库;
获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:
获取预设输入查询语句,根据所述预设输入查询语句在所述第一目标词库中对结构化数据进行搜索,以得到目标结构化数据。
可选地,所述获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据之前,还包括:
获取时间维度和分析术语的关键字,判断所述初始词库中是否存在所述关键字;
若所述初始词库中不存在所述关键字,则访问预设平台,通过所述预设平台获得与所述关键字对应的当前词库;
将所述当前词库添加至所述初始词库中,生成第二目标词库;
获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:
获取预设输入查询语句,根据所述预设输入查询语句在所述第二目标词库中对所述结构化数据进行搜索,以得到目标结构化数据。
可选地,所述获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:
对所述初始词库进行关键词提取,获得关键词集;
获取预设输入查询语句,将所述预设输入查询语句与所述关键词集进行匹配,获得第一匹配结果;
根据所述第一匹配结果,获得在匹配过程中的第一个关键词;
根据所述第一个关键词对所述预设输入查询语句进行截取,获得目标输入查询语句;
对所述目标输入查询语句进行标记,根据标记后的目标输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
可选地,所述获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:
对所述初始词库进行解析,获得所述初始词库的语句;
获取预设输入查询语句,将所述预设输入查询语句与所述初始词库的语句进行匹配,获得第二匹配结果;
判断所述第二匹配结果是否存在精确匹配内容;
若所述第二匹配结果存在精确匹配内容,则将未精确匹配内容进行组合,获得新的语音语句;
将所述新的语音语句与所述初始词库的语句进行匹配,获得第三匹配结果,并根据所述第三匹配结果,以得到目标结构化数据。
可选地,所述获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:
获取预设输入查询语句,判断所述预设输入查询语句是否存在指标信息;
若所述预设输入查询语句存在所述指标信息,则根据所述指标信息得到关联的业务实体信息和业务维度信息;
根据所述业务实体信息和业务维度信息初始词库进行过滤,以获得过滤后的初始词库;
通过过滤后的初始词库对结构化数据进行搜索,以得到目标结构化数据。
此外,为实现上述目的,本发明还提出一种结构化数据的搜索装置,所述结构化数据的搜索装置包括:
分类模块,用于获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据;
创建模块,用于根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集;
生成模块,用于根据所述结构化数据集生成对应的初始词库;
搜索模块,用于获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
此外,为实现上述目的,本发明还提出一种结构化数据的搜索设备,所述结构化数据的搜索设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的结构化数据的搜索程序,所述结构化数据的搜索程序配置为实现如上文所述的结构化数据的搜索方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有结构化数据的搜索程序,所述结构化数据的搜索程序被处理器执行时实现如上文所述的结构化数据的搜索方法的步骤。
本发明提出的结构化数据的搜索方法,通过获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据;根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集;根据所述结构化数据集生成对应的初始词库;获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。本发明通过获取自然语言的结构化数据,对所述结构化数据进行分类,并根据分类后的结构化数据生成对应的数据模型,对所述数据模型进行数据集创建,获得对应的结构化数据集,利用所述结构化数据集生成对应的初始词库,获取预设查询语句,将根据所述预设查询语句在初始词库中进行搜索,获得目标结构化数据,以实现对结构化数据的搜索,从而有效提高搜索效率,并降低获得结构化数据的成本。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的结构化数据的搜索设备的结构示意图;
图2为本发明结构化数据的搜索方法第一实施例的流程示意图;
图3为本发明结构化数据的搜索方法第二实施例的流程示意图;
图4为本发明结构化数据的搜索方法第三实施例的流程示意图;
图5为本发明结构化数据的搜索装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的结构化数据的搜索设备结构示意图。
如图1所示,该结构化数据的搜索设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对结构化数据的搜索设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及结构化数据的搜索程序。
在图1所示的结构化数据的搜索设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明结构化数据的搜索设备中的处理器1001、存储器1005可以设置在结构化数据的搜索设备中,所述结构化数据的搜索设备通过处理器1001调用存储器1005中存储的结构化数据的搜索程序,并执行本发明实施例提供的结构化数据的搜索方法。
基于上述硬件结构,提出本发明结构化数据的搜索方法实施例。
参照图2,图2为本发明结构化数据的搜索方法第一实施例的流程示意图。
在第一实施例中,所述结构化数据的搜索方法包括以下步骤:
步骤S10,获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据。
需要说明的是,本实施例的执行主体可为结构化数据的搜索设备,还可为其他可实现相同或相似功能的设备,本实施例对此不作限制,在本实施例中,以结构化数据的搜索设备为例进行说明。
应当理解的是,所述自然语言的结构化数据指的是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理,常见的关系型数据库有Oracle、DB2、MySQL、Microsoft SQL Server以及Microsoft Access等数据库,关系型数据库是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,而行和列组成的是表,表与表组成数据库。
可以理解的是,所述不同类型的结构化数据库是根据所述结构化数据的类型进行划分的,具体是在获取到自然语言的结构化数据后,对所述结构化数据中的指标信息和对象信息进行特征提取,获得对应的特征信息,根据所述特征信息对所述结构化数据进行分类,从而获得不同类型的结构化数据,所述指标信息分为销售指标信息和产量指标信息,例如销售指标信息可以分为产品、客户、区域以及时间等信息,产量指标信息可以分为产品、产线、工厂以及生产日期等信息。
在具体实施中,结构化数据的搜索设备获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据。
步骤S20,根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集。
应当理解的是,所述数据模型是根据不同类型的结构化数据生成的,例如指标类型的结构化数据生成的是指标数据模型,对象类型的结构化数据生成的是对象数据模型,所述指标数据模型可以为产品数据模型、客户数据模型以及区域数据模型等数据模型,而所述对象数据模型分为主数据数据模型和业务凭证数据模型,具体可以为供应商数据模型、维修工单数据模型以及客户投诉单等数据模型。
可以理解的是,所述结构化数据集是根据对应的数据模型进行数据创建得到的,由于指标数据模型和对象数据模型均是以数据集的方式进行存储的,因此在获得所述数据模型后,需要对所述数据模型进行数据集的创建,以得到结构化数据集,所述数据集是基于物理表数据之熵的一种数据集合,同时数据是由一张表或者多张表通过一定的逻辑组合在一起,是形成指标数据模型或者对象数据模型的数据基础。
在具体实施中,结构化数据的搜索设备根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集。
步骤S30,根据所述结构化数据集生成对应的初始词库。
应当理解的是,所述初始词库是根据所述结构化数据集生成的,在获得结构化数据集后,对所述结构化数据集进行解析,获得对应的对象类型以及对应的业务信息,并对所述业务信息进行读取,根据读取的业务信息生成对应的初始词库,所述初始词库中的内容不太符合自然语言的习惯,需要进行同义词或者其他方式的补充,在后续中还可以根据用户实际需求和分析习惯,对初始词库进行不断的补充和完善。
在具体实施中,结构化数据的搜索设备根据所述结构化数据集生成对应的初始词库。
步骤S40,获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
应当理解的是,所述预设输入查询语句指的是将采集的语音转换为文本的语句或者直接通过键入设备输入的语句,例如键盘或者手写屏,而所述目标结构化数据是根据所述预设输入查询语句在初始词库中对结构化数据搜索得到的,在对结构化数据进行搜索可以采用多种策略,例如长度优先搜索策略、精确匹配搜索策略以及交叉搜索策略等搜索策略,本实施例对此不作限制,并以上述三种搜索策略为例进行搜索。
在具体实施中,结构化数据的搜索设备获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
本实施例通过获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据;根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集;根据所述结构化数据集生成对应的初始词库;获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。本发明通过获取自然语言的结构化数据,对所述结构化数据进行分类,并根据分类后的结构化数据生成对应的数据模型,对所述数据模型进行数据集创建,获得对应的结构化数据集,利用所述结构化数据集生成对应的初始词库,获取预设查询语句,将根据所述预设查询语句在初始词库中进行搜索,获得目标结构化数据,以实现对结构化数据的搜索,从而有效提高搜索效率,并降低获得结构化数据的成本。
在一实施例中,如图3所述,基于第一实施例提出本发明结构化数据的搜索方法第二实施例,所述步骤S40之前,包括:
步骤S301,获取时间维度和分析术语的关键字。
应当理解的是,所述时间维度的关键字指的是能够表示时间的关键字,所述时间维度的关键字可分为两部分,一部分是时间维度关键字,另一部分是时间条件关键字,所述时间维度关键字如年、月、季度、日期以及周等关键字,而所述时间条件关键字如今年、上半年、过去N年、最近N个季度、YYYY年MM月到YYYY年MM月以及最近N天等关键字,本实施例对N不作限定。
步骤S302,判断所述初始词库中是否存在所述关键字。
可以理解的是,在获取时间维度和分析术语的关键字后,对所述初始词库进行解析,获得对应的语句关键字,将所述时间维度和分析术语的关键字与所述语句关键字进行比较,以判断所述初始词库中是否存在所述关键字。
在具体实施中,结构化数据的搜索设备获取时间维度和分析术语的关键字,判断所述初始词库中是否存在所述关键字。
步骤S303,若所述初始词库中不存在所述关键字,则访问预设平台,通过所述预设平台获得与所述关键字对应的当前词库。
应当理解的是,在访问预设平台之前需要判定所述初始词库中不存在所述关键字,例如获取的所述时间维度和分析术语的关键字为A,而此时对所述初始词库进行解析得到的语句关键字为B1、B2以及B3,则判定所述初始词库中不存在所述时间维度和分析术语的关键字,则需要访问预设平台,在所述预设平台中获取与关键字A对应的当前词库。
可以理解的是,所述预设平台指的是包含除了初始词库的其他词库平台,所述预设平台可以是字典词库平台和网站词库平台等平台,所述平台中包括较多的词库信息,可能存在与初始词库相同的词库信息,也可能存在与其他不同的词库信息,此时需要通过词库中的语句关键字进行判断。
在具体实施中,结构化数据的搜索设备若所述初始词库中不存在所述关键字,则访问预设平台,通过所述预设平台获得与所述关键字对应的当前词库。
步骤S304,将所述当前词库添加至所述初始词库中,生成第二目标词库。
可以理解的是,所述第二目标词库是将当前词库添加至所述初始词句中得到的,则判定预设平台中的当前词库存在与初始词库不同的语句,则需要将所述不同的语句添加至所述初始词库中,以得到第二目标词库。
在具体实施中,结构化数据的搜索设备将所述当前词库添加至所述初始词库中,生成第二目标词库。
步骤S305,获取预设输入查询语句,根据所述预设输入查询语句在所述第二目标词库中对所述结构化数据进行搜索,以得到目标结构化数据。
可以理解的是,所述预设输入查询语句指的是将采集的语音转换为文本的语句或者直接通过键入设备输入的语句,例如键盘或者手写屏,而所述目标结构化数据是根据所述预设输入查询语句在第二目标词库中对结构化数据搜索得到的,例如,所述预设输入查询语句为A,根据所述预设输入查询语句A对应的关键字为A’,根据所述A’在所述第二目标词库中进行搜索获得目标结构化数据B,其中所述预设输入查询语句是对采集的语音通过文本转换获得的,而所述语音是在获得自然语音后通过语音识别程序接口识别得到的。
在具体实施中,结构化数据的搜索设备将所述当前词库添加至所述初始词库中,生成第二目标词库。
进一步的,所述目标结构化数据还可以通过预设输入查询语句在所述第一目标词库中对结构化数据进行搜索得到,具体是获取初始词库添加指令,根据所述初始词库添加指令提取预设同义词,将所述预设同义词添加至所述初始词库,生成第一目标词库,获取预设输入查询语句,根据所述预设输入查询语句获得对应的关键字,根据所述关键字在所述第一目标词库中进行搜索,以获得目标结构化数据。
可以理解的是,所述初始词库的添加指令指的是所述初始词库需要进行词库的添加所生成的指令,并根据所述添加指令提取出意义相同的词汇,并将所述词汇添加至初始词库中,以得到第一目标词库,所述同义词例如营业收入指标,维护一个同义词营收。
本实施例通过获取时间维度和分析术语的关键字,判断所述初始词库中是否存在所述关键字;若所述初始词库中不存在所述关键字,则访问预设平台,通过所述预设平台获得与所述关键字对应的当前词库;将所述当前词库添加至所述初始词库中,生成第二目标词库;获取预设输入查询语句,根据所述预设输入查询语句在所述第二目标词库中对所述结构化数据进行搜索,以得到目标结构化数据。通过获取时间维度和分析术语的关键字,判定所述初始词库中不存在所述关键字,此时需要访问预设平台,在所述预设平台中获得与关键字对应的当前词库,并将所述当前词库添加至初始词库中,以获得第二目标词库,获取预设输入查询语句,根据所述预设输入查询语句在第二目标词库中进行搜索,以获得目标结构化数据,从而有效增加初始词库的词汇信息并增加词库搜索范围。
在一实施例中,如图4所述,基于第一实施例提出本发明结构化数据的搜索方法第三实施例,所述步骤S40,包括:
步骤S401,对所述初始词库进行关键词提取,获得关键词集。
应当理解的是,所述关键词集是在对所述初始词库进行关键词提取得到的,例如,所述初始词库中存在A、B以及C三种类型的关键字,将所述A、B以及C关键词组合成一个集合,所述组合成的集合即为关键词集。
在具体实施中,结构化数据的搜索设备对所述初始词库进行关键词提取,获得关键词集。
步骤S402,获取预设输入查询语句,将所述预设输入查询语句与所述关键词集进行匹配,获得第一匹配结果。
可以理解的是,所述第一匹配结果是将所述预设输入查询语句与所述关键词集进行匹配得到的,具体是在获取预设输入查询语句后,对所述预设输入查询语句进行解析,以获得所述预设输入查询语句的关键词,并将所述预设输入查询语句的关键词与所述关键词集进行匹配,例如所述预设输入查询语句的关键词为A、B、C以及D,而所述关键词集只有A、B以及E,那么得到的第一匹配结果即为A和B。
在具体实施中,结构化数据的搜索设备获取预设输入查询语句,将所述预设输入查询语句与所述关键词集进行匹配,获得第一匹配结果。
步骤S403,根据所述第一匹配结果,获得在匹配过程中的第一个关键词。
可以理解的是,所述在匹配过程中的第一个关键字指的是第一个匹配成功的关键字,例如,所述第一匹配结果为A和B,如果A和B是按照顺序进行匹配的,那么此时A为在匹配过程中的第一个关键字。
在具体实施中,结构化数据的搜索设备根据所述第一匹配结果,获得在匹配过程中的第一个关键词。
步骤S404,根据所述第一个关键词对所述预设输入查询语句进行截取,获得目标输入查询语句。
可以理解的是,所述目标输入查询语句是通过将关键词对预设输入查询语句截取得到的,即为在获得到第一个匹配成功的关键字后,将所述关键字后的语句进行截取,只保留所述关键字前的语句,此时所述关键字前的语句即为目标输入查询语句,例如输入查询语句是“长沙供电分公司本部”,而初始词库中存储的有“长沙供电分公司”、“长沙”等关键词,但“长沙供电分公司本部”由于长度最长,系统将识别成一个关键词,并提示“长沙供电分公司”。
在具体实施中,结构化数据的搜索设备根据所述第一个关键词对所述预设输入查询语句进行截取,获得目标输入查询语句。
步骤S405,对所述目标输入查询语句进行标记,根据标记后的目标输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
可以理解的是,所述目标结构化数据是根据所述标记后的目标输入查询语句在初始词库中进行搜索得到的,所述对所述目标输入查询语句进行标记的目的是为了提高搜索效率,因为在对所述目标输入查询语句进行标记后,所述目标输入查询语句中就存在一个标记,之后在搜索时只需要根据所述标记即可完成对结构化数据的搜索,以得到目标结构化数据。
在具体实施中,结构化数据的搜索设备对所述目标输入查询语句进行标记,根据标记后的目标输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
进一步的,所述根据预设输入查询语句在初始词库中进行搜索还可以通过精确匹配搜索策略获得目标结构化数据,具体是对所述初始词库进行解析,获得所述初始词库的语句;获取预设输入查询语句,将所述预设输入查询语句与所述初始词库的语句进行匹配,获得第二匹配结果;判断所述第二匹配结果是否存在精确匹配内容;若所述第二匹配结果存在精确匹配内容,则将未精确匹配内容进行组合,获得新的语音语句;将所述新的语音语句与所述初始词库的语句进行匹配,获得第三匹配结果,并根据所述第三匹配结果,以得到目标结构化数据。
可以理解的是,所述第二匹配结果指的是将所述预设输入查询与所述初始词库的语句匹配获得的,若在匹配过程中遇到模糊匹配,则先判断是否含有精确匹配内容,如无则标记模糊匹配字符串并提示模糊匹配关键词,如有则判断剩余部分是否和剩余部分组合能精确匹配后台词库,如能精确匹配,则标记提示精确匹配部分,剩余部分作为下一轮比对输入,如无,则标记模糊匹配,提示精确部分和模糊部分的组合。
进一步的,所述根据预设输入查询语句在初始词库中进行搜索还可以通过交叉搜索策略,具体是获取预设输入查询语句,判断所述预设输入查询语句是否存在指标信息;若所述预设输入查询语句存在所述指标信息,则根据所述指标信息得到关联的业务实体信息和业务维度信息;根据所述业务实体信息和业务维度信息初始词库进行过滤,以获得过滤后的初始词库;通过过滤后的初始词库对结构化数据进行搜索,以得到目标结构化数据。
可以理解的是,所述指标信息指的是产品、客户、区域以及时间等信息,判断所述预设查询语句中是否存在所述指标信息,若所述预设查询语句存在所述指标信息,则根据所述指标信息获得对应的实体信息和业务维度信息,例如所述实体信息和业务维度信息中有A和B,而所述初始词库有A、B以及C,则将所述初始词库中的A和B进行过滤,以得到C,再根据C对结构化数据进行搜索,以得到目标结构化数据。
本实施例通过对所述初始词库进行关键词提取,获得关键词集;获取预设输入查询语句,将所述预设输入查询语句与所述关键词集进行匹配,获得第一匹配结果;根据所述第一匹配结果,获得在匹配过程中的第一个关键词;根据所述第一个关键词对所述预设输入查询语句进行截取,获得目标输入查询语句;对所述目标输入查询语句进行标记,根据标记后的目标输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。通过对初始词库进行关键词提取,获得对应关键词,并将所述关键词组合成一个集合,获得关键词集,获取预设输入查询语句,对所述预设查询语句进行提取,获得对应的当前关键词,将所述关键词与所述关键词集进行匹配,获得第一匹配结果,并根据所述第一匹配结果获得在匹配过程的第一关键词,根据所述第一关键词对所述预设查询语句进行关键词的截取,并对截取后的输入查询语句进行标记,并根据标记后的目标输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,从而有效提高搜索效率并降低获得结构化数据的成本。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有结构化数据的搜索程序,所述结构化数据的搜索程序被处理器执行时实现如上文所述的结构化数据的搜索方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
此外,参照图5,本发明实施例还提出一种结构化数据的搜索装置,所述结构化数据的搜索装置包括:
分类模块10,用于获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据。
应当理解的是,所述自然语言的结构化数据指的是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理,常见的关系型数据库有Oracle、DB2、MySQL、Microsoft SQL Server以及Microsoft Access等数据库,关系型数据库是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,而行和列组成的是表,表与表组成数据库。
可以理解的是,所述不同类型的结构化数据库是根据所述结构化数据的类型进行划分的,具体是在获取到自然语言的结构化数据后,对所述结构化数据中的指标信息和对象信息进行特征提取,获得对应的特征信息,根据所述特征信息对所述结构化数据进行分类,从而获得不同类型的结构化数据,所述指标信息分为销售指标信息和产量指标信息,例如销售指标信息可以分为产品、客户、区域以及时间等信息,产量指标信息可以分为产品、产线、工厂以及生产日期等信息。
在具体实施中,结构化数据的搜索设备获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据。
创建模块20,用于根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集。
应当理解的是,所述数据模型是根据不同类型的结构化数据生成的,例如指标类型的结构化数据生成的是指标数据模型,对象类型的结构化数据生成的是对象数据模型,所述指标数据模型可以为产品数据模型、客户数据模型以及区域数据模型等数据模型,而所述对象数据模型分为主数据数据模型和业务凭证数据模型,具体可以为供应商数据模型、维修工单数据模型以及客户投诉单等数据模型。
可以理解的是,所述结构化数据集是根据对应的数据模型进行数据创建得到的,由于指标数据模型和对象数据模型均是以数据集的方式进行存储的,因此在获得所述数据模型后,需要对所述数据模型进行数据集的创建,以得到结构化数据集,所述数据集是基于物理表数据之熵的一种数据集合,同时数据是由一张表或者多张表通过一定的逻辑组合在一起,是形成指标数据模型或者对象数据模型的数据基础。
在具体实施中,结构化数据的搜索设备根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集。
生成模块30,用于根据所述结构化数据集生成对应的初始词库。
应当理解的是,所述初始词库是根据所述结构化数据集生成的,在获得结构化数据集后,对所述结构化数据集进行解析,获得对应的对象类型以及对应的业务信息,并对所述业务信息进行读取,根据读取的业务信息生成对应的初始词库,所述初始词库中的内容不太符合自然语言的习惯,需要进行同义词或者其他方式的补充,在后续中还可以根据用户实际需求和分析习惯,对初始词库进行不断的补充和完善。
在具体实施中,结构化数据的搜索设备根据所述结构化数据集生成对应的初始词库。
搜索模块40,用于获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
应当理解的是,所述预设输入查询语句指的是将采集的语音转换为文本的语句或者直接通过键入设备输入的语句,例如键盘或者手写屏,而所述目标结构化数据是根据所述预设输入查询语句在初始词库中对结构化数据搜索得到的,在对结构化数据进行搜索可以采用多种策略,例如长度优先搜索策略、精确匹配搜索策略以及交叉搜索策略等搜索策略,本实施例对此不作限制,并以上述三种搜索策略为例进行搜索。
在具体实施中,结构化数据的搜索设备获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
本实施例通过获取自然语言的结构化数据,对所述结构化数据进行分类,获得不同类型的结构化数据;根据所述不同类型的结构化数据生成对应的数据模型,根据所述数据模型进行数据集创建,以获得结构化数据集;根据所述结构化数据集生成对应的初始词库;获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。本发明通过获取自然语言的结构化数据,对所述结构化数据进行分类,并根据分类后的结构化数据生成对应的数据模型,对所述数据模型进行数据集创建,获得对应的结构化数据集,利用所述结构化数据集生成对应的初始词库,获取预设查询语句,将根据所述预设查询语句在初始词库中进行搜索,获得目标结构化数据,以实现对结构化数据的搜索,从而有效提高搜索效率,并降低获得结构化数据的成本。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的结构化数据的搜索方法,此处不再赘述。
在一实施例中,所述分类模块10,还用于获取自然语音的结构化数据,对所述结构化数据中的指标信息和对象信息进行特征提取,获得对应的特征信息;根据所述特征信息对所述结构化数据进行分类,获得不同类型的结构化数据。
在一实施例中,所述搜索模块40,还用于获取初始词库添加指令,根据所述初始词库添加指令提取预设同义词;将所述预设同义词添加至所述初始词库,生成第一目标词库;获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:获取预设输入查询语句,根据所述预设输入查询语句在所述第一目标词库中对结构化数据进行搜索,以得到目标结构化数据。
在一实施例中,所述搜索模块40,还用于获取时间维度和分析术语的关键字,判断所述初始词库中是否存在所述关键字;若所述初始词库中不存在所述关键字,则访问预设平台,通过所述预设平台获得与所述关键字对应的当前词库;将所述当前词库添加至所述初始词库中,生成第二目标词库;获取预设输入查询语句,根据所述预设输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据,包括:获取预设输入查询语句,根据所述预设输入查询语句在所述第二目标词库中对所述结构化数据进行搜索,以得到目标结构化数据。
在一实施例中,所述搜索模块40,还用于对所述初始词库进行关键词提取,获得关键词集;获取预设输入查询语句,将所述预设输入查询语句与所述关键词集进行匹配,获得第一匹配结果;根据所述第一匹配结果,获得在匹配过程中的第一个关键词;根据所述第一个关键词对所述预设输入查询语句进行截取,获得目标输入查询语句;对所述目标输入查询语句进行标记,根据标记后的目标输入查询语句在所述初始词库中对所述结构化数据进行搜索,以得到目标结构化数据。
在一实施例中,所述搜索模块40,还用于对所述初始词库进行解析,获得所述初始词库的语句;获取预设输入查询语句,将所述预设输入查询语句与所述初始词库的语句进行匹配,获得第二匹配结果;判断所述第二匹配结果是否存在精确匹配内容;若所述第二匹配结果存在精确匹配内容,则将未精确匹配内容进行组合,获得新的语音语句;将所述新的语音语句与所述初始词库的语句进行匹配,获得第三匹配结果,并根据所述第三匹配结果,以得到目标结构化数据。
在一实施例中,所述搜索模块40,还用于获取预设输入查询语句,判断所述预设输入查询语句是否存在指标信息;若所述预设输入查询语句存在所述指标信息,则根据所述指标信息得到关联的业务实体信息和业务维度信息;根据所述业务实体信息和业务维度信息初始词库进行过滤,以获得过滤后的初始词库;通过过滤后的初始词库对结构化数据进行搜索,以得到目标结构化数据。
本发明所述结构化数据的搜索装置的其他实施例或具有实现方法可参照上述各方法实施例,此处不在赘余。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
- 结构化数据的搜索方法、装置、设备及存储介质
- 非结构化数据的共享方法、装置、计算机设备和存储介质