非结构化数据全文搜索方法、系统及计算机设备与流程

文档序号:24352503发布日期:2021-03-19 12:38阅读:301来源:国知局
非结构化数据全文搜索方法、系统及计算机设备与流程

本申请涉及信息搜索技术领域,特别是涉及一种非结构化数据全文搜索方法、系统及计算机设备。



背景技术:

目前垂直搜索在各大门户,电子商务等网站均有比较广泛的应用,其主要采用结构化数据全文搜索给用户提供了更加垂直、直观的搜索服务,使得用户能在某一特定的网站上渐变、快捷、准确地获取自己需要的信息。而对于企事业单位、国家政府机关,其非结构化文件(如pdf文档、doc文档和ppt文档)居多,因此,需要提供一套完整的非结构化数据全文搜索的解决方案。

传统技术中,将非结构化文件存储在网页端,通过预览搜索或者相应的格式软件程序进行搜索以实现非结构化数据全文搜索,获取预期搜索的目标文本信息对应的索引信息,进一步通过索引信息从非结构化文件中提取到目标文本信息。但是,传统的非结构化数据全文搜索方法操作复杂,导致非结构化数据的搜索效率较低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高非结构化数据搜索效率的非结构化数据全文搜索方法、系统及计算机设备。

一种非结构化数据全文搜索方法,所述方法包括:

将非结构化文件解析成半结构化信息;

对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

根据所述向量化结果进行召回处理,确定目标全文搜索结果。

在其中一个实施例中,所述向量结果包括向量化单元信息以及向量化关键信息;

所述对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果,包括:

对所述半结构化信息进行向量化处理,得到所述向量化单元信息;

对所述全文搜索的关键信息进行向量化处理,得到所述向量化关键信息。

在其中一个实施例中,所述对所述半结构化信息进行向量化处理,得到向量化单元信息,包括:

提取所述半结构化信息中的不同单元信息;

根据不同单元信息进行向量化处理,得到所述向量化单元信息。

在其中一个实施例中,所述根据不同单元信息进行向量化处理,得到所述向量化单元信息,包括:

对不同单元信息进行预处理,得到预处理后的不同单元信息;

对所述预处理后的不同单元信息进行向量化处理,得到所述向量化单元信息。

在其中一个实施例中,所述方法还包括:

接收全文搜索指令,其中,所述全文搜索指令携带所述全文搜索的关键信息;

响应所述全文搜索指令。

在其中一个实施例中,所述根据所述向量化结果进行召回处理,确定目标全文搜索结果,包括:

对所述向量化单元信息和所述向量化关键信息进行相似度处理,得到初始全文搜索结果;

对所述初始全文搜索结果进行排序处理,确定目标全文搜索结果。

在其中一个实施例中,所述对所述初始全文搜索结果进行排序处理,确定目标全文搜索结果,包括:

根据目标搜索信息,对所述初始全文搜索结果进行排序处理,获取所述目标全文搜索结果。

在其中一个实施例中,所述方法还包括:将所述向量化单元信息存储至全文搜索引擎。

一种非结构化数据全文搜索系统,所述系统包括:

文件解析模块,用于将非结构化文件解析成半结构化信息;

向量化模块,用于对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

召回模块,用于根据所述向量化结果进行召回处理,确定目标全文搜索结果。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

将非结构化文件解析成半结构化信息;

对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

根据所述向量化结果进行召回处理,确定目标全文搜索结果。

一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

将非结构化文件解析成半结构化信息;

对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

根据所述向量化结果进行召回处理,确定目标全文搜索结果。

上述非结构化数据全文搜索方法、系统、计算机设备及存储介质,该方法将非结构化文件解析成半结构化信息,对半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果,并根据向量化结果进行召回处理,确定目标全文搜索结果;该方法不需要打开非结构化文件,也不需要将非结构化文件转换成结构化文件后,执行先获取预期搜索的目标文本信息对应的索引信息,再根据索引信息从非结构化文件中提取目标文本信息这样复杂的流程,可以将非结构化文件解析为半结构化文件后,进一步实现智能搜索直接获取,从而降低了非结构化数据全文搜索方法操作的复杂性,提高了非结构化数据的搜索效率。

附图说明

图1为一个实施例中非结构化数据全文搜索的流程示意图;

图2为另一个实施例中向量化处理的流程示意图;

图3为另一个实施例中召回处理的具体流程示意图;

图4为另一个实施例中全文搜索指令响应结果显示图;

