计算;推算;计数设备的制造及其应用技术1.本技术实施例涉及电子数据管理领域,涉及但不限于一种文档管理方法、装置、设备及存储介质。背景技术:2.从海量文档中搜索语义相似的文档是用户的一种常见需求,也是文档管理工具必备的一种功能。文档的语义相似度可以通过构建文档的语义向量,并计算文档向量距离来度量。当文档规模较小时,可以直接计算所有存储文档与待搜索文档的距离,搜索相似文档。但当文档规模较大的情况下,上述暴力搜索的方式耗时巨大,难以实用。且使用语音相似度方法搜索出的文档,内容虽相似,但不在访问权限范围内,导致需要反复多次重定位子空间才能找到符合权限的文档。技术实现要素:3.有鉴于此,本技术实施例提供一种文档管理方法、一种文档搜索方法和电子设备。4.本技术实施例的技术方案是这样实现的:5.第一方面,本技术实施例提供一种文档管理方法,所述方法包括:6.获取待处理文档的权限参数和内容参数,其中,所述权限参数用于表征所述待处理文档的权限,所述内容参数用于表征所述待处理文档的内容;利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离;将所述参数距离满足距离阈值的所述待处理文档划分为同一子空间,以使得所述同一子空间中存储文档的权限和内容相似。7.第二方面,本技术实施例提供一种文档搜索方法,所述方法包括:8.获取待搜索文档的权限参数和内容参数,其中,所述权限参数用于表征所述待搜索文档的权限,所述内容参数用于表征所述待搜索文档的内容;基于所述权限参数和所述内容参数在存储文档的子空间中确定至少一个目标子空间,其中,所述每个子空间中存储文档之间的相似度距离满足距离阈值,所述相似度距离是基于所述存储文档的权限参数和内容参数确定的;在所述至少一个目标子空间中搜索与所述待搜索文档的内容相似且权限相似的文档。9.第三方面,本技术实施例提供一种文档管理装置,所述装置包括:10.第一获取模块,用于获取待处理文档的权限参数和内容参数,其中,所述权限参数用于表征所述待处理文档的权限,所述内容参数用于表征所述待处理文档的内容;11.第一确定模块,用于利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离;12.划分模块,用于将所述参数距离满足距离阈值的所述待处理文档划分为同一子空间,以使得所述同一子空间中存储文档的权限和内容相似。13.第四方面,本技术实施例提供一种文档搜索装置,所述装置包括:14.第二获取模块,用于获取待搜索文档的权限参数和内容参数,其中,所述权限参数用于表征所述待搜索文档的权限,所述内容参数用于表征所述待搜索文档的内容;15.第二确定模块,用于基于所述权限参数和所述内容参数在存储文档的子空间中确定至少一个目标子空间,其中,所述每个子空间中存储文档之间的相似度距离满足距离阈值,所述相似度距离是基于所述存储文档的权限参数和内容参数确定的;16.搜索模块,在所述至少一个目标子空间中搜索与所述待搜索文档的内容相似且权限相似的文档。17.第五方面,本技术实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法。18.第六方面,本技术实施例提供一种存储介质,存储有可执行指令,用于处理器执行时,实现上述方法。19.本技术实施例中,首先获取待处理文档的权限参数和内容参数,其中,所述权限参数用于表征所述待处理文档的权限,所述内容参数用于表征所述待处理文档的内容;然后利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离;最后将所述参数距离满足距离阈值的所述待处理文档划分为同一子空间,以使得所述同一子空间中存储文档的权限和内容相似。这样,可以实现同一子空间中存储文档的内容不仅相似,且权限也相似,从而在文档搜索时能快速定位到与该待搜索文档内容和权限均相似的文档。附图说明20.图1a为本技术实施例提供的一种文档处理方法的实现流程示意图;21.图1b为本技术实施例提供一种将文档的权限映射为树形结构的示意图;22.图1c为本技术实施例提供一种将文档的权限映射为树形结构的示意图;23.图2为本技术实施例提供的一种获取权限参数的实现流程示意图;24.图3为本技术实施例提供的一种文档搜索方法的实现流程示意图;25.图4a为本技术实施例提供的一种文档带有权限约束的场景的示意图;26.图4b为本技术实施例提供一种文档权限的向量化方法的实现流程示意图;27.图5a为本技术实施例提供的一种文档处理装置的组成结构示意图;28.图5b为本技术实施例提供的一种文档搜索装置的组成结构示意图;29.图6为本技术实施例提供的电子设备的一种硬件实体示意图。具体实施方式30.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对申请实施例的具体技术方案做进一步详细描述。以下实施例用于说明本技术,但不用来限制本技术的范围。31.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。32.在以下的描述中,所涉及的术语“第一第二第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一第二第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。33.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。34.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。35.dimfeat:语义特征向量维度。36.dimpos:位置特征向量维度。37.depth_layer:位置空间每层最大深度,数值上与dimpos相同。38.width_circle:位置空间宽度特征函数循环周期,超参数。39.p:位置空间随层数递减的等比级数(geometric series)系数,0《p《1,超参数。40.f(node.depth):返回节点所在位置深度的标量特征。f为周期函数,周期为depth_layer。41.g(node.width):返回节点所在位置宽度的标量特征。g为周期函数,周期为width_circle。42.ψ(node):返回节点所在位置的标量特征。43.ψ(node):返回节点的位置特征向量。44.norm:归一化常数,使得结果向量中的每一个元素都位于[-norm,norm]区间内,超参数。[0045]本技术实施例提供一种文档处理方法,如图1a所示,该方法包括:[0046]步骤s110、获取待处理文档的权限参数和内容参数,其中,所述权限参数用于表征所述待处理文档的权限,所述内容参数用于表征所述待处理文档的内容;[0047]为了提升文档向量搜索的效率,海量文档搜索时,通常要对文档进行离线归类管理,其目的是将整个文档向量空间分割(聚类)成众多小的子空间,子空间内的文档距离相近,在向量搜索的时候,通过某种方式,将搜索空间限定在某几个子空间。这种快速定位子空间的方式,将全局遍历缩小为小范围的局部遍历,可以极大提升相似文档的搜索效率,是大规模相似文档搜索的基础。[0048]这里,待处理文档可以是等待归类管理的文档。在实施过程中,对文档进行归类的依据可以是文档的权限和文档的内容,即将文档权限和内容均满足相似度要求的待处理文档归类进行管理。[0049]在一些实施例中,待处理文档的权限参数可以用位置特征向量表示,用于表征该待处理文档所在的位置,该位置是基于该待处理文档的权限确定的。[0050]在一些实施例中,待处理文档的内容参数可以用语义特征向量表示,用于表征该待处理文档的内容。[0051]步骤s120、利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离;[0052]在一些实施例中,可以先利用权限参数确定待处理文档之间的权限相似度,再利用内容参数确定待处理文档之间的内容相似度,最后基于权限相似度和内容相似度确定待处理文档之间的相似度距离。[0053]在一些实施例中,还可以拼接或者融合权限参数和内容参数,以得到待处理文档之间的相似度距离。[0054]步骤s130、将所述参数距离满足距离阈值的所述待处理文档划分为同一子空间,以使得所述同一子空间中存储文档的权限和内容相似。[0055]这里,可以根据实际需求确定距离阈值,基于该距离阈值可以将满足距离要求的待处理文档划分为同一子空间,即该同一子空间中存储文档的权限和内容相似。[0056]本技术实施例中,首先获取待处理文档的权限参数和内容参数,其中,所述权限参数用于表征所述待处理文档的权限,所述内容参数用于表征所述待处理文档的内容;然后利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离;最后将所述参数距离满足距离阈值的所述待处理文档划分为同一子空间,以使得所述同一子空间中存储文档的权限和内容相似。这样,可以实现同一子空间中存储文档的内容不仅相似,且权限也相似,从而在文档搜索时能快速定位到与该待搜索文档内容和权限均相似的文档。[0057]在一些实施例中,以上步骤s110中“获取待处理文档的权限参数”可以通过以下步骤实现:[0058]步骤111、获取所述待处理文档的路径信息,其中,将所述待处理文档的权限映射为树形结构,所述待处理文档的路径信息表征所述待处理文档的权限;[0059]这里,以树型结构表示访问权限对于文件管理系统是一种自然的表示方式,可以将权限映射为树形结构。文档在文件目录中的路径信息可以代表其权限,即,文档权限表示为从根结点开始到文档所在位置的一条路径(可直观理解为文件路径),举例来说,权限路径的形式可以为rootdir1dir2...dirndoc,“”代表树结构的一个层级分隔。[0060]在实施过程中,可以将文档权限映射映射为树形结构。对于一树形数据,给定一节点node,其到根目录的路径信息为:root-》parent_2-》parent_3-》…‑》parent_depth_1-》node。[0061]本技术实施例提供一种将文档的权限映射为树形结构的示意图,如图1b所示,该示意图包括根目录root,root下一层级目录d1、d2、d3和d4,其中,[0062]d1下一层级目录w1和w2,w1下一层级目录w1_1,目录w1_1下存放文件f4,w2下一层级目录w2_1,目录w2_1下存放文件f5。[0063]d2下存放文件f1。[0064]d3下存放文件f2,同时存在下一层级目录r1,目录r1下存放文件f3。[0065]d4下一层级目录m1,m1下一层级目录m1_1,目录m1_1下存放文件f6。[0066]这样,可以基于图1b所示的权限树确定文件f1、f2、f3、f4、f5和f6中每一文件的路径信息。[0067]树形结构中文档权限的相似定义:两个文档的权限相似基于该两个文档在权限树所处的位置确定。根结点权限最高,当前位置具有访问所有子树的权限。在实施过程中,两个文档的位置相同则权限相同;公共父节点越多的两个文档,其权限越相似。[0068]本技术实施例提供一种将文档的权限映射为树形结构的示意图,如图1c所示,该示意图包括file1、file2、file3和file4,其中,[0069]file1和file2的父节点是同一个,则权限相同;file2和file3公共父节点较多,但所处的权限树位置不同,则属于权限相似,file3和file4公共父节点只有根节点,没有公共路径,权限不相似。这里,权限相似可以是两个文档到根节点存在更长的公共路径、或者可以是公共父节点越多的节点之间,在位置向量空间内越靠近。[0070]在实施过程中,由于待处理文档的路径信息表征待处理文档的权限,所以可以获取待处理文档的路径信息,以得到该待处理文档的权限信息。[0071]步骤112、对所述路径信息进行编码,得到所述待处理文档的权限参数。[0072]这里,由于可以将待处理文档的权限映射为树形结构,所以路径信息中可以至少包括待处理文档存放在树形结构的层级,及同一层级下包括的权限相同的文档。[0073]在实施过程中,可以对以上层级和同一层级下文档的信息进行编码,得到该待处理文档的权限参数。[0074]本技术实施例中,首先获取所述待处理文档的路径信息,其中,将所述待处理文档的权限映射为树形结构,所述待处理文档的路径信息表征所述待处理文档的权限;然后对所述路径信息进行编码,得到所述待处理文档的权限参数。这样,得到的权限参数可以有效表征文档所在树形结构中的位置,即可以有效表征文档的权限。[0075]在一些实施例中,以上步骤112“对所述路径信息进行编码,得到所述待处理文档的权限参数”可以通过以下步骤实现:[0076]步骤1121、基于所述路径信息确定所述待处理文档的深度信息和宽度信息,其中,所述深度信息用于表征所述待处理文档所在层级至根目录的深度,所述宽度信息用于表征所述路径信息中每一层级的子目录位置;[0077]这里,深度信息于表征待处理文档所在层级至根目录的深度,即,可以表征待处理文档在权限树中的层级。宽度信息用于表征路径信息中每一层级的子目录位置,即,可以表征待处理文档在层级中的位置。在实施过程中,可以基于路径信息确定所述待处理文档的深度信息和宽度信息。[0078]举例来说,对于一树形数据,给定一节点node,其到根目录的路径信息为:root-》parent_2-》parent_3-》…‑》parent_depth_1-》node。该node在树中的深度为parent_depth_1。假设node是父节点parent_depth_1第width个孩子,那么node在树中的位置信息可由二维坐标(node,width)表示。这样,树中所有节点均可以这种方式表示。特别地,根节点的width为0。[0079]步骤1122、对所述深度信息和所述宽度信息进行编码,得到所述待处理文档的权限参数。[0080]在实施过程中,可以根据实际需求选择周期函数对深度信息和宽度信息进行编码。[0081]本技术实施例中,首先基于所述路径信息确定所述待处理文档的深度信息和宽度信息,然后对所述深度信息和所述宽度信息进行编码,得到所述待处理文档的权限参数。这样,待处理文档的权限参数即可以表征文档所在层级至根目录的深度,还可以表征每一层级的子目录位置。[0082]在一些实施例中,如图2所示,以上步骤1122“对所述深度信息和所述宽度信息进行编码,得到所述待处理文档的权限参数”,可以通过以下步骤实现:[0083]步骤s210、确定所述权限参数的向量长度;[0084]这里,权限参数的维度可以是向量长度。举例来说,向量长度可以设置为64、100、128、256等,根据实际场景和实验效果来确定。举例来说,文件路径最长为20,可以将权限向量维度可设为20,如果文件路径过长,则需要通过实验对比,确定最优维度,即确定向量长度。这样,可以保证任意长度的权限路径均可以用固定维度的权限参数表示。[0085]步骤s220、基于所述向量长度,确定用于计算所述权限参数每一维取值的层级,其中,所述层级为所述路径信息的层级;[0086]在一些实施例中,当层级数小于等于向量长度的情况下,用于计算权限参数每一维取值可以与层级一一对应,即每一层级对应一维取值。举例来说,在向量长度为30维,层级数也为30维的情况下,第一层级对应权限向量中的第一维,第二层级对应权限向量中的第二维,依次类推,每一层级对应一维取值。[0087]在一些实施例中,当层级数大于向量长度的情况下,可以从权限向量起始维数递增填充。举例来说,在向量长度为30维,层级数为32的情况下,将层级31回归至权限向量第1维;层级32回归至第2维;依次类推,可以保证任意长度的权限路径均可以用固定维度的权限向量表示。[0088]步骤s230、对所述权限参数每一维对应层级的深度信息和宽度信息进行编码,得到所述权限参数每一维取值;[0089]这里,权限向量的每一维的值为所有填充至该维的层级编码。层级的编码可以由深度编码函数f(node.depth)和宽度编码函数g(node.width)两个函数组成。其中,f(node.depth),用于计算返回节点所在位置深度的标量特征,f(x)为周期函数,周期为depth_layer;g(node.width),用于计算返回节点所在位置宽度的标量特征,g(x)为周期函数,周期为width_circle。[0090]这里,f(x)和g(x)是构成位置特征向量的基本函数,可根据实际需求确定。[0091]举例来说,可以利用以下公式(1)表示函数f(x);公式(2)表示函数g(x):[0092][0093][0094]其中,f(x)和g(x)分别是经过周期延拓后的周期函数;x表示某个目录所处的深度node.depth或者宽度node.width,node.depth表示该层级至根位置的树深度;node.width表示该层级为其父结点的第几个儿子;n可以是任意整数,n的取值是为了表征f(x)是周期函数。depth_layer用于表示位置空间每层最大深度;width_circle用于表示位置空间宽度特征函数循环周期,超参数。[0095]f(x)和g(x)函数均为定义域上的连续函数,函数值相近的物理距离必然相近,可以为欧式聚类的可靠性提供保障。[0096]步骤s240、基于所述权限参数每一维取值,确定所述待处理文档的权限参数。[0097]这里,可以利用以下公式(3),得到待处理文档的权限参数,即位置特征向量[0098][0099]其中,代表最终位置向量,z1、z2…zd代表向量中每一位置的元素,该位置特征向量的维度为d,d同时也是位置空间每层的最大深度depth_layer,中的每一个元素zi都是从根节点到编码节点路径上结点的位置编码融合的结果。[0100]当node.depth《=depth_layer,共用一个加权系数,值为1,如果随着node.depth过大,depth_layer《node.depth《=2*depth_layer,k=1,加权系数为p,以此类推。[0101]本技术实施例中,首先确定权限参数的向量长度;然后基于所述向量长度,确定用于计算所述权限参数每一维取值的层级;对所述权限参数每一维对应层级的深度信息和宽度信息进行编码,得到所述权限参数每一维取值;最后基于所述权限参数每一维取值,确定所述待处理文档的权限参数。这样,得到的权限参数可以有效表征该待处理文档在权限树中的位置。[0102]在一些实施例中,以上步骤s230“对所述权限参数每一维对应层级的深度信息和宽度信息进行编码,得到所述权限参数每一维取值”可以通过以下步骤实现:[0103]步骤231、获取所述权限参数第i维对应每一层级的深度信息和宽度信息,其中,i为大于等于1小于等于参数长度的整数;[0104]步骤232、将所述第i维对应每一层级的深度信息进行加权求和,得到第i维深度编码;[0105]可以利用以下公式(4)计算第i维深度编码f(i):[0106][0107]其中,p为衰减系数;depth_layer是设定的权限维度大小;k取值范围为[0,depth/(depth_layer)],满足不等式约束,可以理解为是在固定长度向量上进行的第几轮编码。[0108]在一些实施例中,不需要衰减系数参与运算的情况下,可以将衰减系数取值为0。举例来说,当层级数小于等于向量长度的情况下,可以将衰减系数取值为0。[0109]步骤233、将所述第i维对应每一层级的宽度信息进行加权求和,得到第i维宽度编码;[0110]在一些实施例中,权限向量每一维的值为所有填充至该维的层级编码的加权求和。[0111]可以利用以下公式(5)计算第i维宽度编码g(i):[0112][0113]其中,p为衰减系数;depth_layer是设定的权限维度大小;k取值范围为[0,depth/(depth_layer)],满足不等式约束,可以理解为是在固定长度向量上进行的第几轮编码。[0114]在一些实施例中,不需要衰减系数参与运算的情况下,可以将衰减系数取值为0。举例来说,当层级数小于等于向量长度的情况下,可以将衰减系数取值为0。[0115]步骤234、对所述第i维深度编码和所述第i维宽度编码进行二元运算,得到所述权限参数第i维取值。[0116]这里,第i维的编码为一个标量zi,可以用以下公式(6)表示:[0117][0118]其中,node为维数,f(i)为深度编码,g(i)为宽度编码。zi由两部分通过一个二元运算构成,这里的可根据实际需求挑选,可以是加法,乘法,平方和相加后开根号等等。举例来说可以用“+”运算指代[0119]本技术实施例中,首先获取所述权限参数第i维对应每一层级的深度信息和宽度信息;然后将所述第i维对应每一层级的深度信息进行加权求和,得到第i维深度编码;将所述第i维对应每一层级的宽度信息进行加权求和,得到第i维宽度编码;最后对所述第i维深度编码和所述第i维宽度编码进行二元运算,得到所述权限参数第i维取值。这样,可以得到权限参数每一维的取值。[0120]在一些实施例中,以上步骤232“将所述第i维对应每一层级的深度信息进行加权求和,得到第i维深度编码”,可以通过以下步骤实现:[0121]步骤2321、确定用于编码的衰减系数;[0122]如上公式(5)和(6)中,p为衰减系数。[0123]步骤2322、基于所述衰减系数确定每一层级的加权系数;[0124]这里,几何级数p序列(1,p,p2,...p[depth/depth_layer])是一个衰减权重序列,结合f(i)和g(i)表达式(5)和(6)可知,其表达的物理意义是越靠近根节点的节点之间,由于深度和宽度不同导致的距离差异越大。而当节点深度和宽度都非常大时,其到根节点路径上每一个节点的深度和宽度信息虽然也会参与编码,但造成的距离差不足上一轮的一半(p=0.5,则加权系数序列为1,0.5,0.25,以此类推)。[0125]步骤2323、利用所述每一层级的加权系数,将所述第i维对应每一层级的深度信息进行加权求和,得到所述第i维深度编码;[0126]在实施过程中,可以利用如上公式(5),得到第i维深度编码。[0127]对应地,以上步骤233“将所述第i维对应每一层级的宽度信息进行加权求和,得到第i维宽度编码”可以通过以下过程实现:[0128]利用所述每一层级的加权系数,将所述第i维对应每一层级的宽度信息进行加权求和,得到所述第i维宽度编码。[0129]在实施过程中,可以利用如上公式(6),得到第i维深度编码。编码时引入衰减系数,当文档深度比较大时,编码所占权重可能不足前一轮的一半,符合实际场景,文件路径越长,权限范围就越小。[0130]本技术实施例中,首先确定用于编码的衰减系数;然后基于所述衰减系数确定每一层级的加权系数;然后利用所述每一层级的加权系数,将所述第i维对应每一层级的深度信息进行加权求和,得到所述第i维深度编码;最后利用所述每一层级的加权系数,将所述第i维对应每一层级的宽度信息进行加权求和,得到所述第i维宽度编码。这样,增加了衰减系数,得到的深度编码和宽度编码都更符合权限相似性度量的要求。[0131]在一些实施例中,以上步骤231中“获取所述权限参数第i维对应每一层级的深度信息和宽度信息”,可以通过以下步骤实现:[0132]步骤2311、获取所述权限参数第i维对应每一层级的深度值和宽度值;[0133]这里,深度值depth_layer可以用于表示位置空间每层最大深度;宽度值width_circle可以用于表示位置空间宽度特征函数循环周期。[0134]步骤2312、利用深度函数确定所述深度值对应的深度信息;[0135]这里,可以选取以下公式(7)作为深度函数:[0136][0137]其中,x是参数,表示某个目录所处的深度node.depth,depth_layer用于表示位置空间每层最大深度,n可以是任意整数,为了说明f(x)是周期函数。[0138]步骤2313、利用宽度函数确定所述宽度值对应的宽度信息,其中,所述深度函数和所述宽度函数为经过周期延拖的连续周期函数。[0139]这里,可以选取以下公式(8)作为宽度函数:[0140][0141]其中,x是参数,表示某个目录所处的宽度node.width,width_circle用于表示位置空间宽度特征函数循环周期,超参数,n可以是任意整数,为了说明g(x)是周期函数。[0142]这里,f(x)和g(x)分别是经过周期延拓后的周期函数。由于f(x)和g(x)函数均为定义域上的连续函数,函数值相近的物理距离必然相近,这为欧式聚类的可靠性提供了保障。[0143]本技术实施例中,首先获取所述权限参数第i维对应每一层级的深度值和宽度值;然后利用深度函数确定所述深度值对应的深度信息;最后利用宽度函数确定所述宽度值对应的宽度信息。这样,深度函数和所述宽度函数均为定义域上的连续函数,函数值相近的物理距离必然相近,这为欧式聚类的可靠性提供了保障。[0144]在一些实施例中,以上步骤s120“利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离”可以通过以下步骤实现:[0145]步骤121、拼接所述权限参数和所述内容参数,得到拼接参数;[0146]这里,可以将权限向量和所述内容向量按顺序进行拼接,得到拼接参数。[0147]步骤122、基于所述拼接参数确定所述待处理文档之间的相似度距离;[0148]该拼接参数包括了权限参数和所述内容参数,所以即可以确定权限相似度,还可以确定内容相似度。[0149]或者可以通过以下步骤实现:[0150]步骤123、融合所述权限参数和所述内容参数,得到融合参数;[0151]在实施过程中,可以将权限向量和内容向量对位进行融合,得到融合参数。[0152]步骤124、基于所述融合参数确定所述待处理文档之间的相似度距离。[0153]该融合参数包括了权限参数和所述内容参数,所以即可以确定权限相似度,还可以确定内容相似度。[0154]本技术实施例中,将权限参数和内容参数整合于一个参数(拼接或融合),可以表征文档的权限和内容,使用统一的距离度量文档的权限相似度和内容相似度,以有效确定文档之间的相似度距离。[0155]本技术实施例提供一种文档搜索方法,如图3所示,包括以下步骤:[0156]步骤s310、获取待搜索文档的权限参数和内容参数,其中,所述权限参数用于表征所述待搜索文档的权限,所述内容参数用于表征所述待搜索文档的内容;[0157]举例来说,对一个文档,可以对其内容和文档的文件路径分别向量化,其中内容向量化采用常规doc2vec方法,构建300维内容向量;路径向量采用路径编码,同样构建300维权限向量。[0158]步骤s320、基于所述权限参数和所述内容参数在存储文档的子空间中确定至少一个目标子空间,其中,所述每个子空间中存储文档之间的相似度距离满足距离阈值,所述相似度距离是基于所述存储文档的权限参数和内容参数确定的;[0159]这里,待处理文档经过向量运算分类存储于子空间后,称为存储文档。[0160]可以将文档的文本特征和位置向量编码拼接在一起,使用以下公式计算文档相似度:[0161][0162]其中,dsim是文档内容距离,dpos是文档位置距离。[0163]步骤s330、在所述至少一个目标子空间中搜索与所述待搜索文档的内容相似且权限相似的文档。[0164]本技术实施例中,首先获取待搜索文档的权限参数和内容参数,其中,所述权限参数用于表征所述待搜索文档的权限,所述内容参数用于表征所述待搜索文档的内容;然后基于所述权限参数和所述内容参数在存储文档的子空间中确定至少一个目标子空间;最后在所述至少一个目标子空间中搜索与所述待搜索文档的内容相似且权限相似的文档。这样,将搜索空间限定在某几个子空间。快速定位子空间的方式,将全局遍历缩小为小范围的局部遍历,可以极大提升相似文档的搜索效率,实现在至少一个目标子空间中搜索容相似且权限相似的文档,有效提升了文档搜索效率。[0165]在一些实施例中,以上步骤s320“基于所述权限参数和所述内容参数在存储文档的子空间中确定至少一个目标子空间”可以通过以下步骤实现:[0166]步骤321、获取每一子空间的聚类参数,其中,所述聚类参数是基于所述子空间中存储文档的权限参数和内容参数确定的;[0167]这里,聚类参数可以是基于所述子空间中存储文档的权限参数和内容参数确定的。聚类参数可以表征子空间中存储文档的权限和内容。每一子空间(簇)对应一个聚类参数。[0168]步骤322、将所述待搜索文档的所述权限参数和所述内容参数,与所述聚类参数进行相似度匹配,以确定所述至少一个目标子空间。[0169]由于聚类参数可以表征子空间中存储文档的权限和内容,所以可以将待搜索文档的权限参数和内容参数与聚类参数进行相似度匹配,确定的目标子空间中的文档与待搜索文档的权限和内容均满足相似度要求。[0170]本技术实施例中,首先获取每一子空间的聚类参数,然后将所述待搜索文档的权限参数和所述内容参数,与所述聚类参数进行相似度匹配,以确定所述至少一个目标子空间参数。这样,可以基于子空间的聚类参数,有效确定与待搜索文档匹配的目标子空间。[0171]为了提升文档向量搜索的效率,海量文档搜索时,通常要对文档进行离线向量索引,其目的是将整个文档向量空间分割(聚类)成众多小的子空间,子空间内的文档距离相近,在向量搜索的时候,通过某种方式,将搜索空间限定在某几个子空间。这种快速定位子空间的方式,将全局遍历缩小为小范围的局部遍历,可以极大提升相似文档的搜索效率,是目前大规模相似文档搜索的基础。上述基于内容的空间划分方法(也叫向量索引),存在一个问题:即划分的子空间只能保证内容向量距离相近的文档聚在一个空间里,没有考虑权限约束的情况。在实际文档搜索时不但要求文档内容相似,还要符合文档访问权限的限制,搜索结果必须符合权限约束才可以输出给用户。上述向量索引方法搜索出的文档,内容虽相似,但不在访问权限范围内,导致需要反复多次重定位子空间才能找到符合权限的文档。图4a为本技术实施例提供的一种文档带有权限约束的场景的示意图,如图4a所示,该示意图包括文档子空间41、文档子空间42、文档子空间43和待搜索文档44,在使用上述向量索引方法对待搜索文档44进行文档匹配的情况下,可以确定该待搜索文档44与文档子空间41的距离最近,但是文档子空间41中的文档不符合权限要求;该待搜索文档44与文档子空间43的距离最远,但是文档子空间43中存在部分文档符合权限约束。[0172]以图4a为例,当文档规模很大时,对向量索引后,与该待搜索文档内容最相似的文档子空间41,用户没有访问权限,有访问权限的文档子空间43距离该待搜索文档距离较远。[0173]本技术实施例提供一种文档权限的向量化方法,如图4b所示,该方法包括以下步骤:[0174]步骤s410、将文档权限表示为从根结点开始到文档所在位置的一条路径;[0175]这里,文档权限表示为从根结点开始到文档所在位置的一条路径(可直观理解为文件路径),举例来说,权限路径的形式可以为rootdir1dir2...dirndoc,“”代表树结构的一个层级分隔。[0176]步骤s420、基于文档的路径确定权限向量。[0177]在实施过程中,可以基于文档的路径从根目录开始每个层级生成一个确定的标量,按层级标量将填充至权限向量对应的一维。举例来说,根目录填充至第1维;第二级目录填充至第2维;第三级目录对应第3维;依次类推。[0178]在一些实施例中,当层级数大于权限向量长度的情况下,可以从权限向量起始维数递增填充。举例来说,在向量长度为30维,层级数为32的情况下,将层级31回归至权限向量第1维;层级32回归至第2维;依次类推,可以保证任意长度的权限路径均可以用固定维度的权限向量表示。[0179]在一些实施例中,层级的编码可以由深度编码函数f(node.depth)和宽度编码函数g(node.width)两个函数组成。其中,f(node.depth),用于计算返回节点所在位置深度的标量特征,f(x)为周期函数,周期为depth_layer;g(node.width),用于计算返回节点所在位置宽度的标量特征,g(x)为周期函数,周期为width_circle。[0180]这里,f(x)和g(x)是构成位置特征向量的基本函数,可根据实际需求确定。[0181]举例来说,可以利用以下公式(1)表示函数f(x);公式(2)表示函数g(x):[0182][0183][0184]其中,f(x)和g(x)分别是经过周期延拓后的周期函数;x表示某个目录所处的深度node.depth或者宽度node.width;n可以是任意整数,n的取值是为了表征f(x)是周期函数。depth_layer用于表示位置空间每层最大深度;width_circle用于表示位置空间宽度特征函数循环周期,超参数。[0185]f(x)和g(x)函数均为定义域上的连续函数,函数值相近的物理距离必然相近,可以为欧式聚类的可靠性提供保障。[0186]node.depth表示该层级至根位置的树深度;node.width表示该层级为其父结点的第几个儿子。[0187]在一些实施例中,可以基于图1b所示的文件树,可以确定文档f5所在的路径是rootd1w2w2_1f5,则深度是4,这里的宽度是针对每一层目录,其处在父节点的所有孩子结点(文档节点除外)从左向右的位置,最靠右的目录结点宽度最大,则f5所在路径在每一层级的宽度分别是1,1,2,1。[0188]这里,可以利用以下公式(3),得到位置特征向量[0189][0190]其中,代表最终位置向量,z1、z2…zd代表向量中每一位置的元素,该位置特征向量的维度为d,d同时也是位置空间每层的最大深度depth_layer,v中的每一个元素zi都是从根节点到编码节点路径上结点的位置编码融合的结果。[0191]这里,每一维的编码为一个标量zi,可以用以下公式(6)表示:[0192][0193]其中,node为维数,f(i)为深度编码,g(i)为宽度编码。zi由两部分通过一个二元运算构成,这里的可根据实际需求挑选,可以是加法,乘法,平方和相加后开根号等等。举例来说可以用“+”运算指代[0194]在一些实施例中,权限向量每一维的值为所有填充至该维的层级编码的加权求和。[0195]可以利用以下公式(4)和公式(5)分别计算f(i)和g(i):[0196][0197][0198]其中,p为衰减系数;depth_layer是设定的权限维度大小;k取值范围为[0,depth/(depth_layer)],满足不等式约束,可以理解为是在固定长度向量上进行的第几轮编码。[0199]当node.depth《=depth_layer,共用一个加权系数,值为1,如果随着node.depth过大,depth_layer《node.depth《=2*depth_layer,k=1,加权系数为p,以此类推。[0200]这里,几何级数p序列(1,p,p2,...p[depth/depth_layer])是一个衰减权重序列,结合f(i)和g(i)表达式可知,其表达的物理意义是越靠近根节点的节点之间,由于深度和宽度不同导致的距离差异越大。而当节点深度和宽度都非常大时,其到根节点路径上每一个节点的深度和宽度信息虽然也会参与编码,但造成的距离差不足上一轮的一半(p=0.5,则权重序列为1,0.5,0.25,以此类推)。[0201]f(x)和g(x)是构成位置特征向量的基本函数,同一样可根据实际需求挑选,这里,可以选取以下公式(7)和(8)作为f(x)和g(x):[0202][0203][0204]其中,x是参数,表示某个目录所处的深度node.depth或者宽度node.width,n可以是任意整数,为了说明f(x)和g(x)是周期函数。[0205]这里,f(x)和g(x)分别是经过周期延拓后的周期函数。由于f(x)和g(x)函数均为定义域上的连续函数,函数值相近的物理距离必然相近,这为欧式聚类的可靠性提供了保障。[0206]以下是本技术实施例提供的一个10级权限路径的表格示意图,如下表1:[0207][0208]以上表1为示例,以一个10级的权限路径rootdir1dir2dir3...dir9doc为例,假设root,dir1到dir9所处的宽度分别为(1,2,3,4,5,6,7,8,9,10),预生成的权限向量维度为4,衰减系数为0.5,则权限向量以下公式(7)至(10)分别为z1至z4的取值:[0209][0210][0211][0212][0213]其中,f(x)和g(x)分别是经过周期延拓后的周期函数;x表示某个目录所处的深度node.depth或者宽度node.width。[0214]本技术实施例中,首先将文档权限表示为从根结点开始到文档所在位置的一条路径;然后基于文档的路径确定权限向量。这样,可以实现对文档权限的向量化。[0215]基于前述的实施例,本技术实施例提供一种文档处理装置和一种文档搜索装置,该装置包括所包括的各模块,各模块包括各子模块,各子模块包括单元,可以通过电子设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(central processing unit,cpu)、微处理器(microprocessor unit,mpu)、数字信号处理器(digital signal process,dsp)或现场可编程门阵列(field programmable gate array,fpga)等。[0216]图5a为本技术实施例提供的文档处理装置的组成结构示意图,如图5a所示,所述装置500包括:[0217]第一获取模块501,用于获取待处理文档的权限参数和内容参数,其中,所述权限参数用于表征所述待处理文档的权限,所述内容参数用于表征所述待处理文档的内容;[0218]第一确定模块502,用于利用所述权限参数和所述内容参数确定所述待处理文档之间的相似度距离;[0219]划分模块503,用于将所述参数距离满足距离阈值的所述待处理文档划分为同一子空间,以使得所述同一子空间中存储文档的权限和内容相似。[0220]在一些实施例中,所述第一获取模块501包括第一获取子模块和编码子模块,其中,所述第一获取子模块,用于获取所述待处理文档的路径信息,其中,将所述待处理文档的权限映射为树形结构,所述待处理文档的路径信息表征所述待处理文档的权限;所述编码子模块,用于对所述路径信息进行编码,得到所述待处理文档的权限参数。[0221]在一些实施中,所述编码子模块包括确定单元和编码单元,其中,所述确定单元,用于基于所述路径信息确定所述待处理文档的深度信息和宽度信息,其中,所述深度信息用于表征所述待处理文档所在层级至根目录的深度,所述宽度信息用于表征所述路径信息中每一层级的子目录位置;所述编码单元,用于对所述深度信息和所述宽度信息进行编码,得到所述待处理文档的权限参数。[0222]在一些实施例中,所述编码单元包括第一确定子单元、第二确定子单元、编码子单元和第三确定子单元,其中,所述第一确定子单元,用于确定所述权限参数的向量长度;所述第二确定子单元,用于基于所述向量长度,确定用于计算所述权限参数每一维取值的层级,其中,所述层级为所述路径信息的层级;所述编码子单元,用于对所述权限参数每一维对应层级的深度信息和宽度信息进行编码,得到所述权限参数每一维取值;所述第三确定子单元,用于基于所述权限参数每一维取值,确定所述待处理文档的权限参数。[0223]在一些实施例中,所述编码子单元,还用于获取所述权限参数第i维对应每一层级的深度信息和宽度信息,其中,i为大于等于1小于等于参数长度的整数;将所述第i维对应每一层级的深度信息进行加权求和,得到第i维深度编码;将所述第i维对应每一层级的宽度信息进行加权求和,得到第i维宽度编码;对所述第i维深度编码和所述第i维宽度编码进行二元运算,得到所述权限参数第i维取值。[0224]在一些实施例中,所述编码子单元,还用于确定用于编码的衰减系数;基于所述衰减系数确定每一层级的加权系数;利用所述每一层级的加权系数,将所述第i维对应每一层级的深度信息进行加权求和,得到所述第i维深度编码;利用所述每一层级的加权系数,将所述第i维对应每一层级的宽度信息进行加权求和,得到所述第i维宽度编码。[0225]在一些实施例中,所述第一确定模块502包括拼接子模块和第一确定子模块,其中,所述拼接模块,用于拼接所述权限参数和所述内容参数,得到拼接参数;所述第一确定子模块,用于基于所述拼接参数确定所述待处理文档之间的相似度距离。[0226]在一些实施例中,所述第一确定模块502包括融合子模块和第二确定子模块,其中,所述融合子模块,用于融合所述权限参数和所述内容参数,得到融合参数;所述第二确定子模块,用于基于所述融合参数确定所述待处理文档之间的相似度距离。[0227]图5b为本技术实施例提供的文档搜索装置的组成结构示意图,如图5b所示,所述装置510包括:[0228]第二获取模块511,用于获取待搜索文档的权限参数和内容参数,其中,所述权限参数用于表征所述待搜索文档的权限,所述内容参数用于表征所述待搜索文档的内容;[0229]第二确定模块512,用于基于所述权限参数和所述内容参数在存储文档的子空间中确定至少一个目标子空间,其中,所述每个子空间中存储文档之间的相似度距离满足距离阈值,所述相似度距离是基于所述存储文档的权限参数和内容参数确定的;[0230]搜索模块513,在所述至少一个目标子空间中搜索与所述待搜索文档的内容相似且权限相似的文档。[0231]在一些实施例中,所述第二确定模块包括第二获取子模块和匹配子模块,其中,所述第二获取子模块,用于获取每一子空间的聚类参数,其中,所述聚类参数是基于所述子空间中存储文档的权限参数和内容参数确定的;所述匹配子模块,用于将所述待搜索文档的所述权限参数和所述内容参数,与所述聚类参数进行相似度匹配,以确定所述至少一个目标子空间。[0232]以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。[0233]需要说明的是,本技术实施例中,如果以软件功能模块的形式实现上述方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备(可以是手机、平板电脑、笔记本电脑、台式计算机等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本技术实施例不限制于任何特定的硬件和软件结合。[0234]对应地,本技术实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供的文档处理方法和文档搜索方法方法中的步骤。[0235]对应地,本技术实施例提供一种电子设备,图6为本技术实施例提供的电子设备的一种硬件实体示意图,如图6所示,该设备600的硬件实体包括:包括存储器601和处理器602,所述存储器601存储有可在处理器602上运行的计算机程序,所述处理器602执行所述程序时实现上述实施例中提供的文档处理方法和文档搜索方法中的步骤。[0236]存储器601配置为存储由处理器602可执行的指令和应用,还可以缓存待处理器602以及电子设备600中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(flash)或随机访问存储器(random access memory,ram)实现。[0237]这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术存储介质和设备实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。[0238]应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。[0239]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。[0240]在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。[0241]上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。[0242]另外,在本技术各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。[0243]本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。[0244]或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备(可以是手机、平板电脑、笔记本电脑、台式计算机等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。[0245]本技术所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。[0246]本技术所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。[0247]本技术所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。[0248]以上所述,仅为本技术的实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
一种文档管理方法与流程 专利技术说明
作者:admin
2023-07-26 11:23:29
909
关键词:
计算;推算;计数设备的制造及其应用技术
专利技术