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

资源对象处理方法、装置及计算机设备与流程

2022-06-01 09:12:17 来源:中国专利 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.基于所述标题编码参数,确定对应的所述资源对象子桶的索引信息。
26.可选的,所述第一编码参数包括第一哈希编码参数,所述将所述第一编码参数与所述目标资源长度桶中的各资源对象子桶的索引信息进行比较,基于得到的第一比较结果,获得所述第一资源对象与所述历史资源对象的相似查询结果,包括:
27.基于所述第一哈希编码参数,对所述第一资源对象进行分段处理,得到不同第一资源段对象的第一分段哈希编码;
28.从所述目标资源长度桶下的多个资源对象子桶中,确定与所述第一分段哈希编码相匹配的目标资源对象子桶;
29.将所述第一哈希编码参数与所述目标资源对象子桶的索引信息包含的各哈希编码参数进行相似度比较;
30.将得到的第二相似度达到第二相似阈值对应的历史资源对象,确定为所述第一资源对象的相似资源对象。
31.可选的,所述按照所述历史资源对象的至少一个维度参数,对每一所述资源长度桶包含的历史资源对象进行二次分桶处理,得到该资源长度桶下对应维度下的多个资源对象子桶,以及所述多个资源对象子桶各自的索引信息,包括:
32.获取所述历史资源对象的哈希编码参数;
33.基于所述哈希编码参数,对同一资源长度桶中的所述历史资源对象进行分段分桶处理,得到多个资源对象子桶;
34.将所述资源对象子桶中各资源段对象的分段哈希编码,与所述各资源段对象各自所属历史资源对象的所述哈希编码参数,确定为该资源对象子桶的索引信息。
35.可选的,若针对同一资源长度桶下存在多个维度各自对应的多个资源对象子桶,获取所述多个维度的查询优先级;
36.所述将所述第一编码参数与所述目标资源长度桶中的各资源对象子桶的索引信息进行比较,包括:
37.按照所述查询优先级从高到低的顺序,将较高查询优先级下的第一编码参数与所述目标资源长度桶中的各资源对象子桶的索引信息进行相似度比较;
38.确定所述各资源对象子桶的编码参数与所述第一编码参数的第三相似度均未达到第三相似阈值,获取所述第一资源对象下一查询优先级对应的第二编码参数,继续与所述各资源对象子桶的索引信息进行相似度比较。
39.本技术提出了一种资源对象处理装置,所述装置包括:
40.第一数据获得模块,用于获得第一资源对象,确定所述第一资源对象的第一资源长度和第一编码参数;
41.目标资源长度桶确定模块,用于从资源库中的多个资源长度桶中,确定与所述第一资源长度对应的目标资源长度桶;所述多个资源长度桶各自包含对应资源长度的历史资源对象;
42.比较模块,用于将所述第一编码参数与所述目标资源长度桶中的各资源对象子桶的索引信息进行比较;所述资源对象子桶是基于所述第一编码参数所属维度对应的二次分桶处理方式得到的;
43.相似查询结果获得模块,用于基于得到的第一比较结果,获得所述第一资源对象与所述历史资源对象的相似查询结果。
44.本技术提出了一种计算机设备,所述计算机设备包括至少一个通信接口,至少一个存储器和至少一个处理器,其中:
45.所述存储器,用于存储实现如上述的资源对象处理方法的程序;
46.所述处理器,用于加载执行所述存储器存储的所述程序,实现如上述的资源对象处理方法。
47.由此可见,本技术提供了一种资源对象处理方法、装置及计算机设备,本技术基于多层嵌套分桶机制对资源库中的大量历史资源对象进行不同层次的分桶处理,这样,计算机设备获得第一资源对象后,可以依据多层分桶机制所依据的分桶维度,确定该第一资源对象的第一资源长度和第一编码参数,通过第一资源长度来初步减小对资源库中历史资源对象的相似查询范围,即确定目标资源长度桶包含的历史资源对象,再基于第一编码参数与该目标资源长度桶包含的各资源对象子桶的索引信息的比较结果,进一步减小相似资源对象的查询范围,据此快速且准确得到第一资源对象的相似查询结果,相对于直接对资源库中的大量历史资源对象进行相似查询,极大提升资源对象处理效率。
附图说明
48.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
49.图1为适用于本技术提出的资源对象处理方法的计算机设备的一可选示例的硬件结构示意图;
50.图2为适用于本技术提出的资源对象处理方法的系统架构示意图;
51.图3为本技术提出的资源对象处理方法的一可选示例的流程示意图;
52.图4为本技术提出的资源对象处理方法的又一可选示例的流程示意图;
53.图5为本技术提出的资源对象处理方法中,对资源库的历史资源对象的多层嵌套分桶方法示意图;
54.图6为本技术提出的资源对象处理方法的又一可选示例的流程示意图;
55.图7为本技术提出的资源对象处理方法的又一可选示例的流程示意图;
56.图8为本技术提出的资源对象处理方法的又一可选示例的流程示意图;
57.图9为本技术提出的资源对象处理方法的又一可选示例的流程示意图;
58.图10为本技术提出的资源对象处理装置的一可选示例的结构示意图;
59.图11为本技术提出的资源对象处理装置的又一可选示例的结构示意图。
具体实施方式
60.针对背景技术部分的描述,对于包含大量资源对象的资源库待写入的第一资源对象,为了解决两两相似查询的计算量过大的技术问题,提出将资源对象的标题作为索引,由外部搜索引擎基于该索引对第一资源对象进行相似查询,能够快速聚类与第一资源对象的标题一致的相似资源对象,但这种相似查询方式具有一定的局限性,相似查询结果可靠性和全面性较低,可能无法满足基于相似查询结果的应用需求。
61.为了进一步提高基于资源库的资源对象相似查询效率和可靠性,本技术提出基于分桶机制,预先基于资源库当前包含的历史资源对象的资源长度,对大量历史资源对象进行分桶处理,再按照一个或多个维度对每一个分资源长度桶中的历史资源对象进行二次分桶处理,确定每一个资源长度桶包含的多个资源对象子桶,这样,对于任一待入库的第一资源对象,确定其第一资源长度和对应维度的第一编码参数后,可以将该第一编码信息与第一资源对象长度对应的目标资源长度桶包含的各资源对象子桶的索引信息进行比较,从而基于得到的第一比较结果,将第一资源对象与一个或多个资源对象子桶中的历史资源对象进行相似查询,相对于将第一资源对象与资源库中的所有历史资源对象进行相似查询,本技术这种处理方式极大提高了相似查询效率,且保证了相似查询结果的可靠性和准确性。
62.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
63.参照图1,为适用于本技术提出的资源对象处理方法的计算机设备的一可选示例的硬件结构示意图,该计算机设备可以是服务器,如独立的物理服务器、多台物理服务器构成的服务器集群,或者是能够实现云计算的云服务器等。在又一些实施例中,该计算机设备也可以是具有一定数据处理能够的终端,如台式计算机、机器人、智慧交通设备、智慧医疗设备、智能家居设备、车载终端等,可以依据资源对象的应用场景确定计算机设备的产品类型。
64.在实际应用中,计算机设备可以是独立设备,如图2所示,计算机设备获得任一需要写入资源库的第一资源对象后,可以执行本技术提出的资源处理方法,来确定是否将该
第一资源对象发送至资源库存储。其中,第一资源对象可以是直接输入计算机设备的资源对象,也可以是来自第三方设备(如各种资源服务器、终端、存储设备等)的资源对象等。在又一些实施例中,上述计算机设备也可以集成在上述资源库中,即计算机设备与资源库集成同一设备中,这可以依据应用场景需求确定。本技术以计算机设备是服务器为例,来说明计算机设备的组成结构,如图1所示,该计算机设备可以包括:至少一个通信接口11、至少一个存储器12和至少一个处理器13。
65.其中,通信接口11、存储器12和处理器13可以连接通信总线,通过该通信总线实现相互之间的数据通信,还可以实现计算机设备的其他结构组成之间的数据交互,具体可以根据实际需求确定,本技术不做详述。
66.通信接口11可以包括通过无线方式和/或有线方式实现与外部设备数据交互的数据接口,如能够利用无线通信网络实现数据交互的wifi模块、5g/6g(第五代移动通信网络/第六代移动通信网络)模块、gprs模块、近场通信模块等通信模块的通信接口;支持有线连接的usb接口、多媒体接口等通信接口;当然,通信接口11还可以包括如串口/并口等实现计算机设备内部组成部件之间的数据交互的数据接口等。本技术对计算机设备包含的通信接口11的类型和数量不做限制,可视情况而定。
67.存储器12可以用于存储实现下文各方法实施例描述的资源对象处理方法的程序;处理器13可以加载并执行存储器12存储的该程序,以实现下文相应方法实施例描述的资源对象处理方法的各个步骤,具体实现过程可以参照下文方法实施例相应部分的描述,在此不做详述。
68.本技术实施例中,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。处理器13,可以为中央处理器(central processing unit,cpu)、特定应用集成电路(application-specific integrated circuit,asic)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件等。本技术对上述存储器12和处理器13的结构及其型号不做限定,可以根据实际需求灵活调整。
69.应该理解的是,图1所示的计算机设备的结构并不构成对本技术实施例中计算机设备的限定,在实际应用中,计算机设备可以包括比图1所示的更多的部件,或者组合某些部件,如在计算机设备为上述任一终端设备的情况下,该计算机设备还可以包括各种输入设备、各种输出设备、各种传感器、电源管理模组、天线等;当然,计算机设备为服务器的情况下,还可以监控设备,数据库等,本技术在此不做一一列举。
70.参照图3,为本技术提出的资源对象处理方法的一可选示例的流程示意图,该方法可以由计算机设备执行,如图3所示,该方法可以包括:
71.步骤s31,获得第一资源对象,确定第一资源对象的第一资源长度和第一编码参数;
72.本技术实施例中,第一资源对象可以是待写入对应资源库的任一资源对象,用以避免存储重复资源对象,造成存储资源的浪费;当然,该第一资源对象也可以是对应资源库中的任一资源对象,用以实现该资源库中相似资源对象的去重等,可以依据资源对象处理场景需求,确定第一资源对象的来源,本技术对第一资源对象的来源和类型等不做限制。
73.结合上文对本技术技术方案的相关描述,由于本技术采用多层嵌套分桶机制,预
先对资源库中的大量历史资源对象进行分桶处理,即先按照资源对象长度进行一次分桶处理,得到多个资源长度桶,再按照一种或多种维度对每一个资源长度桶包含的历史资源对象进行二次分桶,以通过分桶过滤机制,减少资源对象相似度计算比较的数据量,提高处理效率和准确性。
74.因此,计算机设备获得第一资源对象后,可以按照预设的多层嵌套分桶机制,对第一资源对象的资源长度以及相应维度的编码参数进行计算,得到第一资源长度和第一编码参数。示例性的,若二次分桶处理包括按照标题这一维度实现,第一编码参数可以包括第一资源对象的第一标题编码参数;若二次分桶处理包括分段分桶方式,第一编码参数可以包括按照分段分桶所依据分段哈希算法对第一资源对象进行编码分段处理后的第一哈希编码参数等;对于二次分桶所依据的其他维度(如资源对象的发布时间等),可以按照对应维度的编码方式对第一资源对象进行计算,得到对应维度的编码参数,实现过程本技术不做一一列举。
75.步骤s32,从资源库中的多个资源长度桶中,确定与第一资源长度对应的目标资源长度桶;
76.继上文分析,本技术采用多层嵌套分桶机制对资源库中的大量历史资源对象进行处理,第一次分桶处理所得到的多个资源长度桶各自可以包含对应资源长度的历史资源对象。其中,随着资源库包含的历史资源对象的变化,在一次分桶处理过程中所依据的资源长度可能会相应改变,也就是说,本技术按照资源库中历史资源对象的资源长度分布动态调整,以使得一次分桶得到的资源长度桶包含的历史资源对象能够尽量均衡,本技术对资源长度动态分桶的实现过程不做详述。
77.示例性的,资源库中历史资源对象的资源长度分布可以服从正态分布,所以,本实施例可以通过计算正态分布分位点,来确定不同资源长度桶的分桶点即资源长度阈值,由相邻两个资源长度阈值所组成的资源长度范围,可以将每一个历史资源对象的资源长度与各资源长度阈值进行比较,将属于同一资源长度范围内的历史资源对象,确定为一个资源长度桶的历史资源对象。本技术对正态分布分位点的计算实现方法不做详述,且对各分位点对应的资源长度阈值的数值不做限制,可视情况而定。
78.基于此,本技术可以将第一资源对象的第一资源长度,与各资源长度桶对应的资源长度范围进行比对,确定第一资源长度所属的资源长度范围,将该资源长度范围对应的资源长度桶确定为目标资源长度桶,即包含第一资源对象的相似资源对象所作的资源长度桶,以缩小资源对象相似比较范围,后续可以对其包含的历史资源对象做进一步相似过滤处理。
79.步骤s33,将第一编码参数与目标资源长度桶中的各资源对象子桶的索引信息进行比较;
80.本技术实施例中,资源对象子桶可以是基于第一编码参数所属维度对应的二次分桶处理方式得到,也就是说,按照该第一编码参数所属维度,对目标资源长度桶包含的历史资源对象进行二次分桶处理,得到多个资源对象子桶。如按照标题编码实现的二次分桶处理,本实施例可以将同一资源长度桶中的多个历史资源对象,划分成属于不同标题的历史资源对象,将同一标题的历史资源对象确定为一资源对象子桶,对于其他维度的二次分桶处理的实现过程类似,本实施例在此不做详述。
81.基于此,为了方便对资源对象子桶中各资源对象的相似比较,本技术可以利用各资源对象的对应维度的编码信息,构成该资源对象子桶的索引信息,这样,计算机设备可以将第一资源对象在对应维度上的第一编码参数,与目标资源长度桶中的各资源对象子桶的索引信息进行比较,以期进一步确定该各资源对象子桶包含的资源对象中,与第一资源对象相似的相似资源对象。
82.需要说明,本技术对不同维度的编码参数的比较方式不做限制,可以是编码参数组成内容的一一对比,也可以采用相似算法实现不同编码参数各自表示的资源对象之间的相似度等,本技术实施例在此不做详述。
83.步骤s34,基于得到的第一比较结果,获得第一资源对象与历史资源对象的相似查询结果。
84.依据上文实现步骤的相关描述,第一比较结果能够表征参与比较的两个编码参数各自代表的资源对象之间的相似度,所以,通过对得到的多个第一比较结果进行分析,可以对上述初步筛选出的目标资源长度桶,进一步缩短历史资源对象的相似查询范围,确定出可能与第一资源对象相似的历史资源对象所在的资源对象子桶,之后,可以利用相似算法,计算第一资源对象与所筛选出的资源对象子桶包含的各历史资源对象之间的相似度,准确确定出第一资源对象的相似资源对象。
85.可见,本技术基于多层嵌套分桶机制对资源库中的大量历史资源对象进行不同层次的分桶处理,这样,计算机设备获得第一资源对象后,可以依据多层分桶机制所依据的分桶维度,确定该第一资源对象的第一资源长度和第一编码参数,通过第一资源长度来初步减小对资源库中历史资源对象的相似查询范围,即确定目标资源长度桶包含的历史资源对象,再基于第一编码参数与该目标资源长度桶包含的各资源对象子桶的索引信息的比较结果,进一步减小相似资源对象的查询范围,据此快速且准确得到第一资源对象的相似查询结果,相对于直接对资源库中的大量历史资源对象进行相似查询,极大提升资源对象处理效率。
86.参照图4,为本技术提出的资源对象处理方法的又一可选示例的流程示意图,本实施例可以是对上文实施例提出的对资源库包含的历史资源对象,采用多层嵌套分桶机制进行分桶处理,得到多个资源长度分桶,且每个资源长度分桶可以包括按照至少一种维度二次分桶对应得到的多个资源对象子桶的实现过程进行细化描述,但并不局限于本实施例描述的这种多层嵌套分桶机制的实现方法,其该分桶实现方法仍可以由计算机设备执行,如图4所示,该方法可以包括:
87.步骤s41,获取资源库中各历史资源对象的资源长度;
88.步骤s42,对多个资源长度进行正态分布统计,获得资源长度的正态分布分位点;
89.步骤s43,利用正态分布分位点,确定多个资源长度分桶点;
90.对于资源对象之间的相似性,可以是资源对象内容相似,也可以是资源对象的其他维度特征相似,如资源长度相近、标题相同、发布时间相近等,相对于直接对资源对象内容进行相似度计算,对资源对象的其他维度特征的相似计算所花费的资源要少很多,因此,为了提高相似查询效率,本技术可以依据资源库中各历史资源对象的资源长度,确定多个资源长度分桶点,实现对大量历史资源对象的一级分桶处理。
91.为了保证历史资源对象的一级分桶结果的准确性,本技术采用资源长度动态分桶
方式,来确定当前资源库包含的大量历史资源对象的资源长度分桶点,使得据此分桶得到的多个资源长度桶包含的历史资源对象的数量基本相同。对于该资源长度分桶点,可以采用如上步骤描述的正态分布分位点计算方式实现,实现过程不做详述,且并不局限于本实施例描述的这种实现方式。
92.步骤s44,按照多个资源长度分桶点,对资源库中的各历史资源对象进行分桶处理,得到包含对应资源长度的历史资源对象的不同资源长度桶;
93.继上文描述,确定当前资源库中的各历史资源对象,按照资源长度均衡分组确定资源长度分桶点后,可以由此得知多个连续的资源长度范围。示例性的,假设由li表示不同资源长度,所得到的资源长度范围可以为:l
1-l2、l
2-l3、l
3-l4,