图5为另一个实施例中患者管理界面文件中显示的html格式的文本内容的展示图;

图6为一个实施例中非结构化数据全文搜索系统的结构示意图;

图7为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本实施例提供的非结构化数据全文搜索方法,可以适用于计算机设备中。可选的,非结构化数据全文搜索可以理解为不打开非结构化文件,对非结构化文件中的某一处内容进行搜索的过程。其中,上述计算机设备可以为智能手机、平板电脑、笔记本电脑、台式电脑或个人数字助理等具有信息处理功能的电子设备,本实施例对计算机设备的具体形式不做限定。

需要说明的是,本申请实施例提供的非结构化数据全文搜索方法的应用环境可以为非结构化数据全文搜索系统,该系统可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备的部分或者全部。下述方法实施例的执行主体以计算机设备为例来进行说明。在本实施例中,计算机设备可以安装document2text插件,通过document2text插件实现上述非结构化数据全文搜索方法;该document2text插件可以为自定义的功能插件。

图1为一实施例提供的非结构化数据全文搜索方法的流程示意图。本实施例涉及的是如何对非结构化文本进行全文搜索的实现过程,以该方法应用于计算机设备为例进行说明。如图1所示,该方法包括:

s1000、将非结构化文件解析成半结构化信息。

具体的,计算机设备可以先识别本地存储的每个非结构化文件的文本文件类型,然后利用document2html算法将非结构化文件解析成半结构化信息。可选的,上述非结构化文件的文本文件类型可以理解为非结构化文件中的文本格式,即pdf类型、doc类型和ppt类型等。可选的,上述document2html算法可以理解为文本文件类型对应的文本协议,该文本协议可以为pdf协议、doc协议和ppt协议等。如pdf类型的非结构化文件对应的文本协议可以为pdf协议,doc类型的非结构化文件对应的文本协议可以为doc协议,ppt类型的非结构化文件对应的文本协议可以为ppt协议。

其中,上述半结构化信息可以为html格式的文本信息,即网页格式的文本信息,半结构化信息可以在网页端被预览,还可以进行页面跳转、在实现全文搜索操作时快速定位目标文本信息并能够直接获取目标文本信息,同时,还便于从中提取结构化数据、便于全文搜索系统的素材内容搜集、也便于后面推荐系统、手册内容推荐、消息推送和更新提醒,可操作性较大。而所谓的结构化信息为表格类型的文本信息,不能被预览,而且实现搜索操作后并不能获取到目标文本信息,仅能获取到目标文本信息对应的索引信息,可操作性较小。

在本实施例中,计算机设备可以将非结构化文件解析成章和节包含的半结构化信息;也就是,解析后的半结构化信息的布局结构与解析前非结构化文件中的文本信息的布局结构相同。进一步,将解析后得到的半结构化信息可以存储至html服务器,以供下次全文搜索时使用。

另外,在将非结构化文件中doc类型和ppt类型的文件解析成半结构化信息时,可以先将doc类型和ppt类型的文件转换为pdf类型的文件。

s2000、对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果。

具体的,计算机设备可以对半结构化信息和全文搜索的关键信息进行向量化处理。可选的,向量化处理可以理解为将文本信息转换成二值化信息的过程。可选的,全文搜索的关键信息可以为待搜索内容中的关键词和/或关键字。

s3000、根据所述向量化结果进行召回处理,确定目标全文搜索结果。

具体的,计算机设备可以根据获取到的向量化结果进行召回处理,以获取目标全文搜索结果。可选的,召回处理可以理解为通过相似度计算寻找与目标全文搜索结果相似的内容对应的向量化结果。

上述非结构化数据全文搜索方法中,将非结构化文件解析成半结构化信息,对半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果,并根据向量化结果进行召回处理,确定目标全文搜索结果;该方法不需要打开非结构化文件,也不需要将非结构化文件转换成结构化文件后,执行先获取预期搜索的目标文本信息对应的索引信息,再根据索引信息从非结构化文件中提取目标文本信息这样复杂的流程,可以将非结构化文件解析为半结构化文件后,进一步实现智能搜索直接获取目标全文搜索结果,从而降低了非结构化数据全文搜索方法操作的复杂性,提高了非结构化数据的搜索效率。

作为其中一个实施例,所述向量结果包括向量化单元信息以及向量化关键信息,如图2所示,上述s2000中对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果的步骤,可以通过以下步骤实现:

s2100、对所述半结构化信息进行向量化处理,得到所述向量化单元信息。

