模式树优化方法、装置和电子设备与流程

文档序号:28117803发布日期:2021-12-22 14:52阅读:93来源:国知局
模式树优化方法、装置和电子设备与流程

1.本技术涉及数据处理领域,具体而言,涉及一种模式树优化方法、装置和电子设备。


背景技术:

2.url(uniform resource locator,统一资源定位器)模式树在很多领域中得到应用,例如各大搜索引擎需要对每个域名做业务逻辑分析时,需要构建每个域名的业务逻辑树,以便于进行分析。但现有的模式树复杂度比较高,往往采用直接按照域名的业务逻辑进行构建的方式,在各方面的复杂度上均较高,不便于业务逻辑分析。


技术实现要素:

3.本技术的目的包括,例如,提供了一种模式树优化方法、装置和电子设备,其能够才能够从多方面达到简化模数树复杂度的目的。
4.本技术的实施例可以这样实现:
5.第一方面,本技术提供一种模式树优化方法,所述方法包括:
6.针对模式树中每个待构建的节点,获取所述节点对应的url数据集,所述url数据集中包含用于构建所述节点的子树的url数据;
7.根据所述url数据集中url数据的数量选择目标构建方案;
8.根据所述目标构建方案确定所述节点在所述模式树中的构建位置;
9.在预设构建策略下构建基于所述节点的子树,以使所述子树在平均时间复杂度的指标下满足预设要求。
10.在可选的实施方式中,所述根据所述url数据集中url数据的数量选择目标构建方案的步骤,包括:
11.检测所述url数据集中url数据的数量是否超过预设阈值,其中,所述预设阈值根据获取的用于构建所述模式树的所有url数据的数量计算获得;
12.在所述url数据集中url数据的数量超过所述预设阈值时,将以空间复杂度为指标的构建方案作为目标构建方案;
13.在所述url数据集中url数据的数量未超过所述预设阈值时,将以平均不确定性为指标的构建方案作为目标构建方案。
14.在可选的实施方式中,各所述节点具有对应的键值对,所述根据所述目标构建方案确定所述节点在所述模式树中的构建位置的步骤,包括:
15.统计各所述节点对应的键值对在所有url数据中出现的频次;
16.根据所述节点对应的键值对的频次以及所有节点各自对应的键值对的频次,计算得到所述节点对应的键值对的熵值;
17.根据所述熵值确定所述节点在所述模式树中的构建位置。
18.在可选的实施方式中,所述根据所述熵值确定所述节点在所述模式树中的构建位
置的步骤,包括:
19.比对所有节点对应的键值对的熵值的大小,并按预设顺序进行排序;
20.在所述目标构建方案以所述空间复杂度为指标时,从所述模式树的顶层到底层的方向,按熵值从小到大的顺序,设置各所述节点的构建位置;
21.在所述目标构建方案以所述平均不确定性为指标时,从所述模式树的顶层到底层的方向,按熵值从大到小的顺序,设置各所述节点的构建位置。
22.在可选的实施方式中,所述在预设构建策略下构建基于所述节点的子树,以使所述子树在平均时间复杂度的指标下满足预设要求的步骤,包括:
23.在预设构建策略下基于所述节点进行子树的多轮构建;
24.在平均时间复杂度的指标下计算每轮构建后得到的子树中根节点到结束节点的路径长度均值;
25.将路径长度均值最小的子树作为最终的基于所述节点的子树。
26.在可选的实施方式中,所述计算每轮构建后得到的子树中根节点到结束节点的路径长度均值的步骤,包括:
27.针对每轮构建后得到的子树,获取所述子树中各个结束节点对应的键值对的频次;
28.根据各个结束节点对应的键值对的频次为各所述结束节点设置对应的权重;
29.计算所述子树的根节点到各所述结束节点的路径长度;
30.根据各所述结束节点的权重以及对应的路径长度,计算得到所述子树的路径长度均值。
31.在可选的实施方式中,所述在预设构建策略下基于所述节点进行子树的多轮构建的步骤,包括:
32.在每轮构建中,从所述节点开始进行子树的构建,对于子树中每层节点,若节点对应的键值对的频次超过指定阈值,则继续以该节点进行子树的构建,若节点对应的键值对的频次未超过指定阈值,则将未超过指定阈值的节点进行合并正则化,并以合并正则化后的节点继续进行子树的构建。
33.在可选的实施方式中,所述将未超过指定阈值的节点进行合并正则化,并以合并正则化后的节点继续进行子树的构建的步骤,包括:
34.将未超过指定阈值的节点进行聚类,并将聚类后的节点进行合并正则化,以使合并正则化后的节点对应的频次与子树中频次超过指定阈值的节点对应的频次的差值在预设范围内,并以合并正则化后的节点继续进行子树的构建。
35.第二方面,本技术提供一种模式树优化装置,所述装置包括:
36.获取模块,用于针对模式树中每个待构建的节点,获取所述节点对应的url数据集,所述url数据集中包含用于构建所述节点的子树的url数据;
37.选择模块,用于根据所述url数据集中url数据的数量选择目标构建方案;
38.确定模块,用于根据所述目标构建方案确定所述节点在所述模式树中的构建位置;
39.构建模块,用于在预设构建策略下构建基于所述节点的子树,以使所述子树在平均时间复杂度的指标下满足预设要求。
40.第三方面,本技术提供一种电子设备,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当电子设备运行时,处理器执行所述机器可执行指令,以执行前述实施方式中任意一项所述的方法步骤。
41.本技术实施例的有益效果包括,例如:
42.本技术提供一种模式树优化方法、装置和电子设备,针对模式树中每个待构建的节点,获取节点对应的url数据集,根据url数据集中url数据的数量选择目标构建方案,根据目标构建方案确定节点在模式树中的构建位置,再在预设构建策略下构建基于节点的子树,以使子树在平均时间复杂度的指标下满足预设要求。该方案中,可根据节点的频数选择匹配的目标构建方案,并使构建的子树在平均时间复杂度的指标下满足预设要求,可从多方面达到简化模式树复杂度的目的。
附图说明
43.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
44.图1为本技术实施例提供的模式树优化方法的流程图;
45.图2为图1中步骤s120包含的子步骤的流程图;
46.图3为图1中步骤s130包含的子步骤的流程图;
47.图4为图3中步骤s133包含的子步骤的流程图;
48.图5为图1中步骤s140包含的子步骤的流程图;
49.图6为图5中步骤s142包含的子步骤的流程图;
50.图7为本技术实施例提供的电子设备的结构框图;
51.图8为本技术实施例提供的模式树优化装置的功能模块框图。
52.图标:110