,l
n-1-ln,如图5所示,可以将整个方框表示的资源库中的历史资源对象,据此分割成多个属于对应资源长度范围内资源长度桶,这样,每一个资源长度桶包含的历史资源对象数量,相对于整个资源库包含的历史资源对象的数量会大幅度减少。
94.在一些实施例中,在针对第一资源对象进行历史资源对象相似查询的过程中,可以先按照第一资源对象的第一资源长度,与预先存储的各资源长度桶对应的资源长度范围进行比对,确定第一资源长度所属资源长度范围对应的目标资源长度桶后,也可以直接将第一资源对象与目标资源长度桶包含的各历史资源对象进行相似度计算,来确定第一资源对象的相似历史资源对象,即得到第一资源对象的相似查询结果。这种处理方式相对于第一资源对象与资源库包含的大量历史资源对象进行相似度计算的处理方式,也能够较大幅度提高处理效率,且相对于直接基于标题相同的相似聚类处理方式,保证了相似查询结果的准确性。
95.步骤s45,按照历史资源对象在至少一个维度下的编码参数,对每一资源长度桶包含的历史资源对象进行二次分桶处理,得到该资源长度桶下对应维度下的多个资源对象子桶,以及多个资源对象子桶各自的索引信息。
96.为了进一步减少相似查询范围,提高相似查询效率,本技术实施例将按照历史资源对象的其他维度特征,对每个资源长度桶中的历史资源对象进行二次分桶处理,确定每一个资源长度桶包含的多个资源对象子桶。其中,对于不同的资源长度桶中的历史资源对象的二次分桶处理,可以依据同一维度实现,也可以依据不同维度实现,本技术对此不做限制。
97.在一些实施例中,在上述二次分桶处理过程中,若所依据的维度包含资源对象的标题,如文章标题等,对于每一个资源长度桶包含的历史资源对象,可以确定该历史资源对象的标题,对各历史资源对象标题进行编码处理,得到对应的标题编码参数,由此构成该资源长度桶的索引信息,还可以据此对该资源长度桶包含的历史资源对象做进一步分桶处理。
98.其中,关于对资源对象标题编码处理的实现方法,可以采用md5信息摘要算法(message-digest algorithm),即一种密码散列函数对每一个资源长度桶包含的历史资源对象的标题进行处理,得到对应历史资源对象标题对应的固定长度的散列值(即哈希值,hash value),如128位(16字节)的散列值,将其作为对应历史资源对象的标题编码参数,但并不局限于本实施例描述的这种资源对象标题编码处理实现方法。
99.示例性的,如图5所示,对于任一资源长度桶对应的资源长度范围内的历史资源对
象,其具有的标题往往并不相同,使得该资源长度桶包含的多个历史资源对象,可能会应用多个标题编码参数,如标题md5编码,每一个标题md5编码可能对应一个或多个历史资源对象。可选的,为了减少相似比较次数,在基于标题编码参数进行二次分桶处理时,可以对标题分类,将具有同一类标题的历史资源对象划分到一个资源对象子桶中,实现过程本技术不作详述。
100.由上述分析可知,同一资源对象子桶包含的各历史资源对象的至少部分内容所具有的对应维度的编码参数之间相同或相似度达到第一相似阈值或位于同一参数区间,所以,基于标题编码参数进行二次分桶时,同一资源对象子桶包含的各历史资源对象的标题编码参数之间的相似度达到对应的第一相似阈值或位于同一参数区间,属于同一类标题。当然,在基于标题编码参数进行二次分桶时,也可以将每一种标题编码参数作为一个资源对象子桶,使得每一个资源对象子桶对应一个标题编码参数,且对应一个或多个具有该标题编码参数的历史资源对象。
101.基于上述分析,如图6所示,为本技术提出的资源对象处理方法的又一可选示例的流程示意图,本实施例可以对上文描述的基于多层嵌套分桶机制,对资源库包含的大量历史资源对象进行存储过程的一可选细化实现过程进行描述,本实施例可以对每一个资源长度桶包含的历史资源对象进行二次分桶处理过程进行描述,关于资源长度动态分桶的实现过程,可以参照上文实施例相应部分的描述,本实施例不做详述。如图6所示,本实施例提出的历史资源对象的二次分桶处理方法可以包括但并不局限于:
102.步骤s61,获取历史资源对象的标题编码参数;
103.步骤s62,基于标题编码参数,对同一资源长度桶中的历史资源对象进行相似度比较;
104.步骤s63,基于得到的第一相似度比较结果,将该资源长度桶中的历史资源对象分配至对应的资源对象子桶;
105.步骤s64,基于标题编码参数,确定对应的资源对象子桶的索引信息。
106.结合上文对基于标题编码参数分桶的描述内容,对于每一个资源长度桶包含的历史资源对象,得到对应的标题编码参数后,可以将每一个标题编码参数对应的历史资源对象划分为一个资源对象子桶,由标题编码参数与历史资源对象之间的对应关系,构成该资源对象子桶的索引信息。
107.可选的,如上述分析,可以将同一资源长度桶中标题相似度一组历史资源对象划分为一个资源对象子桶,同理,将相似标题的标题编码参数与历史资源对象之间的对应关系,构成该资源对象子桶的索引信息,实现过程本技术实施例不做详述。
108.在又一些实施例中,本技术可以采用分段分桶机制,对每一个资源长度桶包含的历史资源对象进行二次分桶处理,因此,对于每一个资源长度桶包含的历史资源对象,按照预设编码方式进行编码处理,得到该历史资源对象的哈希编码参数,之后,将该哈希编码参数按顺序平均分割为n 1份,即将该历史资源对象分割成n 1段,将n 1段资源对象内容对应的分段哈希编码分别存储至n 1个资源对象子桶,之后,可以使用倒排索引方式,确定每一个资源对象子桶的索引信息,如采用key-value(键值)方式构建索引信息,可以将每一个资源对象子桶中,对应分段哈希编码作为key,将所属历史资源对象的哈希编码参数作为对应的value,但并不局限于这种实现方法。
109.示例性的,本技术可以采用simhash算法实现分段分桶,根据抽屉原理,假设基于汉明距离相似算法,确定资源对象是否相似的汉明距离阈值为n(即大于1的正整数,本技术对其数值不做限制),对于任一资源长度桶中的各历史资源对象,获得对应的simhash编码参数(即上述哈希编码参数,可以是64位的二进制编码值)后,可以将每一个历史资源对象的64位simhash按顺序平均分成n 1份,得到每一个历史资源对象分段对应的分段哈希编码,如图5所示的simhash分段1、simhash分段2、simhash分段3,