具体的,计算机设备可以对转换后的所有半结构化信息进行向量化处理,得到向量化单元信息。可选的,非结构化文件对应的半结构化信息可以多页半结构化信息,每页半结构化信息对应解析前非结构化文件中相应页的文本信息;每页半结构化信息可以包括标题内容、标题下的文本内容以及摘要内容中的至少一种。

其中,上述s2100中对所述半结构化信息进行向量化处理,得到所述向量化单元信息的步骤,具体可以包括:提取所述半结构化信息中的不同单元信息;对不同单元信息进行向量化处理,得到所述向量化单元信息。

需要说明的是,计算机设备可以采用html2text算法先提取每页半结构化信息中的不同单元信息;不同单元信息可以为半结构化信息中的标题内容、标题下的文本内容和/或摘要内容。也就是,计算机设备可以提取每页半结构化信息中的所有内容,即包括标题内容、标题下的文本内容和/或摘要内容。

另外,计算机设备可以按照提取不同单元信息的先后顺序,通过提取到的不同单元信息进行向量化处理,得到向量化单元信息。

其中,所述根据不同单元信息进行向量化处理,得到所述向量化单元信息,具体可以包括:对不同单元信息进行预处理,得到预处理后的不同单元信息;对所述预处理后的不同单元信息进行向量化处理,得到所述向量化单元信息

在实施例中,计算机设备可以先对不同单元信息进行向量化处理,得到预处理后的不同单元信息,然后通过chapter2vec向量化模型,采用向量化算法对预处理后的不同单元信息进行向量化处理。可选的,上述预处理可以理解为过滤掉不同单元信息中的冗余标点符号和冗余文本内容的过程;过滤掉冗余标点符号可以理解为过滤掉不同单元信息中的所有标点符号;过滤掉冗余文本内容可以理解为过滤掉不同单元信息中的介词。另外,上述向量化算法可以为tfidf算法、bm25算法、word2vec算法、fasttext算法等。

进一步地,在s2100执行之后,所述方法还可以包括:将所述向量化单元信息存储至全文搜索引擎。

在本实施例中,计算机设备可以将向量化单元信息存储至全文搜索引擎,以便通过全文搜索引擎进行非结构化数据全文搜索时使用。可选的,全文搜索引擎可以为分布式多用户能力的全文搜索引擎和高性能的全文搜索引擎等,如elasticsearch、redisearch、solr、faiss。

s2200、对所述全文搜索的关键信息进行向量化处理,得到所述向量化关键信息。

具体的,计算机设备可以采用向量化算法,对全文搜索的关键信息进行向量化处理。可选的,全文搜索的关键信息可以为非结构化文件中待搜索内容中的关键字和/或关键词。

其中,在上述s2000中对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果的步骤之前,所述方法还可以包括以下步骤:接收全文搜索指令;响应所述全文搜索指令;其中,所述全文搜索指令包括全文搜索的关键信息。

需要说明的是,用户在全文搜索引擎中搜索全文搜索的关键信息,此时,计算机设备接收到全文搜索指令,然后可以响应全文搜索指令。

上述非结构化数据全文搜索方法中对解析后的半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果,进而根据向量化结果进行召回处理,确定目标全文搜索结果;该方法可以对解析后的半结构化信息和全文搜索的关键信息进行向量化处理,能够更方便的获取目标全文搜索结果,从而提高了非结构化数据的搜索效率。

作为其中一个实施例,如图3所示,上述s3000中根据所述向量化结果进行召回处理,确定目标全文搜索结果的步骤,可以通过以下步骤实现:

s3100、对所述向量化单元信息和所述向量化关键信息进行相似度处理,得到初始全文搜索结果。

具体的,计算机设备可以计算向量化单元信息和向量化关键信息之间的相似度,得到初始全文搜索结果。可选的,计算相似度的算法可以为距离算法和系数算法;距离算法可以为欧几里得距离、马哈拉诺比斯距离、曼哈顿距离、明可夫斯基距离和海明距离;系数算法可以为余弦相似度、皮尔森相关系数、jaccard相似系数、tanimoto系数等。可选的,得到的初始全文检索结果可以包括向量化单元信息、向量化关键信息以及向量化单元信息和向量化关键信息之间的相似度。

s3200、对所述初始全文搜索结果进行排序处理,确定目标全文搜索结果。

具体的,计算机设备可以按照相似度大小,对初始全文搜索结果进行排序处理,将相似度大的初始全文搜索结果中的向量化单元信息,对应的半结构化信息相应的非结构化文件中的文本内容确定为目标全文搜索结果。

