一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

分词分句索引处理方法、文档检索方法、设备及存储介质与流程

2022-10-26 17:54:01 来源:中国专利 TAG:


1.本技术涉及加密存储技术领域,具体而言,涉及一种分词分句索引处理方法、文档检索方法、设备及存储介质。


背景技术:

2.数据存储在不可信的云服务器上时,为了避免云服务器读取到数据内容,需要对数据进行加密后再存储,为了实现对加密后的数据进行关键词检索,技术人员提出了可搜索加密的思想。
3.可搜索加密的实现方案是在客户端对文档明文进行分词和加密生成密文索引,并对文档进行加密,生成密文文档,再将密文索引和密文文档分别上传至云服务器保存,检索时根据关键字进行查询获取目标文档信息列表。
4.但是,目前可搜索加密的密文索引结构只支持关键词检索时返回查询结果文档列表信息,无法查看关键词上下文,查询结果内容不可见,从而无法判断查询结果是否符合检索要求,密文检索的效率较低,检索结果的可见性也有待提高。


技术实现要素:

5.本技术的目的在于,针对上述现有技术中的不足,提供一种分词分句索引处理方法、文档检索方法、设备及存储介质,以解决现有技术中密文检索的效率较低和检索结果的可见性低的问题。
6.为实现上述目的,本技术实施例采用的技术方案如下:第一方面,本技术一实施例提供了一种分词分句索引处理方法,所述方法包括:终端设备对明文文档进行分句,得到多个待处理分句,并对各待处理分句分别进行加密,得到多个密文分句,将多个密文分句组成密文分句集合;对各所述待处理分句进行分词及加密处理,得到各所述待处理分句对应的多个加密分词;根据各所述加密分词及所述加密分词在待处理分句中对应的分词位置,生成各加密分词对应的分词分句关系对组,所述分词分句关系对组中包括至少一个分词分句关系对,各分词分句关系对分别用于表征所述加密分词在一个密文分句中的位置;根据各加密分词对应的分词分句关系对组,生成各加密分词对应的出现频次信息;将各所述加密分词以及所述加密分词对应的出现频次信息组合为一个密文索引,并将各所述加密分词对应的密文索引、各加密分词对应的分词分句关系对组以及所述密文分句集合发送给服务器。
7.可选的,所述根据各所述加密分词及所述加密分词在待处理分句中对应的分词位置,生成各加密分词对应的分词分句关系对组,包括:根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对
应的分词分句关系对;将各密文分句对应的分词分句关系对组合为所述加密分词对应的分词分句关系对组。
8.可选的,所述根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对应的分词分句关系对,包括:根据第一待处理分句中的分词数量,生成初始二进制字符串,所述初始二进制字符串中的字符数量为所述分词量,且所述初始二进制字符串中的各字符的值为预设的无效值,其中,所述第一待处理分句为所述明文文档中的任意一个待处理分句;将所述初始二进制字符串中的目标字符的值修改为预设的有效值,得到新的二进制字符串,其中,所述目标字符在所述初始二进制字符串中的位置为所述加密分词在所述第一待处理分句中对应的分词位置;将所述新的二进制字符串以及所述加密分词组合为所述第一待处理分句的密文分句对应的分词分句关系对。
9.可选的,所述根据各加密分词对应的分词分句关系对组,生成各加密分词对应的出现频次信息,包括:将加密分词对应的分词分句关系对组中所有分词分句关系对进行或运算处理,得到所述加密分词对应的出现频次信息。
10.可选的,所述方法还包括:接收明文关键词,并对所述明文关键词进行加密,得到密文关键词;将所述密文关键词发送给所述服务器,以使所述服务器根据所述密文关键词、当前保存的可检索文档的密文索引和分词分句关系对组以及密文分句集合进行检索并得到检索结果;接收并输出所述服务器发送的检索结果。
11.第二方面,本技术另一实施例提供了一种文档检索方法,所述方法包括:接收终端设备发送的密文关键词;在当前保存的密文索引库中查找与所述密文关键词匹配的至少一个目标密文索引,各目标密文索引分别对应一个待返回文档;确定所述目标密文索引对应的目标分词分句关系对组以及目标密文分句集合;根据所述目标分词分句关系对组,从所述目标密文分句集合中查找所述待返回文档中的待返回密文分句;根据所述目标密文索引中的出现频次信息,确定所述待返回文档的排列顺序;将按照所述排列顺序排列的所述待返回文档的待返回密文分句作为检索结果返回给所述终端设备。
12.可选的,所述根据所述目标分词分句关系对组,从所述目标密文分句集合中查找待返回密文分句,包括:从所述目标分词分句关系对组中读取各分词分句关系对,对各所述分词分句关系对进行解析,若所述分词分句关系对中包含预设的有效值,则将所述分词分句关系对所对应的密文分句作为一个待返回密文分句。
13.可选的,所述根据所述目标密文索引中的出现频次信息,确定所述待返回文档的
排列顺序,包括:根据各待返回文档对应的目标密文索引中的出现频次信息进行排序;根据所述出现频次信息的排列顺序,确定所述待返回文档的排列顺序。
14.第三方面,本技术另一实施例提供了一种分词分句索引处理装置,应用于终端设备,所述装置包括:分句模块、分词模块、关系对组生成模块、频次信息生成模块以及发送模块,其中:分句模块,用于终端设备对明文文档进行分句,得到多个待处理分句,并对各待处理分句分别进行加密,得到多个密文分句,将多个密文分句组成密文分句集合;分词模块,用于对各所述待处理分句进行分词及加密处理,得到各所述待处理分句对应的多个加密分词;关系对组生成模块,用于根据各所述加密分词及所述加密分词在待处理分句中对应的分词位置,生成各加密分词对应的分词分句关系对组,所述分词分句关系对组中包括至少一个分词分句关系对,各分词分句关系对分别用于表征所述加密分词在一个密文分句中的位置;频次信息生成模块,用于根据各加密分词对应的分词分句关系对组,生成各加密分词对应的出现频次信息;发送模块,用于将各所述加密分词以及所述加密分词对应的出现频次信息组合为一个密文索引,并将各所述加密分词对应的密文索引、各加密分词对应的分词分句关系对组以及所述密文分句集合发送给服务器。
15.可选的,所述关系对组生成模块,还用于:根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对应的分词分句关系对;将各密文分句对应的分词分句关系对组合为所述加密分词对应的分词分句关系对组。
16.可选的,所述关系对组生成模块,还用于:根据第一待处理分句中的分词数量,生成初始二进制字符串,所述初始二进制字符串中的字符数量为所述分词量,且所述初始二进制字符串中的各字符的值为预设的无效值,其中,所述第一待处理分句为所述明文文档中的任意一个待处理分句;将所述初始二进制字符串中的目标字符的值修改为预设的有效值,得到新的二进制字符串,其中,所述目标字符在所述初始二进制字符串中的位置为所述加密分词在所述第一待处理分句中对应的分词位置;将所述新的二进制字符串以及所述加密分词组合为所述第一待处理分句的密文分句对应的分词分句关系对。
17.可选的,所述频次信息生成模块,还用于:将加密分词对应的分词分句关系对组中所有分词分句关系对进行或运算处理,得到所述加密分词对应的出现频次信息。
18.第四方面,本技术另一实施例提供了一种文档检索装置,应用于服务器,所述装置包括:接收模块、匹配模块、确定模块、查找模块、顺序确定模块以及返回模块,其中:接收模块,用于接收终端设备发送的密文关键词;
匹配模块,用于在当前保存的密文索引库中查找与所述密文关键词匹配的至少一个目标密文索引,各目标密文索引分别对应一个待返回文档;确定模块,用于确定所述目标密文索引对应的目标分词分句关系对组以及目标密文分句集合;查找模块,用于根据所述目标分词分句关系对组,从所述目标密文分句集合中查找所述待返回文档中的待返回密文分句;顺序确定模块,用于根据所述目标密文索引中的出现频次信息,确定所述待返回文档的排列顺序;返回模块,用于将按照所述排列顺序排列的所述待返回文档的待返回密文分句作为检索结果返回给所述终端设备。
19.可选的,所述查找模块还用于:从所述目标分词分句关系对组中读取各分词分句关系对,对各所述分词分句关系对进行解析,若所述分词分句关系对中包含预设的有效值,则将所述分词分句关系对所对应的密文分句作为一个待返回密文分句。
20.可选的,所述顺序确定模块还用于:根据各待返回文档对应的目标密文索引中的出现频次信息进行排序;根据所述出现频次信息的排列顺序,确定所述待返回文档的排列顺序。
21.第五方面,本技术另一实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述分词分句索引处理方法或文档检索方法的步骤。
22.第六方面,本技术另一实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述分词分句索引处理方法或文档检索方法的步骤。
23.本技术的有益效果是:通过首先对明文文档分句,再对分句进行分词,并对分句和分词分别进行加密,对加密得到的密文分句和密文分词生成分词分句关系组,并生成各加密分词的出现频次信息,最后将各加密分词以及加密分词对应的出现频次信息组合为一个密文索引,并将各加密分词对应的密文索引、各加密分词对应的分词分句关系组以及密文分句集合发送给服务器,可以建立加密分词与其所在分句的关联关系,通过出现频次信息可以更好地表征出文档与加密分词的相关度,从而使得最终的密文索引可以指示分词所在的分句,在用户进行检索时时提高检索的准确度和可见性。
附图说明
24.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
25.图1示出了本技术实施例提供的一种应用场景的示意图;
图2示出了本技术实施例提供的一种分词分句索引处理方法的流程图;图3示出了本技术实施例提供的一种生成分词分句关系对组方法的流程图;图4示出了本技术实施例提供的一种生成分词分句关系对方法的流程图;图5示出了本技术实施例提供的一种分词分句索引处理示例的流程图;图6示出了本技术实施例提供的又一种分词分句索引处理方法的流程图;图7示出了本技术实施例提供的一种终端设备进行文档检索的流程图;图8示出了本技术实施例提供的又一种终端设备进行文档检索的流程图;图9示出了本技术实施例提供的一种文档检索方法的流程图;图10示出了本技术实施例提供的又一种分词分句索引处理方法和文档检索方法的流程图;图11示出了本技术实施例提供的一种分词分句索引处理装置的结构示意图;图12示出了本技术实施例提供的一种文档检索装置的结构示意图;图13示出了本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
26.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。 应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。 此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
27.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
28.需要说明的是,本技术实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
29.当数据存储在一个不可信的服务器时,为了让服务器不能够了解到数据内容,需要对数据加密后再存储,为了实现在加密后的数据上进行关键词检索,提出了可搜索加密的思想。
30.目前的可搜索加密方法,是在客户端对文档明文进行分词和加密生成密文索引,并对文档进行加密,生成密文文档,再将密文索引和密文文档分别上传至云服务器保存,检索时根据关键字进行查询获取目标文档信息列表。
31.由于目前的可搜索加密方法返回的检索结果只包括目标文档信息列表,无法返回关键词的上下文信息,查询结果的内容不可见,用户就无法快速的判断出查询结果是否符合要求,需要下载所有关联的密文文档,并对密文文档进行解密才能查看密文文档内容,并确定查询结果是否准确,因此密文检索的效率较低,检索结果的可见性也有待提高。
32.基于上述问题,本技术提出一种分词分句索引处理方法和与之对应的文档检索方法,其中,分词分句索引处理方法的执行主体可以是终端设备,文档检索方法的执行主体可以是服务器。
33.如图1所示,是本技术给出的一种应用场景,包括上传文档的终端设备101、进行查询的终端设备102以及服务器103,终端设备101和终端设备102分别与服务器103通信连接。首先,执行人员在终端设备101上传多个明文文档,终端设备101根据本技术的分词分句索引处理方法对多个明文文档进行分词分句索引处理,并将处理的结果上传至服务器103的数据库中,然后,其他用户在终端设备102输入查询关键词,由终端设备102将查询关键词加密后发送给服务器103,服务器103根据本技术的文档检索方法,对接收到的查询关键词在数据库中进行检索,并将检索结果返回给终端设备102。
34.接下来对本技术的分词分句索引处理方法进行说明,如图2所示,该方法包括:s201:终端设备对明文文档进行分句,得到多个待处理分句,并对各待处理分句分别进行加密,得到多个密文分句,将多个密文分句组成密文分句集合。
35.可选的,用户可以在终端设备上传多份明文文档,终端设备可以首先对接收到的多份明文文档生成唯一的标识,并对每个明文文档进行分句,示例性的,可以根据标点符号进行文档的分句,得到每个明文文档对应的多条分句。
36.可选的,待处理分句可以是对明文文档分句后得到的多个明文分句。
37.可选的,终端设备中可以包括密钥信息,密钥信息可以由用户上传得到,或是预先配置在终端设备上,用于进行待处理分句的加密,示例性的,终端设备可以对多个待处理分句分别使用国密sm4加密算法和密钥依次进行加密,得到多个密文分句。
38.密文分句集合可以是终端设备对多个待处理分句分别加密后得到的多个密文分句组成的集合,密文分句集合中可以包括明文文档的标识,用以指示该密文分句集合对应的明文文档。
39.示例性的,假设上传的明文文档id1是:“昔人已乘黄鹤去,此地空余黄鹤楼。黄鹤一去不复返,白云千载空悠悠。
”ꢀ
id1为明文文档的标识,终端设备分句后得到的多个待处理分句可以分别是a1:昔人已乘黄鹤去,a2:此地空余黄鹤楼,a3:黄鹤一去不复返,a4:白云千载空悠悠,对多个待处理分句进行加密后得到的密文分句可以是s1、s2、s3和s4,密文分句集合可以是id1-{ s1,s2,s3,s4}。
40.s202:对各待处理分句进行分词及加密处理,得到各待处理分句对应的多个加密分词。
41.可选的,终端设备可以对各待处理分句首先分别进行分词处理,得到每个待处理分句对应的多个分词,然后终端设备对每个分词依次进行加密,得到各待处理分句对应的多个加密分词。
42.可选的,终端设备中可以包括密钥信息,密钥信息可以由用户上传得到,或是预先配置在终端设备上,用于进行分词的加密,示例性的,终端设备可以对各个分词使用国密sm3加密算法和密钥依次进行加密,得到多个加密分词。
43.示例性的,假设终端设备对明文文档分句后得到的多个待处理分句分别是a1:昔人已乘黄鹤去,a2:此地空余黄鹤楼,a3:黄鹤一去不复返,a4:白云千载空悠悠,对a2分句进行分词后得到的三个分词分别为:此地、空余、黄鹤楼,对三个分词分别进行加密处理,得到
加密后的三个分词,分别为k1、k2和k3。
44.s203:根据各加密分词及加密分词在待处理分句中对应的分词位置,生成各加密分词对应的分词分句关系对组,分词分句关系对组中包括至少一个分词分句关系对,各分词分句关系对分别用于表征加密分词在一个密文分句中的位置。
45.可选的,分词分句关系对组可以包括多个分词分句关系对,每个分词分句关系对用于表征加密分词在一个待处理分句中的位置,示例性的,假设加密分词k0为“黄鹤”,待处理分句包括a1、a2、a3和a4,分词分句关系对组可以是{ k0-s1:1000、k0-s2:0100、k0-s3:1010、k0-s4:1001},其中s1、s2、s3和s4分别为a1、a2、a3和a4加密后的密文分句,k0-s1:1000为一个分词分句关系对,其中“1000”可以表示加密分词k0在密文分句s1中的位置。
46.值得注意的是,可以首先通过分词和待处理分句确定各分词在各分句中的位置,再构建加密分词与加密分句的关系对,该关系对可以表征加密分词在一个密文分句中的位置。
47.可选的,若一个密文分句中加密分词出现了多次,则分词分句关系对可以表征该加密分词在该密文分句中的多个位置。
48.s204:根据各加密分词对应的分词分句关系对组,生成各加密分词对应的出现频次信息。
49.可选的,出现频次信息可以表征各加密分词在文档中的出现次数。
50.可选的,分词分句关系对组中的每个分词分句关系对都可以表征加密分词在每个句子中的位置,因此分词分句关系对组就可以描述加密分词在整个文档的每个句子中的位置,那么,根据分词分句关系对组就可以得到加密分词在整个文档的出现次数,即生成各加密分词对应的出现频次信息。
51.s205:将各加密分词以及加密分词对应的出现频次信息组合为一个密文索引,并将各加密分词对应的密文索引、各加密分词对应的分词分句关系对组以及密文分句集合发送给服务器。
52.可选的,一个密文索引可以由文档的一个加密分词和该加密分词的出现频次组合得到,根据文档的所有加密分词的密文索引,可以创建密文倒排索引结构,从而生成文档的密文索引,并存储至服务器中,保证了数据的存储安全,其中一个文档的密文索引中包括所有加密分词和加密分词的出现频次组合。
53.示例性的,假设文档id1的加密分词包括k1、k2、k3、k4、
……
、kn,那么文档id1的密文索引就包括每个加密分词k1、k2、k3、k4、
……
、kn的密文索引,其中,每个加密分词的密文索引由该加密分词和加密分词的出现频次组合得到,文档id1密文索引的形式例如可以是id1{k0:1000,k1:0100,k2:1010,k3:1001
……ꢀ
},其中,id1为文档标识,k0:1000为加密分词k0的密文索引,1000为加密分词k0的出现频次信息。
54.可选的,各加密分词对应的分词分句关系对组以及密文分句集合在创建得到后也可以发送给服务器,以用于进行后续的文档检索。
55.在本技术实施例中,首先对明文文档分句,再对分句进行分词,并对分句和分词分别进行加密,对加密得到的密文分句和密文分词生成分词分句关系组,并生成各加密分词的出现频次信息,最后将各加密分词以及加密分词对应的出现频次信息组合为一个密文索引,并将各加密分词对应的密文索引、各加密分词对应的分词分句关系组以及密文分句集
合发送给服务器,如此,可以建立加密分词与上下文信息的关联,并通过出现频次信息更好地表征出文档与加密分词的相关度,从而在用户进行文档检索时提高检索的准确度和可见性。
56.接下来对上述分词分句索引处理方法中,根据各加密分词及所述加密分词在待处理分句中对应的分词位置,生成各加密分词对应的分词分句关系对组的步骤进行说明,如图3所示,上述s203包括:s301:根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对应的分词分句关系对。
57.可选的,根据加密分词及加密分词在各待处理分句中对应的分词位置,可以确定加密分词在各个密文分句中的位置,从而生成加密分词与各个密文分句的分词分句关系对。
58.可选的,每个分词分句关系对可以表征加密分词在一个密文分句中的位置,每个加密分词可以与各个密文分句分别生成一个分词分句关系对,在加密分词相同时,一个密文分句就可以对应一个分词分句关系对。
59.示例性的,假设加密分词为k0,待处理分句包括a1、a2、a3和a4,首先根据加密分词和待处理分句可以确定加密分词在各个待处理分句中的位置,从而生成的分词分句关系对可以分别是:k0-s1:1000、k0-s2:0100、k0-s3:1010以及k0-s4:1001,其中s1、s2、s3和s4分别为a1、a2、a3和a4加密后的密文分句,以k0-s1:1000为例,表示的可以是加密分词k0在密文分句s1中的分词位置。
60.在本技术实施例中,分词分句关系对由加密分词和待处理分句对应的密文分句组成,可以保证数据在服务器上存储的安全性。
61.s302:将各密文分句对应的分词分句关系对组合为加密分词对应的分词分句关系对组。
62.可选的,将一个加密分词的在所有密文分句中的分词分句关系对进行组合,即得到加密分词对应的分词分句关系对组。
63.示例性的,加密分词k0在各密文分句中生成的分词分句关系对分别是:k0-s1、k0-s2、k0-s3以及k0-s4,则加密分词k0对应的分词分句关系对组可以是{ k0-s1,k0-s2,k0-s3,k0-s4}。
64.值得注意的是,上述s301-s302步骤只是以生成一个加密分词的分词分句关系对组为例,对文档中的每一个加密分词,都可以采用步骤s301-s302生成该加密分词的分词分句关系对组。
65.在本技术实施例中,通过根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对应的分词分句关系对,并将各密文分句对应的分词分句关系对组合为加密分词对应的分词分句关系对组,可以使得每一个分词分句关系对组都能够表征一个加密分词在文档的各个句子中的位置,从而使得每个加密分词都与其上下文相关联。
66.接下来结合图4,对上述根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对应的分词分句关系对的步骤进行说明,如图4所示,上述s301步骤包括:s401:根据第一待处理分句中的分词数量,生成初始二进制字符串,初始二进制字
符串中的字符数量为分词量,且初始二进制字符串中的各字符的值为预设的无效值,其中,第一待处理分句为明文文档中的任意一个待处理分句。
67.可选的,第一待处理分句可以是明文文档中的任意一个分句。
68.可选的,初始二进制字符串中的各个字符的值可以先初始化为预设的无效值,示例性的,预设的无效值可以是0。
69.作为一种可能的实施方式,初始二进制字符串可以是根据每个待处理分句中的分词数量分别生成的二进制字符串,其中二进制字符串的数位个数可以和每个待处理分句的分词个数相同。
70.示例性的,假设待处理分句分别为:“此地空余黄鹤楼”和“快速定位最终目标文档”,可见第一个待处理分句中共有3个分词,第二个待处理分句中共有5个分词,那么在第一种实施方式中,生成的初始字符串就可以分别为:“000”和“0000”。
71.作为另一种可能的实施方式,初始二进制字符串也可以是根据待处理分句中最多的分词数量生成的二进制字符串,其中二进制字符串的数位个数可以和待处理分句的最大分词个数相同。
72.示例性的,假设待处理分句分别为:“此地空余黄鹤楼”和“快速定位最终目标文档”,可见第一个待处理分句中共有3个分词,第二个待处理分句中共有5个分词,那么在第二种实施方式中,生成的初始字符串就可以为:“00000”。
73.s402:将初始二进制字符串中的目标字符的值修改为预设的有效值,得到新的二进制字符串,其中,目标字符在初始二进制字符串中的位置为加密分词在第一待处理分句中对应的分词位置。
74.可选的,目标字符在初始二进制字符串中的位置可以与加密分词在第一待处理分句中的位置相同。
75.可选的,确定加密分词的位置后,可以将初始二进制字符串中目标字符的值修改为预设的有效值,示例性的,预设的有效值可以是1。
76.可选的,新的二进制字符串可以是在初始二进制字符串中更改加密分词所在位置字符值后得到的二进制字符串,一个新的二进制字符串可以表征一个加密分词在待处理分句中的位置。
77.示例性的,假设待处理分句s3为:“此地空余黄鹤楼”,其对应的初始二进制字符串为“000”,加密分词为k5表示“空余”,该加密分词在待处理分句中的位置是第二个,则目标字符k5为初始二进制字符串中的第二位,并将第二位的字符值修改为预设的有效值,则该待处理分句新的二进制字符串可以是“010”。
78.s403:将新的二进制字符串以及加密分词组合为第一待处理分句的密文分句对应的分词分句关系对。
79.在上述s402步骤中,由于待处理分句与密文分局一一对应,且分词情况也必然相同,因此确定加密分词在待处理分句中对应的分词位置,即确定了加密分词在待处理分句对应的密文分句中对应的分词位置。
80.可选的,将新的二进制字符串和加密分词进行组合,就可以得到加密分词与密文分句对应的分词分句关系对。
81.示例性的,假设待处理分句s3为:“此地空余黄鹤楼”,其对应的初始二进制字符串
为“000”,加密分词为k5表示“空余”,该待处理分句新的二进制字符串是“010”,那么组合得到的加密分词“空余”与密文分句“此地空余黄鹤楼”对应的分词分句关系对可以是“k5-s3:010”,表示“空余”在“此地空余黄鹤楼”中的第二个分词位置。
82.需要说明的是,上述s401-s403步骤仅是针对一个加密分词在一个密文分句中生成分词分句关系对的说明,对一个加密分词和所有分句,都可以通过上述s401-s403步骤生成该加密分词与各密文分句的分词分句关系对。
83.在本技术实施例中,通过生成表征分词分句关系的二进制字符串,可以将加密分词与其所在的分句关联起来,从而实现加密分词上下文的可追溯。
84.通过重复上述s401-s403步骤生成一个加密分词与各密文分句的分词分句关系对之后,可以生成该加密分词的分词分句关系对组,接下来可以根据各加密分词对应的分词分句关系对组,生成各加密分词对应的出现频次信息,上述s204步骤包括:将加密分词对应的分词分句关系对组中所有分词分句关系对进行或运算处理,得到加密分词对应的出现频次信息。
85.示例性的,如图5所示,给出了一种分词分句索引创建的流程,假设加密分词为k2,密文分句包括s0、s1、s2,根据k2与各密文分句的分词分句关系对组{k2-s0:1000,k2-s1:0100,k2-s2:0010},那么将加密分词k2对应的分词分句关系对组中所有分词分句关系对进行或运算处理,可以是:1000|0100|0010=1110。
86.可选的,加密分词对应的出现频次信息可以由或运算后得到的二进制字符串中有效值的个数描述,例如上述示例中加密分词k2的或运算后得到的二进制字符串为1110,说明加密分词在文档中的出现频次为3次。
87.在本技术实施例中,通过出现频次信息可以数值化的描述加密分词在文档中的出现次数。
88.接下来结合图6对本技术的分词分句索引处理方法作进一步说明,如图6所示,在获取到明文文档后,可以首先对文档进行分句,接下来一方面可以对分句进行加密,生成密文分句集合,密文分句集合中可以带有文档标识,另一方面,可以对分句依次进行分词,并对分词进行加密,然后生成分词分句关系对组,并生成密文索引,将密文索引和密文分句集合以及分词分句关系对组发送给服务器,以进行后续的文档检索。
89.在上述s205步骤之后,还可以通过终端设备输入关键词,并进行相关的文档检索,以下是对在终端设备进行文档检索的步骤说明,如图7所示,该步骤包括:s701:接收明文关键词,并对明文关键词进行加密,得到密文关键词。
90.可选的,终端设备接收明文关键词后,可以采用与上述s202相同的分词加密方式对明文关键词进行加密,得到密文关键词。
91.s702:将密文关键词发送给服务器,以使服务器根据密文关键词、当前保存的可检索文档的密文索引和分词分句关系对组以及密文分句集合进行检索并得到检索结果。
92.可选的,终端设备将密文关键词发送给服务器后,服务器可以根据密文关键词在服务器当前保存的可检索文档的密文索引和分词分句关系对组以及密文分句集合进行检索,并得到检索结果。
93.可选的,检索结果可以是与密文关键词匹配的多个文档列表以及各文档中出现该关键词的上下文信息。
94.s703:接收并输出服务器发送的检索结果。
95.可选的,终端设备可以接收服务器返回的密文检索结果,对其进行解密,并将解密后的文档及关键词上下文信息以明文形式显示出来。
96.值得注意的是,在服务器中存储的文档都是以密文形式存储的,因此服务器返回给终端设备的检索结果也是密文形式,在接收到密文的检索结果后,终端设备可以对该密文的检索结果进行解密,从而得到明文的检索结果,所有的加密解密都在终端设备进行,可以极大提高数据在服务器中存储的安全性。
97.接下来结合图8对上述在终端设备侧进行文档检索作进一步说明,参照图8,终端设备首先接收用户输入的检索关键词,然后对检索关键词进行加密,生成密文关键词,接下来终端设备将密文关键词发送给服务器进行检索,服务器检索后将查询结果返回给终端设备,终端设备将查询结果解密,并将搜索结果文档列表展示给用户。
98.图8是终端设备侧进行文档检索时的步骤说明,接下来对服务器侧的文档检索方法进行说明,如图9所示,该方法包括:s901:接收终端设备发送的密文关键词。
99.s902:在当前保存的密文索引库中查找与密文关键词匹配的至少一个目标密文索引,各目标密文索引分别对应一个待返回文档。
100.可选的,与密文关键词匹配,可以是密文关键词与密文索引库中的密文分词相同,或是密文关键词与密文索引库中的密文分词词义相近,或是密文关键词与密文索引库中的密文分词存在包含关系,示例性的,存在包含关系例如可以是“黄鹤”与“黄鹤楼”。
101.可选的,一个目标密文索引可以对应一个待返回文档,目标密文索引中可以包括文档的标识。
102.可选的,在接收终端设备发送的密文关键词后,服务器可以在当前保存的密文索引库中查找与密文关键词匹配的至少一个目标密文索引,从而首先确定与密文关键词匹配的至少一个待返回文档。
103.s903:确定目标密文索引对应的目标分词分句关系对组以及目标密文分句集合。
104.确定待返回文档后,服务器可以进一步根据每个文档的目标密文索引中的密文分词的索引,确定与密文关键词匹配的密文分词所在的分词分句关系对组,将其作为目标分词分句关系对组,并确定该密文分词所在的所有密文分句组成的集合,作为目标密文分句集合。
105.s904:根据目标分词分句关系对组,从目标密文分句集合中查找待返回文档中的待返回密文分句。
106.可选的,服务器可以根据关键词所在的目标分词分句关系对组,确定目标分词分句关系对组对应的多条密文分句组成的目标密文分句集合,并从目标密文分句集合中查找待返回文档中的待返回密文分句。
107.需要说明的是,密文关键词所在的目标分词分句关系对组中包括多个目标分词分句关系对,每个目标分词分句关系对都可以描述密文关键词是否在该密文分句中,并可以描述密文关键词在密文分句中的位置,由于密文关键词可能只出现在部分密文分句中,因此服务器可以首先确定存在密文关键词的分词分句关系对,将这些分词分句关系对对应的密文分句作为待返回密文分句。
108.s905:根据目标密文索引中的出现频次信息,确定待返回文档的排列顺序。
109.可选的,目标密文索引中的出现频次信息可以表征密文关键词在待返回文档中的出现次数,密文关键词在待返回文档中的出现次数高,可以认为是密文词与该待返回文档的关联度高,因此,服务器可以根据目标密文索引中的出现频次信息,确定待返回文档的排列顺序。
110.s906:将按照排列顺序排列的待返回文档的待返回密文分句作为检索结果返回给终端设备。
111.可选的,服务器可以根据上述s905步骤确定的排列顺序,将待返回文档及各待返回文档的待返回密文分句排列后得到的文档列表作为检索结果返回给终端设备,应当理解,服务器上的文档及分句均是以密文形式存储,因此服务器返回的检索结果也是密文形式,终端设备在接收到服务器返回的检索结果后,可以对检索结果进行解密,从而显示按顺序排列的文档列表及各文档的分句。
112.在本技术实施例中,服务器对文档分句加密保存,并在检索时返回关键词所在密文分句,避免了用户查看并判断查询结果时需下载文档并全文解密的低效复杂操作,终端设备本地解密密文分句,还可以高亮展示关键词上下文,保证了数据安全的同时,提升了密文检索结果的可见性和准确性。
113.以下是对上述根据目标分词分句关系对组,从目标密文分句集合中查找待返回密文分句的步骤说明,上述s904步骤包括:从目标分词分句关系对组中读取各分词分句关系对,对各分词分句关系对进行解析,若分词分句关系对中包含预设的有效值,则将分词分句关系对所对应的密文分句作为一个待返回密文分句。
114.服务器确定密文关键词所匹配的密文分词后,可以从该密文分词对应的分词分句关系对组中读取各分词分句关系对,并对各分词分句关系对进行解析,从而确定存在密文分词的分词分句关系对。
115.可选的,若分词分句关系对中包含预设的有效值,则该分词分句关系对中包含密文分词,则可以将分词分句关系对所对应的密文分句作为一个待返回密文分句。
116.在确定待返回文档和待返回文档的待返回分句后,服务器还可以根据目标密文索引中的出现频次信息,确定待返回文档的排列顺序,上述s905步骤包括:根据各待返回文档对应的目标密文索引中的出现频次信息进行排序;根据出现频次信息的排列顺序,确定待返回文档的排列顺序。
117.可选的,服务器可以确定各目标密文索引中有效值的出现次数,并根据各目标密文索引中有效值的出现次数对各待返回文档进行排序,其中有效值出现次数越多,说明该待返回文档中密文关键词的出现次数越多,则可以按照有效值的出现次数对待返回文档进行排序。
118.在本技术实施例中,根据出现频次信息确定待返回文档的排列顺序,可以方便用户快速辨识待返回文档与查询词的相关性。
119.接下来结合图10,对本技术提供的分词分句索引处理方法1001与文档检索方法1002作进一步说明,如图10所示,终端设备首先根据本技术的分词分句索引处理方法1001将生成的密文分句集合和密文索引上传至服务器,然后,文档检索方法1002中,终端设备上
传检索关键字,服务器根据加密后的检索关键字在数据库中进行搜索,并将搜索到的文档和相应的分句作为检索结果返回给终端设备,终端设备在获取到检索结果后,可以将检索结果解密并进行显示。
120.基于同一发明构思,本技术实施例中还提供了与分词分句索引处理方法对应的分词分句索引处理装置,以及与文档检索方法对应的文档检索装置,由于本技术实施例中的装置解决问题的原理与本技术实施例上述分词分句索引处理方法及文档检索方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
121.参照图11所示,为本技术实施例提供的一种分词分句索引处理装置的示意图,该装置应用于终端设备,所述装置包括:分句模块1101、分词模块1102、关系对组生成模块1103、频次信息生成模块1104以及发送模块1105,其中:分句模块1101,用于终端设备对明文文档进行分句,得到多个待处理分句,并对各待处理分句分别进行加密,得到多个密文分句,将多个密文分句组成密文分句集合;分词模块1102,用于对各待处理分句进行分词及加密处理,得到各待处理分句对应的多个加密分词;关系对组生成模块1103,用于根据各加密分词及加密分词在待处理分句中对应的分词位置,生成各加密分词对应的分词分句关系对组,分词分句关系对组中包括至少一个分词分句关系对,各分词分句关系对分别用于表征加密分词在一个密文分句中的位置;频次信息生成模块1104,用于根据各加密分词对应的分词分句关系对组,生成各加密分词对应的出现频次信息;发送模块1105,用于将各加密分词以及加密分词对应的出现频次信息组合为一个密文索引,并将各加密分词对应的密文索引、各加密分词对应的分词分句关系对组以及密文分句集合发送给服务器。
122.可选的,关系对组生成模块1103,还用于:根据加密分词及加密分词在各待处理分句中对应的分词位置,生成各密文分句对应的分词分句关系对;将各密文分句对应的分词分句关系对组合为加密分词对应的分词分句关系对组。
123.可选的,关系对组生成模块1103,还用于:根据第一待处理分句中的分词数量,生成初始二进制字符串,初始二进制字符串中的字符数量为分词量,且初始二进制字符串中的各字符的值为预设的无效值,其中,第一待处理分句为明文文档中的任意一个待处理分句;将初始二进制字符串中的目标字符的值修改为预设的有效值,得到新的二进制字符串,其中,目标字符在初始二进制字符串中的位置为加密分词在第一待处理分句中对应的分词位置;将新的二进制字符串以及加密分词组合为第一待处理分句的密文分句对应的分词分句关系对。
124.可选的,频次信息生成模块1104,还用于:将加密分词对应的分词分句关系对组中所有分词分句关系对进行或运算处理,得到加密分词对应的出现频次信息。
125.参照图12所示,为本技术实施例提供的一种文档检索装置的示意图,该装置应用
于服务器,所述装置包括:所述装置包括:接收模块1201、匹配模块1202、确定模块1203、查找模块1204、顺序确定模块1205以及返回模块1206,其中:接收模块1201,用于接收终端设备发送的密文关键词;匹配模块1202,用于在当前保存的密文索引库中查找与密文关键词匹配的至少一个目标密文索引,各目标密文索引分别对应一个待返回文档;确定模块1203,用于确定目标密文索引对应的目标分词分句关系对组以及目标密文分句集合;查找模块1204,用于根据目标分词分句关系对组,从目标密文分句集合中查找待返回文档中的待返回密文分句;顺序确定模块1205,用于根据目标密文索引中的出现频次信息,确定待返回文档的排列顺序;返回模块1206,用于将按照排列顺序排列的待返回文档的待返回密文分句作为检索结果返回给终端设备。
126.可选的,查找模块1204还用于:从目标分词分句关系对组中读取各分词分句关系对,对各分词分句关系对进行解析,若分词分句关系对中包含预设的有效值,则将分词分句关系对所对应的密文分句作为一个待返回密文分句。
127.可选的,顺序确定模块1205还用于:根据各待返回文档对应的目标密文索引中的出现频次信息进行排序;根据出现频次信息的排列顺序,确定待返回文档的排列顺序。
128.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
129.在本技术实施例中,首先对明文文档分句,再对分句进行分词,并对分句和分词分别进行加密,对加密得到的密文分句和密文分词生成分词分句关系组,并生成各加密分词的出现频次信息,最后将各加密分词以及加密分词对应的出现频次信息组合为一个密文索引,并将各加密分词对应的密文索引、各加密分词对应的分词分句关系组以及密文分句集合发送给服务器,如此,可以建立加密分词与上下文信息的关联,通过出现频次信息可以更好地表征出文档与加密分词的相关度,从而在用户进行文档检索时提高检索的准确度和可见性。
130.本技术实施例还提供了一种电子设备,该电子设备可以指前述的终端设备,也可以指前述的服务器。如图13所示,为本技术实施例提供的电子设备结构示意图,包括:处理器1301、存储器1302和总线。所述存储器1302存储有所述处理器1301可执行的机器可读指令(比如,图11中的装置和图12中的装置所包括的模块对应的执行指令等),当计算机设备运行时,所述处理器1301与所述存储器1302之间通过总线通信。当该电子设备为终端设备时,所述机器可读指令被所述处理器1301执行时执行上述分词分句索引处理方法的步骤。当电子设备为服务器时,所述机器可读指令被所述处理器1301执行时执行上述文档检索方法的步骤。
131.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述分词分句索引处理方法或文档检索
方法的步骤。
132.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本技术中不再赘述。在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
133.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
134.以上仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献