存储器;120

处理器;130

电源组件;140

通信组件;150

输入/输出接口;160

模式树优化装置;161

获取模块;162

选择模块;163

确定模块;164

构建模块。
具体实施方式
53.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
54.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
55.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
56.在本技术的描述中,需要说明的是,在不冲突的情况下,本技术的实施例中的特征可以相互结合。
57.请参阅图1,为本技术实施例提供的模式树优化方法的流程图,该模式树优化方法有关的流程所定义的方法步骤可以由数据处理相关的电子设备实现。下面将对图1所示的具体流程进行详细阐述。
58.步骤s110,针对模式树中每个待构建的节点,获取所述节点对应的url数据集,所述url数据集中包含用于构建所述节点的子树的url数据。
59.步骤s120,根据所述url数据集中url数据的数量选择目标构建方案。
60.步骤s130,根据所述目标构建方案确定所述节点在所述模式树中的构建位置。
61.步骤s140,在预设构建策略下构建基于所述节点的子树,以使所述子树在平均时间复杂度的指标下满足预设要求。
62.为了能够形象、有效地表达域名的业务逻辑,在实践中往往采用模式树的方式来实现域名业务逻辑的表达,也即,基于域名的url数据构建为模式树的形式,利用模式树的节点关系以体现域名包含的url数据的逻辑关系。
63.模式树是一种树结构,在构建模式树时可以采用不同的策略进行构建,而现有技术中往往在构建过程中并未考虑如何使模式树的复杂度能够达到优化的效果,仅仅是基于url数据按常规模式进行构建,构建得到的模式树存在节点数据量大、路径长等诸多缺陷。
64.在本实施例中,考虑到节点在模式树中的构建位置影响到模式树在一些指标上的优劣程度,例如在空间复杂度、平均不确定性等指标。而模式树中节点对应的数据集的规模将决定优先采用何种指标,也就是说,节点对应的数据集的规模不同的情况下,优先考虑不同的指标,将使得模式树结构整体达到更优化。
65.因此,在本实施例中,针对模式树中每个待构建的节点,可以获取节点对应的url数据集,例如,假设用于模式树构建的所有url数据构成的集合可标识为url_set,则其中每个待构建的节点k对应的url数据集可标识为url_set_k。其中,url数据集中包含多个url数据。
66.可以根据url数据集中url数据的数量选择目标构建方案,基于目标构建方案确定节点在模式树中的构建位置。
67.在此基础上,对于各个节点,基于节点可以进行子树的构建,在进行子树的构建时,本实施例中以平均时间复杂度为指标进行构建,使得子树在平均时间复杂度的指标下满足预设要求,例如使得平均时间复杂度达到最小。而平均时间复杂度这一指标定义为子树的根节点到结束节点的路径长度均值。其中,所谓的结束节点为现有存在的url数据中可以存在于末尾的参数信息所对应的节点,可定义为结束节点。
68.也即,可以在预设构建策略下构建基于节点的子树,从而使得构建的子树在平均时间复杂度的指标下满足预设要求,例如根节点到结束节点的路径长度均值最小。
69.本实施例中,在构建模式树的过程中,可以根据节点对应的url数据集的规模确定匹配的、较优的目标构建方案,从而基于目标构建方案确定节点在模式树中的构建位置,使得模式树在重点考虑的指标下能够达到优化的效果。并且,在此基础上,在基于节点构建子树时,在预设构建策略下进行构建从而使得子树在平均时间复杂度的指标下满足预设要求,达到在平均时间复杂度的指标下的优化效果。本实施例提供的模式树优化方法可以从
多个方面实现模式树的优化。
70.本实施例中,请参阅图2,在上述步骤s120中,在基于url数据集中url数据的数量选择目标构建方案时,可以通过以下方式实现:
71.步骤s121,检测所述url数据集中url数据的数量是否超过预设阈值,其中,所述预设阈值根据获取的用于构建所述模式树的所有url数据的数量计算获得。
72.步骤s122,在所述url数据集中url数据的数量超过所述预设阈值时,将以空间复杂度为指标的构建方案作为目标构建方案。
73.步骤s123,在所述url数据集中url数据的数量未超过所述预设阈值时,将以平均不确定性为指标的构建方案作为目标构建方案。
74.本实施例中,可预先设置一预设阈值,该预设阈值可以根据用于构建模式树的所有url数据的数量计算得到,其中,用于构建模式树的所有url数据可以是采集的一段时间内某个域名的所有url数据,例如上述的url_set。该预设阈值可以是例如|url_set|/2,当然也可以是基于url_set得到的其他数量值,可以根据实际需求进行设置。
75.本实施例中,可以设置空间复杂度和平均不确定性两个指标,其中,空间复杂度定义为模式树中的节点树的数量,也即,在模式树中节点的数量越多的情况下,空间复杂度越高。而平均不确定性定义为模式树中合并正则化的节点树的数量,也即,在模式树中从根节点到结束节点的路径中出现的合并正则表达式的数量越多,则平均不确定性越高。
76.因此,在节点对应的url数据集的数据量较大时,例如,超过上述的预设阈值,表明模式树中节点的数量可能较多,在这种情况下,可以优先选择空间复杂度为指标的构建方案为目标构建方案,从而在空间复杂度上达到较优的效果,以达到降低模式树的空间复杂度的效果。
77.此外,若节点对应的url数据集的数据量较小时,例如,未超过上述的预设阈值,表明模式树的整体规模并不是很大,此时可以优先选择以平均不确定性为指标的构建方案为目标构建方案,从而降低模式树的平均不确定性。
78.本实施例中,可以根据实际需求调整在空间复杂度和平均不确定性指标中的倾向性,可以通过调整预设阈值的方式来实现,例如,若模式树构建中倾向以空间复杂度为指标进行构建,可以相应地将预设阈值设置为较小值,例如可以在url_set的基础上除以一较大数值。而若模式树构建中倾向以平均不确定性为指标进行构建,可以将预设阈值设置为较大值。
79.本实施例中,在确定目标构建方案的情况下,可以基于目标构建方案进行节点的构建,这里主要是确定节点在模式树中的构建位置。本实施例中,请参阅图3,在上述步骤s130中,在根据目标构建方案确定节点的构建位置时,可以通过以下方式实现:
80.步骤s131,统计各所述节点对应的键值对在所有url数据中出现的频次。
81.步骤s132,根据所述节点对应的键值对的频次以及所有节点各自对应的键值对的频次,计算得到所述节点对应的键值对的熵值。
82.步骤s133,根据所述熵值确定所述节点在所述模式树中的构建位置。
83.本实施例中,节点对应的url数据集中每条url数据将处理为键值对的形式,例如拆分为域名、路径和参数多个部分。各个节点定义有指定键值对,例如,对应url数据中的域名、或对应url数据中路径等。节点对应的键值对在统计数据中可能出现多次,可以统计节
点对应的键值对出现的频次,并基于频次进行熵值的计算。
84.熵值的大小可以体现随机性、不确定性等,而随机性、不确定性将体现在是否需要进行节点的正则化,而正则化的节点在模式树中的位置将影响到模式树整体的不确定性。
85.因此,在本实施例中,可以基于计算得到的熵值来确定节点在模式树中的构建位置。
86.而在分别以空间复杂度或平均不确定性为指标时,基于熵值确定节点在模式树中的构建位置思路并不相同。请参阅图4,上述步骤s133可以通过以下方式实现:
87.步骤s1331,比对所有节点对应的键值对的熵值的大小,并按预设顺序进行排序。
88.步骤s1332,在所述目标构建方案以所述空间复杂度为指标时,从所述模式树的顶层到底层的方向,按熵值从小到大的顺序,设置各所述节点的构建位置。
89.步骤s1333,在所述目标构建方案以所述平均不确定性为指标时,从所述模式树的顶层到底层的方向,按熵值从大到小的顺序,设置各所述节点的构建位置。
90.本实施例中,针对各个节点,假设节点对应的url数据集中所有url数据的个数为n,则其大小可表示为n
×
1,在转换为键值对后,则其大小可表示为n
×
m,其中m表示键的数量。计算得到每个键的熵值,进而确定节点对应的熵值。
91.熵值越大,表明信息量越大、随机性越高,需要进行节点的正则化,若正则表达式处于模式树的低层,则平均不确定性将会增大,反之则会减小。在以平均不确定性为指标的情况下,为了避免整体平均不确定性增大,因此,从模式树的顶层到底层的方向,按熵值从大到小的顺序设置各个节点的构建位置。
92.而在以空间复杂度为指标的情况下,熵值越小表明越确定,需要设置在模式树的越顶层,因此,此种构建方案下,可从模式树的顶层到底层的方向,按熵值从小到大的顺序设置各个节点的构建位置。
93.本实施例中,在确定各个节点在模式树中的构建位置的情况下,在基于节点进行子树构建时,以平均时间复杂度作为指标进行构建。具体地,可以以平均时间复杂度最小为优化目标,由于在构建过程中涉及到一些可适应性调整的步骤,相应地会得到不同的构建结果。为了从中确定出最优的构建方式,因此,请参阅图5,在上述步骤s140中,可以通过以下方式得到最优的构建结果:
94.步骤s141,在预设构建策略下基于所述节点进行子树的多轮构建。
95.步骤s142,在平均时间复杂度的指标下计算每轮构建后得到的子树中根节点到结束节点的路径长度均值。
96.步骤s143,将路径长度均值最小的子树作为最终的基于所述节点的子树。
97.本实施例中,可以基于节点进行多轮构建,每轮构建过程中可能存在一些构建步骤并不相同,例如在进行节点的聚类时可能采用的聚类策略不同,在判断节点是否需要聚类时采用的比对阈值并不相同等。这些不同将影响到最终的构建结果,而最终构建结果的优劣程度需要以平均时间复杂度为指标进行计算。因此,可以在每轮构建得到子树后,进行平均时间复杂度的计算,也即,子树中根节点到结束节点的路径长度均值的计算。其中,平均时间复杂度最小的一轮构建所得到的子树即为最终的、最优的子树。
98.在本实施例中,在计算子树的平均时间复杂度时,是基于根节点到不同结束节点的路径长度均值计算得到,而不同结束节点对应键值对的频次的不同,将对平均时间复杂
度产生不同程度的影响。因此,请参阅图6,在本实施例中,基于上述考虑,在每轮子树构建中,可以基于以下方式计算得到路径长度均值:
99.步骤s1421,针对每轮构建后得到的子树,获取所述子树中各个结束节点对应的键值对的频次。
100.步骤s1422,根据各个结束节点对应的键值对的频次为各所述结束节点设置对应的权重。
101.步骤s1423,计算所述子树的根节点到各所述结束节点的路径长度。
102.步骤s1424,根据各所述结束节点的权重以及对应的路径长度,计算得到所述子树的路径长度均值。
103.本实施例中,假设子树中包含多个结束节点,可统计各个结束节点对应的键值对的频次,并根据频次的不同相应地设置不同的权重。所有结束节点的权重的总和为1,其中,频次越高的结束节点,对应的权重越大,反之则越小。
104.在得到子树中根节点到每个结束节点的路径长度的情况下,可以将各个路径长度携带对应的权重后累加得到子树的路径长度均值。
105.例如,假设子树包含3个结束节点,从根节点到各个结束节点计算得到的路径长度分别为路径长度1、路径长度2、路径长度3,而基于各个结束节点对应的键值对的频次设置的权重分别为权重a、权重b和权重c。则路径长度均值可为:权重a
×
路径长度1+权重b
×
路径长度2+权重c
×
路径长度3。
106.本实施例中,在进行子树的构建中,为了避免按常规方式将所有节点进行构建所存在的造成模式树规模庞大,因此,在进行子树的构建过程中具体可以通过以下方式实现:
107.在每轮构建中,从所述节点开始进行子树的构建,对于子树中每层节点,若节点对应的键值对的频次超过指定阈值,则继续以该节点进行子树的构建,若节点对应的键值对的频次未超过指定阈值,则将未超过指定阈值的节点进行合并正则化,并以合并正则化后的节点继续进行子树的构建。
108.本实施例中,若子树中每层节点中,各节点对应的url数据集的规模相近,并且,各节点对应的键值对的频次超过指定阈值,则可以继续进行构建并递归。若各节点对应的url数据集的规模相近,并且,各节点对应的键值对的频次均未超过指定阈值,则可以对节点进行合并正则化。
109.此外,若节点对应的url数据集的规模彼此之间相差较大,则其中对应的键值对的频次较高的,如超过指定阈值的节点则可继续构建并递归。而其中,对应的键值对的频次较低,如未超过指定阈值的节点则可进行合并正则化,并以合并正则化的节点继续进行子树的构建。
110.本实施例中,在进行合并正则化时,将未超过指定阈值的节点进行聚类,并将聚类后的节点进行合并正则化,以使合并正则化后的节点对应的频次与子树中频次超过指定阈值的节点对应的频次的差值在预设范围内,并以合并正则化后的节点继续进行子树的构建。如此,可以保障子树之间节点在频次上的平衡性。
111.由上述可知,可以根据需求决定空间复杂度和平均不确定性之间的倾向程度,此外,在平均时间复杂度为指标进行子树构建时,也可以根据需求确定平均时间复杂度的倾向程度。例如,若非常看重平均时间复杂度的情况下,则可以以上述的平均时间复杂度最优
为目标进行优化处理。
112.然而,若优化过程中正则表达式节点越多,空间复杂度和平均不确定性将增加,所以在并非特别看重平均时间复杂度的情况下,可以对节点的合并处理进行相应调整,例如,相较于上述方式而言,可以减少合并正则化节点的数量,从而降低对空间复杂度和平均不确定性的影响。而若在特别不看重平均时间复杂度的情况下,则可以将频次未超过指定阈值的所有节点进行合并正则化,合并为一个正则表达式节点。如此,可以保障在空间复杂度和平均不确定性指标下的最优效果。
113.本实施例所提供的模式树优化方法,通过设置空间复杂度、平均不确定性为指标,根据节点的规模从中确定着重考虑的指标,从而可以基于节点的实际情况,适应性地进行优化。并且,在子树构建时,设置时间复杂度为指标,使得构建的子树在平均时间复杂度的指标下满足预设要求,例如可以在时间复杂度上达到最优。如此,综合考虑多个指标下进行模式树的构建,可构建出综合指标最优的url模式树。
114.请参阅图7,本技术实施例还提供一种电子设备。图7是根据一示例性实施例示出的一种电子设备的框图。例如,电子设备可以被提供为服务器或终端设备,可支持数据分析、处理等功能。参照图7,电子设备包括处理器120,其数量可以为一个或多个,以及存储器110,用于存储可由处理器120执行的计算机程序。存储器110中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器120可以被配置为执行该计算机程序,以执行上述的模式树优化方法。
115.另外,电子设备还可以包括电源组件130和通信组件140,该电源组件130可以被配置为执行电子设备的电源管理,该通信组件140可以被配置为实现电子设备的通信,例如,有线或无线通信。此外,该电子设备还可以包括输入/输出接口150。电子设备可以操作基于存储在存储器110的操作系统,例如windows servertm,mac os xtm,unixtm,linuxtm等等。
116.请参阅图8,本技术实施例还提供一种模式树优化装置160,该模式树优化装置160可以理解为上述电子设备,或电子设备的处理器120,也可以理解为独立于上述电子设备或处理器120之外的在电子设备控制下实现上述模式树优化方法的软件功能模块。
117.如图8所示,上述模式树优化装置160可以包括获取模块161、选择模块162、确定模块163和构建模块164。下面分别对该模式树优化装置160的各个功能模块的功能进行详细阐述。
118.获取模块161,用于针对模式树中每个待构建的节点,获取所述节点对应的url数据集,所述url数据集中包含用于构建所述节点的子树的url数据。
119.可以理解,该获取模块161可以用于执行上述步骤s110,关于该获取模块161的详细实现方式可以参照上述对步骤s110有关的内容。
120.选择模块162,用于根据所述url数据集中url数据的数量选择目标构建方案。
121.可以理解,该选择模块162可以用于执行上述步骤s120,关于该选择模块162的详细实现方式可以参照上述对步骤s120有关的内容。
122.确定模块163,用于根据所述目标构建方案确定所述节点在所述模式树中的构建位置。
123.可以理解,该确定模块163可以用于执行上述步骤s130,关于该确定模块163的详细实现方式可以参照上述对步骤s130有关的内容。
124.构建模块164,用于在预设构建策略下构建基于所述节点的子树,以使所述子树在平均时间复杂度的指标下满足预设要求。
125.可以理解,该构建模块164可以用于执行上述步骤s140,关于该构建模块164的详细实现方式可以参照上述对步骤s140有关的内容。
126.在一种可能的实现方式中,上述选择模块162具体可以用于:
127.检测所述url数据集中url数据的数量是否超过预设阈值,其中,所述预设阈值根据获取的用于构建所述模式树的所有url数据的数量计算获得;
128.在所述url数据集中url数据的数量超过所述预设阈值时,将以空间复杂度为指标的构建方案作为目标构建方案;
129.在所述url数据集中url数据的数量未超过所述预设阈值时,将以平均不确定性为指标的构建方案作为目标构建方案。
130.在一种可能的实现方式中,各所述节点具有对应的键值对,上述确定模块163具体可以用于:
131.统计各所述节点对应的键值对在所有url数据中出现的频次;
132.根据所述节点对应的键值对的频次以及所有节点各自对应的键值对的频次,计算得到所述节点对应的键值对的熵值;
133.根据所述熵值确定所述节点在所述模式树中的构建位置。
134.在一种可能的实现方式中,上述确定模块163可以用于通过以下方式根据熵值确定节点在模式树中的构建位置:
135.比对所有节点对应的键值对的熵值的大小,并按预设顺序进行排序;
136.在所述目标构建方案以所述空间复杂度为指标时,从所述模式树的顶层到底层的方向,按熵值从小到大的顺序,设置各所述节点的构建位置;
137.在所述目标构建方案以所述平均不确定性为指标时,从所述模式树的顶层到底层的方向,按熵值从大到小的顺序,设置各所述节点的构建位置。
138.在一种可能的实现方式中,上述构建模块164具体可以用于:
139.在预设构建策略下基于所述节点进行子树的多轮构建;
140.在平均时间复杂度的指标下计算每轮构建后得到的子树中根节点到结束节点的路径长度均值;
141.将路径长度均值最小的子树作为最终的基于所述节点的子树。
142.在一种可能的实现方式中,上述构建模块164可以用于通过以下方式计算路径长度均值:
143.针对每轮构建后得到的子树,获取所述子树中各个结束节点对应的键值对的频次;
144.根据各个结束节点对应的键值对的频次为各所述结束节点设置对应的权重;
145.计算所述子树的根节点到各所述结束节点的路径长度;
146.根据各所述结束节点的权重以及对应的路径长度,计算得到所述子树的路径长度均值。
147.在一种可能的实现方式中,上述构建模块164具体可以用于:
148.在每轮构建中,从所述节点开始进行子树的构建,对于子树中每层节点,若节点对
应的键值对的频次超过指定阈值,则继续以该节点进行子树的构建,若节点对应的键值对的频次未超过指定阈值,则将未超过指定阈值的节点进行合并正则化,并以合并正则化后的节点继续进行子树的构建。
149.在一种可能的实现方式中,上述构建模块164可以用于通过以下方式进行合并正则化:
150.将未超过指定阈值的节点进行聚类,并将聚类后的节点进行合并正则化,以使合并正则化后的节点对应的频次与子树中频次超过指定阈值的节点对应的频次的差值在预设范围内,并以合并正则化后的节点继续进行子树的构建。
151.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
152.在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,例如包括程序指令的存储器110,上述程序指令可由电子设备的处理器120执行以完成上述的模式树优化方法。
153.具体地,该计算机可读存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该计算机可读存储介质上的计算机程序被运行时,能够执行上述模式树优化方法。关于计算机可读存储介质中的及其可执行指令被运行时,所涉及的过程,可以参照上述方法实施例中的相关说明,这里不再详述。
154.综上所述,本技术提供的模式树优化方法、装置和电子设备,针对模式树中每个待构建的节点,获取节点对应的url数据集,根据url数据集中url数据的数量选择目标构建方案,根据目标构建方案确定节点在模式树中的构建位置,再在预设构建策略下构建基于节点的子树,以使子树在平均时间复杂度的指标下满足预设要求。该方案中,可根据节点的频数选择匹配的目标构建方案,并使构建的子树在平均时间复杂度的指标下满足预设要求,可从多方面达到简化模式树复杂度的目的。
155.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1