其中,上述s3200中对所述初始全文搜索结果进行排序处理,确定目标全文搜索结果的步骤,具体可以包括:根据目标搜索信息,对所述初始全文搜索结果进行排序处理,获取所述目标全文搜索结果。

在本实施例中,计算机设备可以根据目标搜索信息,对初始全文搜索结果进行排序处理,进而获取目标全文搜索结果;此时,可以采用排序模型对初始全文搜索结果进行排序处理。在训练排序模型时,可以引入目标搜索信息进行训练。可选的,上述排序模型可以为learning2ranking模型。可选的,目标搜索信息可以包括常见用户搜索信息和历史搜索信息。

示例性的,若全文搜索的关键信息为患者管理,将患者管理输入全文搜索引擎(即输入全文搜索指令),响应全文搜索指令后的结果的计算机显示界面可如图4所示,图4所示为出现患者管理的相关非结构化文件名称和文件内容,然后从显示内容中确定用户搜索的目标全文搜索结果(即图4所示其中一个非结构化文件名称和所属文件内容);其中,用户通过鼠标点击非结构化文件名称后,可以显示html格式的文本内容,具体如图5所示,图5为患者管理界面文件中显示的html格式的文本内容。

上述非结构化数据全文搜索方法不需要打开非结构化文件,也不需要将非结构化文件转换成结构化文件后,执行先获取预期搜索的目标文本信息对应的索引信息,再根据索引信息从非结构化文件中提取目标文本信息这样复杂的流程,可以将非结构化文件解析为半结构化文件后,进一步实现智能搜索直接获取,从而降低了非结构化数据全文搜索方法操作的复杂性,提高了非结构化数据的搜索效率。

应该理解的是,虽然图1~3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1~3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

图6为一实施例提供的非结构化数据全文搜索系统的结构示意图。如图6所示,该系统可以包括:解析模块11、向量化模块12以及召回模块13。

具体的,所述解析模块11,用于将非结构化文件解析成半结构化信息;

所述向量化模块12,用于对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

所述召回模块13,用于根据所述向量化结果进行召回处理,确定目标全文搜索结果。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述向量结果包括向量化单元信息以及向量化关键信息;所述向量化模块12包括:第一向量化单元以及第二向量化单元。

具体的,所述第一向量化单元,用于对所述半结构化信息进行向量化处理,得到所述向量化单元信息;

所述第二向量化单元,用于对所述全文搜索的关键信息进行向量化处理,得到所述向量化关键信息。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述第一向量化单元包括:提取子单元以及向量化子单元。

其中,所述提取子单元,用于提取所述半结构化信息中的不同单元信息;

所述向量化子单元,用于根据不同单元信息进行向量化处理,得到所述向量化单元信息。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述向量化子单元具体用于对不同单元信息进行预处理,得到预处理后的不同单元信息,并对所述预处理后的不同单元信息进行向量化处理,得到所述向量化单元信息。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述非结构化数据全文搜索系统还包括:搜索指令接收模块以及搜索指令向量模块。

具体的,所述搜索指令接收模块,用于接收全文搜索指令,其中,所述全文搜索指令携带所述全文搜索的关键信息;

所述搜索指令向量模块,用于响应所述全文搜索指令。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述召回模块13包括:相似度处理单元以及排序单元。

具体的,所述相似度处理单元,用于对所述向量化单元信息和所述向量化关键信息进行相似度处理,得到初始全文搜索结果;

所述排序单元,用于对所述初始全文搜索结果进行排序处理,确定目标全文搜索结果。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述排序单元具体用于根据目标搜索信息,对所述初始全文搜索结果进行排序处理,获取所述目标全文搜索结果。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在其中一个实施例中,所述非结构化数据全文搜索系统还包括:存储模块。

其中,所述存储模块,用于将所述向量化单元信息存储至全文搜索引擎。

本实施例提供的非结构化数据全文搜索系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

关于非结构化数据全文搜索系统的具体限定可以参见上文中对于时间码的授时校准方法的限定,在此不再赘述。上述非结构化数据全文搜索系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种时间码的授时校准方法。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

将非结构化文件解析成半结构化信息;

对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

根据所述向量化结果进行召回处理,确定目标全文搜索结果。

在一个实施例中,提供了一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

将非结构化文件解析成半结构化信息;

对所述半结构化信息和全文搜索的关键信息进行向量化处理,得到向量化结果;

根据所述向量化结果进行召回处理,确定目标全文搜索结果。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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