,simhash分段n,simhash分段n 1。
110.结合上文对资源对象子桶的索引信息的获取方法的相关描述,任一资源对象子桶的索引信息的内容如图5所示,同一资源长度桶中的各历史资源对象,按照上述simhash分段分桶处理后,属于同一资源对象子桶的历史资源对象的完整simhash中对应分段的分段哈希编码,如101001010、100001010、001010101等,作为键值索引的key,将具有该key的各历史资源对象对应的完整simhash(简称为si,如s1、s2、s3、s4、s5…
)作为该key的value,由此构成键值方式的资源对象子桶的索引信息,但并不局限于图5所示的索引信息表示方式。
111.基于上述分析,如图7所示的本技术提出的资源对象处理方法的又一可选示例的流程示意图,本实施例可以对每一个资源长度桶包含的历史资源对象进行二次分桶处理过程的又一可选细化实现方法进行描述,结合上文实施例对应部分的描述,如图7所示,该细化实现方法可以包括但并不局限于:
112.步骤s71,获取历史资源对象的哈希编码参数;
113.步骤s72,基于哈希编码参数,对同一资源长度桶中的历史资源对象进行分段分桶处理,得到多个资源对象子桶;
114.步骤s73,将资源对象子桶中各资源段对象的分段哈希编码,与各资源段对象各自所属历史资源对象的哈希编码参数,确定为该资源对象子桶的索引信息。
115.本技术实施例中,可以利用simhash算法(也可以是其他相似算法,本技术对此不做限制)对各历史资源对象进行处理,得到整个历史资源对象的哈希编码参数,即整个历史资源对象的simhash值,之后,可以基于simhash分段分桶机制,对每一个资源长度桶中的历史资源对象进行二次分桶处理,得到不同分段编码参数对应的资源对象子桶,将分段哈希编码与整个历史资源对象的哈希编码参数构成的键值,确定为对应资源对象子桶的索引信息,实现过程可以参照上文对应部分的描述,本实施例在此不做赘述。
116.在本技术提出的又一些实施例中,由于发布时间相近的资源对象的相似概率更大,所以,在历史资源对象的分桶存储过程中,对于上述确定的一资源对象子桶的索引信息包含的各value,可以按照对应历史资源对象的发布时间进行逆序存储,即发布时间越早,在索引信息中的排序越靠后,由此进一步减少相似查询次数,但并不局限于本实施例描述的索引信息获取方式。
117.可以理解,对于不同类型的资源对象,本技术还可以基于历史资源对象的其他维度实现二次分桶处理,如图像/视频的类型、发布者等,实现过程可以参照上文基于标题编码的二次分桶实现过程,本技术不做一一举例详述。另外,在实际应用中,对于同一资源长度桶的二次分桶处理,可以基于一种维度实现二次分桶处理,得到该维度下的多个资源对象子桶;也可以基于多种维度分别实现二次分桶处理,得到这多种维度各自对应的多个资源对象子桶,甚至也可以基于多种维度组合实现二次分桶处理,得到多个资源对象子桶等,
可以依据应用场景实际需求确定,本技术在此不做详述。
118.参照图8,为本技术提出的资源对象处理方法的又一可选示例的流程示意图,本实施例可以是对上文实施例提出的资源对象处理方法的一可选细化实现方法的描述,但并不局限于本实施例描述的细化实现方法,如图8所示,该细化实现方法可以包括:
119.步骤s81,获得第一资源对象,确定第一资源对象的第一资源长度和第一标题编码参数;
120.步骤s82,从资源库中的多个资源长度桶中,确定与第一资源长度对应的目标资源长度桶;
121.关于步骤s81和步骤s82的实现过程,可以参照上文实施例相应部分的描述,本实施例在此不做赘述。
122.在本技术实施例中,对于新获得的第一资源对象,确定第一资源长度l后,将第一资源长度l与各资源长度桶对应的资源长度范围((1-a)l,(1 a)l),a为阈值参数,可以依据资源长度动态调整情况确定,如基于上述正态分布分位点确定,将第一资源长度l与各资源长度范围相比,确定目标资源长度桶,相对于整个资源库减少相似查询范围。
123.步骤s83,将第一标题编码参数与目标资源长度桶中的各资源对象子桶的标题编码参数进行相似度比较;
124.步骤s84,将得到的第一相似度达到第一相似阈值对应的资源对象子桶确定为目标资源对象子桶;
125.步骤s85,从目标资源对象子桶包含的历史资源对象中,确定第一资源对象的相似资源对象。
126.为了进一步从缩小相似查询范围的目标资源长度桶包含的多个历史资源对象中,来查询第一资源对象的相似历史资源对象,所以,计算机设备可以将第一资源对象的第一标题编码参数,与目标资源长度桶包含的多个历史资源对象各自的标题编码参数进行比较,若确定目标资源长度桶中存在标题编码参数与第一标题编码参数相同的历史资源对象,可以将该历史资源对象确定为第一资源对象的相似资源对象,也就是确定第一标题编码参数与目标资源长度桶中的各资源对象子桶的标题编码参数的第一相似度达到100%的目标资源对象子桶,将该目标资源对象子桶包含的历史资源对象确定为第一资源对象的相似资源对象,不需要再对历史资源对象和第一资源对象进行全文哈希相似度计算,大大减少了相似查询计算量,提高了相似查询效率。
127.基于上述分析可知,标题编码参数的相似度比较可以包括第一标题编码参数与历史资源对象的标题编码参数的直接对比;在一些实施例中,若预先对资源库进行多层嵌套分桶处理过程中,是将同一资源长度桶中相似标题的历史资源对象划分到一个资源对象子桶中,那么,在实际对第一资源对象进行相似查询过程中,在依据比较机制中的标题编码匹配时,可以获取各资源对象子桶的标题编码参数与第一标题编码参数的第一相似度,确定第一相似度达到第一相似阈值(本技术对此数值不做限制,可以是上述100%,也可以是其他较高数值,如90%等)的目标资源对象子桶,即从目标资源长度桶中与第一资源对象的标题相似度较高的目标资源对象子桶包含的历史资源对象,通过这种处理方式来进一步减少相似查询范围,从目标资源长度桶包含的历史资源对象的第一数据量,减小至目标资源对象子桶包含的历史资源对象的第二数据量,第二数据量大大小于第一数据量。
128.之后,为了提高相似查询精准度,在确定目标资源对象子桶包含的多个历史资源对象后,由于这些历史资源对象的数量往往较少,可以将第一资源对象与这些历史资源对象的全文哈希编码参数(如整个资源对象的simhash)进行相似度计算,得到对应的第二相似度,将第二相似度达到第二相似阈值(其数值可以不做限制,可视情况而定)的历史资源对象确定为第一资源对象的相似资源对象。
129.可见,本实施例通过对二级分桶的历史资源对象的逐次比较,逐次减小资源对象相似比较范围,从而减少后续执行的资源对象全文哈希相似计算的次数,大大降低哈希相似计算的计算量,提高处理效率。
130.在实际应用中,对于同一资源长度桶下的多个历史资源对象的二次分桶处理,若可以基于多个维度实现,得到不同维度对应的多个资源对象子桶,本技术可以获取这多个维度的查询优先级,以便后续对第一资源对象进行相似查询过程中,可以按照该查询优先级对目标资源长度桶做进一步相似查询,本技术对该查询优先级的配置方法和内容不做限制,可视情况而定。
131.基于此,本技术在将第一编码参数与目标资源长度桶中的各资源对象子桶的索引信息进行比较的实现过程可以为:按照查询优先级从高到低的顺序,将较高查询优先级下的第一编码参数与目标资源长度桶中的各资源对象子桶的索引信息进行相似度比较;确定各资源对象子桶的编码参数与第一编码参数的第三相似度均未达到第三相似阈值,也就是说按照该较高查询优先级的维度对应的编码参数,未查询到相匹配的历史资源对象,可以获取第一资源对象下一查询优先级对应的第二编码参数,继续与各资源对象子桶的索引信息进行相似度比较,直至确定某一查询优先级对应的编码参数与第一资源对象在对应维度下的编码参数的第三相似度达到第三相似阈值,可以确定具有该编码参数的资源对象子桶为目标资源对象子桶。
132.下面将以资源对象的标题、分段这两个维度的二次分桶为例进行说明,且由于基于标题编码匹配的计算量小于基于分段哈希编码相似查询的计算量,可以配置基于标题编码匹配的查询优先级高于基于分段哈希编码相似查询的查询优先级。基于此,参照图9,为本技术提出的资源对象处理方法的又一可选示例的流程示意图,本实施例可以是对上文实施例提出的资源对象处理方法的又一可选细化实现方法的描述,如图9所示,该方法可以包括:
133.步骤s91,获得第一资源对象,确定第一资源对象的第一资源长度、第一标题编码参数和第一哈希编码参数;
134.步骤s92,从资源库中的多个资源长度桶中,确定与第一资源长度对应的目标资源长度桶;
135.关于步骤s91和步骤s92的实现过程,可以参照上文实施例相应部分的描述,本实施例在此不做赘述。
136.步骤s93,将第一标题编码参数与目标资源长度桶中的各资源对象子桶的标题编码参数进行比较;
137.步骤s94,若比较结果都为不相同,基于第一哈希编码参数,对第一资源对象进行分段处理,得到不同第一资源段对象的第一分段哈希编码;
138.在本技术实施例中,按照上文比较机制,通过标题编码匹配方式确定不存在与第
一资源对象的标题相同的历史资源对象,可以采用另一种比较机制进行相似查询,即对基于另一维度的二次分桶机制得到的资源对象子桶进行二次比较查询,本实施例以分段分桶方式为例进行说明。因此,结合上文描述的分段分桶原理,可以对第一哈希编码参数进行分段处理,如将第一哈希编码参数按顺序平均分n 1份,即将第一资源对象的内容分割成n 1个第一资源段对象,得到n 1个对应的第一分段哈希编码,实现过程本技术不做详述。
139.步骤s95,从目标资源长度桶下的多个资源对象子桶中,确定与第一分段哈希编码相匹配的目标资源对象子桶;
140.步骤s96,将第一哈希编码参数与目标资源对象子桶的索引信息的各哈希编码参数进行相似度比较;
141.结合上文对分段分桶机制的相关描述,以资源对象为文章为例进行说明,对于相似的两个资源对象,通常会至少有一个分段(即资源段对象)完全一样,这样就可以先通过分段哈希编码进行相似比较,来确定与第一资源对象具有相同的资源段对象所在的目标资源对象子桶,此处的目标资源对象子桶可以是一个或多个资源对象子桶,也就是说,目标资源长度桶包含的不同资源段对象的资源对象子桶中,可能会存在一个或多个资源段对象与第一资源对象的对应第一资源段对象相同。
142.且由于本实施例中,目标资源对象子桶的索引信息,是由对应资源段对象的分段哈希编码与具有该资源段对象的历史资源对象的哈希编码参数构成,所以,本技术可以将第一资源对象不同分段的第一分段哈希编码,与目标资源长度桶中各资源对象子桶的key即分段哈希编码进行比较,将分段哈希编码相同的资源对象子桶确定为目标资源对象子桶,或者将分段哈希编码相似度达到第三相似阈值的资源对象子桶确定为目标资源对象子桶,即具有与第一资源对象的一个或多个相同第一资源段对象内容的历史资源对象的资源段对象所在的资源对象子桶。
143.之后,为了进一步确定每个资源段对象对应的目标资源对象子桶中,第一资源对象的相似资源对象,可以将第一资源对象的第一哈希编码参数,与目标资源对象子桶的索引信息中的各哈希编码参数进行相似比较,即对于具有相同的一分段内容的第一资源对象和历史资源对象的完整哈希编码参数进行相似度计算,来精准确定该历史资源对象与第一资源对象之间的相似程度,进而确定该历史资源对象是否为第一资源对象的相似资源对象。关于两个资源对象的相似度计算所依据的相似算法本技术不做限制,包括但并不局限于上文描述的simhash算法。
144.步骤s97,将得到的第二相似度达到第二相似阈值对应的历史资源对象,确定为第一资源对象的相似资源对象。
145.继上文分析,通过第一资源对象与目标资源对象子桶中的历史资源对象的内容相似度计算,可以精准确定第一资源对象的相似资源对象,本技术对第二相似阈值的数值不做限制,可以依据经验、业务需求等确定。
146.需要说明,关于目标资源对象子桶的确定方式,及其对应的相似资源对象的获取方式,可以结合历史资源对象二次分桶原理确定,包括但并不局限于上文实施例描述的实现方法。
147.在本技术提出的又一些实施例中,若本技术对资源库中历史资源对象的各资源长度桶进行二次分桶处理时,采用分段分桶机制实现,本技术实施例确定第一资源对象的目
标资源长度桶后,可以直接对第一资源对象的第一哈希编码参数进行分段处理,来确定第一资源对象包含的不同第一资源段对应的第一分段哈希编码,再据此确定目标资源对象子桶后,通过资源对象完整的哈希编码参数的相似比较,来确定第一资源对象的相似资源对象,实现过程可以参照上文实施例相应部分的描述,本实施例在此不做赘述。
148.参照图10,为本技术提出的资源对象处理装置的一可选示例的结构示意图,该装置可以包括:
149.第一数据获得模块101,用于获得第一资源对象,确定所述第一资源对象的第一资源长度和第一编码参数;
150.目标资源长度桶确定模块102,用于从资源库中的多个资源长度桶中,确定与所述第一资源长度对应的目标资源长度桶;所述多个资源长度桶各自包含对应资源长度的历史资源对象;
151.比较模块103,用于将所述第一编码参数与所述目标资源长度桶中的各资源对象子桶的索引信息进行比较;所述资源对象子桶是基于所述第一编码参数所属维度对应的二次分桶处理方式得到的;
152.相似查询结果获得模块104,用于基于得到的第一比较结果,获得所述第一资源对象与所述历史资源对象的相似查询结果。
153.在一些实施例中,为了获取资源长度桶和资源对象子桶,如图11所示,上述资源对象处理装置可以包括:
154.资源长度分桶处理模块105,用于依据所述资源库中各历史资源对象的资源长度,确定多个资源长度分桶点;
155.资源长度桶获得模块106,用于按照所述多个资源长度分桶点,对所述历史资源对象进行分桶处理,得到包含对应资源长度的历史资源对象的不同资源长度桶;
156.二次分桶模块107,用于按照所述历史资源对象在至少一个维度下的编码参数,对每一所述资源长度桶包含的历史资源对象进行二次分桶处理,得到该资源长度桶下对应维度下的多个资源对象子桶,以及所述多个资源对象子桶各自的索引信息;
157.其中,同一所述资源对象子桶包含的各历史资源对象的至少部分内容所具有的对应维度的编码参数之间相同或相似度达到第一相似阈值或位于同一参数区间。
158.可选的,上述资源长度分桶处理模块105可以包括:
159.资源长度获取单元,用于获取所述资源库中各历史资源对象的资源长度;
160.正态分布分位点获得单元,用于对多个所述资源长度进行正态分布统计,获得所述资源长度的正态分布分位点;
161.资源长度分桶点确定单元,用于利用所述正态分布分位点,确定多个资源长度分桶点。
162.在本技术提出的又一些实施例中,若上述第一编码参数包括第一标题编码参数,上述比较模块103可以包括:
163.相似比较单元,用于将所述第一标题编码参数与所述目标资源长度桶中的各资源对象子桶的标题编码参数进行相似度比较;
164.相应地,上述相似查询结果获得模块104可以包括:
165.第一相似资源对象确定单元,用于将得到的第一相似度达到第一相似阈值对应的
资源对象子桶确定为目标资源对象子桶,将所述目标资源对象子桶包含的历史资源对象确定为所述第一资源对象的相似资源对象。
166.可选的,上述二次分桶模块107可以包括:
167.标题编码参数获取单元,用于获取所述历史资源对象的标题编码参数;
168.第一相似比较单元,用于基于所述标题编码参数,对同一所述资源长度桶中的所述历史资源对象进行相似度比较;
169.第一资源对象子桶确定单元,用于基于得到的第一相似度比较结果,将该资源长度桶中的所述历史资源对象分配至对应的资源对象子桶;
170.第一索引信息确定单元,用于基于所述标题编码参数,确定对应的所述资源对象子桶的索引信息。
171.在本技术提出的又一些实施例中,若第一编码参数包括第一哈希编码参数,上述比较模块103可以包括:
172.分段处理单元,用于基于所述第一哈希编码参数,对所述第一资源对象进行分段处理,得到不同第一资源段对象的第一分段哈希编码;
173.目标资源对象子桶确定单元,用于从所述目标资源长度桶下的多个资源对象子桶中,确定与所述第一分段哈希编码相匹配的目标资源对象子桶;
174.第二相似比较单元,用于将所述第一哈希编码参数与所述目标资源对象子桶的索引信息包含的各哈希编码参数进行相似度比较;
175.相应地,上述相似查询结果获得模块104可以包括:
176.第二相似资源对象确定单元,用于将得到的第二相似度达到第二相似阈值对应的历史资源对象,确定为所述第一资源对象的相似资源对象
177.可选的,上述二次分桶模块107可以包括:
178.哈希编码参数获取单元,用于获取所述历史资源对象的哈希编码参数;
179.分段分桶单元,用于基于所述哈希编码参数,对同一资源长度桶中的所述历史资源对象进行分段分桶处理,得到多个资源对象子桶;
180.第二索引信息确定单元,用于将所述资源对象子桶中各资源段对象的分段哈希编码,与所述各资源段对象各自所属历史资源对象的所述哈希编码参数,确定为该资源对象子桶的索引信息。
181.基于上文各实施例描述的资源对象处理装置,该装置还可以包括:
182.查询优先级获取模块,用于在针对同一资源长度桶下存在多个维度各自对应的多个资源对象子桶的情况下,获取所述多个维度的查询优先级;
183.基于此,上述比较模块103可以包括:
184.第三相似比较单元,用于按照所述查询优先级从高到低的顺序,将较高查询优先级下的第一编码参数与所述目标资源长度桶中的各资源对象子桶的索引信息进行相似度比较;
185.第四相似比较单元,用于确定所述各资源对象子桶的编码参数与所述第一编码参数的第三相似度均未达到第三相似阈值,获取所述第一资源对象下一查询优先级对应的第二编码参数,继续与所述各资源对象子桶的索引信息进行相似度比较。
186.需要说明的是,关于上述各装置实施例中的各种模块、单元等,均可以作为程序模
块存储在存储器中,由处理器执行存储在存储器中的上述程序模块,以实现相应的功能,关于各程序模块及其组合所实现的功能,以及达到的技术效果,可以参照上述方法实施例相应部分的描述,本实施例不再赘述。
187.本技术还提供了一种计算机可读存储介质,其上可以存储计算机程序,该计算机程序可以被处理器调用并加载,以实现上述实施例描述的资源对象处理方法的各个步骤,实现过程本技术实施例在此不做详述。
188.最后,需要说明的是,关于上述各实施例中,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
189.其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
190.本技术涉及到的术语诸如“第一”、“第二”等仅用于描述目的,用来将一个操作、单元或模块与另一个操作、单元或模块区分开来,而不一定要求或者暗示这些单元、操作或模块之间存在任何这种实际的关系或者顺序。且不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
191.另外,本说明书中各个实施例采用递进或并列的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、计算机设备而言,由于其与实施例公开的方法对应,所以描述的比较简单,相关之处参见方法部分说明即可。
192.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献