一种域名网址活跃度统计方法及系统的制作方法_2

文档序号:9887786阅读:来源:国知局
取L/2长的词串构成子域名的一个特征码。 之所以要在句号的两边分别取L/2长的词串,是因为在L/2和L/2-1处的字很难构成一个词, 因此更能保证特征码的唯一性。
[0025]本文提出一种方向自学习遗传算法来求解数值优化问题,给出方向自学习算子和 消亡算子,这2种算子通过种群中个体的竞争、合作,同时利用自身的知识进行自学习来获 得最优解,并能够很好地保持种群的多样性,避免了早熟收敛,提高了收敛速度,并且给出 了理论分析证明了该算法具有全局收敛性。分别用低维测试函数和高维测试函数将本文算 法的性能与CGA算法、GA-MGA算法、FEP算法和0GA/Q算法进行了比较。结果表明方向自学习 遗传算法能够在进行全局搜索的同时进行局部搜索,有效地维持了种群多样性,较好地避 免了早熟收敛,并且无论在解的质量上还是在计算复杂度上均有所改进。
[0026]通过对子域名去重算法的分析,可以看出,基于特征码的相同内容子域名的去除 与合并算法,是一种线性计算复杂度的算法,而且具有很高的判别正确率和召回率。它克服 了一般聚类算法所具有的算法复杂度高(平方级的算法复杂度),而且合并准确率低的缺 点,是一种非常实用的去除、合并相同内容子域名的算法。
【附图说明】
[0027]图1是本发明中域名网址活跃度统计方法流程图。
[0028]图2是本发明中方向自学习遗传算法中估计搜索方向的几何表示图。
【具体实施方式】
[0029] 为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本发明作进一步的详细说明。
[0030] 如图1所示,本发明提出了一种域名网址活跃度统计方法,其包括:
[0031 ]步骤1:从域名网址中破解得到各个子域名;
[0032] 步骤2:从每个所述子域名中抽取特征码;
[0033] 步骤3:用特征码将所有所述子域名逐个索引起来构成一个检索系统;
[0034] 步骤4:将每个所述子域名的特征码逐个投入检索系统,将当前所述子域名检索到 的全部子域名聚成一类;
[0035] 步骤5:根据当前所述子域名检索到的聚为一类的全部子域名的大小确定当前子 域名的活跃度。
[0036] 本发明在统计破解结果时采取快速聚合去重,去除重复子域名的问题可以看成是 一个特殊的聚类问题。因此可以采用一般的聚类方法来处理,我们可以用6763个汉字做成 一个向量,将各个汉字在子域名正文中出现的个数填入向量中,以该向量为这个子域名的 一个特征,通过计算子域名向量与聚类中心向量的夹角余弦值,两向量的模的大小关系,来 判断这个子域名是否应该归为该类。由于只有两个子域名完全相同才归属于一类,因此子 域名向量与聚类中心向量的夹角应该非常小,而且向量的模应该基本相同。
[0037] 但由于一般的聚类问题是把在某些特征上相似的元素聚为一类,而且聚类后总的 类别数不会很多,且一般都有一定的限制。而这个问题的特殊性在于不是要把相似的元素 聚成一类,而是把完全相同的元素才聚成一类。另外,由于不同的子域名占有很大的比例, 它们都各自成为一类,聚类后总的类别数会特别大,且没有具体的限制。因为一般的聚类方 法会比较每个元素到各个聚类中心的距离,当类别较少时,这种计算是可行的,但当类别数 很大的时候,比较的次数就会大大增加,当要处理的数据很大时,这种算法的所消耗的时间 将会很长,从而导致在计算效率上是比较低的。可以计算这种方法的计算复杂度是0U 2) 的,当数据量较大时(比如几十万子域名),这种方法是不可行的。另外,在计算子域名相似 度时很难取得合适的阈值使得能够保证子域名内容的完全相同。
[0038] 去除重复子域名的问题与检索问题也有相似的地方。本发明中假定将所有要处理 的子域名信息建立好索引,作为一个检索系统,再把每一篇文章变成一个查询请求,到这个 检索系统中去查询,找出所有与该子域名完全相同的子域名。
[0039]与一般的检索系统不同的是,在一般的检索系统中需要检索出所有与该子域名相 关的子域名,而不是完全相同的子域名。而本发明所要解决的问题是检索出与该子域名完 全相同的子域名,相关的子域名不需要被检索出来。为了实现这一点本发明对一般的检索 方法进行了改进。在一般的检索系统中,需要对关键词进行索引以便查询,而关键词可能在 多篇相关的子域名中出现,因此检索时会把所有相关的子域名检索出来。为了只检索出完 全相同的子域名,本发明对子域名的特征建立索引,这个特征可以保证对于不同的子域名 是完全不同的,本发明中称这个特征为子域名的特征码。把所有的特征码索引起来建立的 检索系统,就能够使检索的结果是完全相同的子域名。可见子域名特征码的确定是解决问 题的关键。子域名特征码必须能把完全相同的子域名和不同或相似的子域名区分开,一般 的关键词技术是不能做到这点的。因此本发明在子域名中取一个固定长为L的词串作为子 域名的特征码。但由于正文相同的子域名中导航信息、版权信息可能不同,由于这些信息的 干扰很难从子域名的开始或中间的某个固定的位置来抽取特征码。通过对子域名的分析发 现在导航信息中较少的出现标点符号,尤其是句号几乎不会出现,另外导航信息多出现在 HTML语言中的超链接标记中。本发明中通过特征码的方式可以区分形式上不同的子域名, 再通过检索所有子域名的特征码构成的检索系统所得到的所有子域名为与被检索子域名 实质上相同的子域名。例如,http: //www · XXX · com与www · XXX · com通过特征码可以区分为不 同的子域名,但是实质上两者是相同的子域名,可以通过本发明的上述方法检索聚为一类。 [0040]利用这两个特点,本发明在提取特征码时尽量把导航信息等干扰信息去除掉,再 把句号作为一个提取的位置,分别在句号两边提取L/2长的词串构成子域名的一个特征码。 之所以要在句号的两边分别取L/2长的词串,是因为在L/2和L/2-1处的字很难构成一个词, 因此更能保证特征码的唯一性。
[0041 ]本文提出一种方向自学习遗传算法来求解数值优化问题,给出方向自学习算子和 消亡算子,这2种算子通过种群中个体的竞争、合作,同时利用自身的知识进行自学习来获 得最优解,并能够很好地保持种群的多样性,避免了早熟收敛,提高了收敛速度,并且给出 了理论分析证明了该算法具有全局收敛性。分别用低维测试函数和高维测试函数将本文算 法的性能与CGA算法、GA-MGA算法、FEP算法和0GA/Q算法进行了比较。结果表明方向自学习 遗传算法能够在进行全局搜索的同时进行局部搜索,有效地维持了种群多样性,较好地避 免了早熟收敛,并且无论在解的质量上还是在计算复杂度上均有所改进。
[0042]通过对子域名去重算法的分析,可以看出,基于特征码的相同内容子域名的去除 与合并算法,是一种线性计算复杂度的算法,而且具有很高的判别正确率和召回率。它克服 了一般聚类算法所具有的算法复杂度高(平方级的算法复杂度),而且合并准确率低的缺 点,是一种非常实用的去除、合并相同内容子域名的算法。
[0043]本发明设计在暴力破解的同时自动学习新的字典的方法自学习方法。
[0044]标准遗传算法具有收敛速度慢、容易陷入局部极值、早熟收敛等缺点。为了有效地 克服标准遗传算法的这些个缺陷,人们提出了许多混合遗传算法。这些混合遗传算法可以 分为2类:(1)算子作用在种群的所有个体上;(2)算子只作用在每一代中的最优个体上。其 中,将爬山法与遗传算法相结合进行局部搜索已经在连续变量求解问题中得到了广泛的应 用。在连续变量优化问题中,显型变异(PM)算子已经被认为是一个有效地用来解决这一类 问题的工具。对于每一个矢量个体,PM算子以相当小的随机步长不断地沿着正负方向进行 搜索,然后对所得到的基因型进行评价。当获得较优解的时候算法结束。同时,PM算子也具 有自身的缺点。当搜索函数比较复杂的时候,PM算子不能沿着适当的路径来寻找函数的最 优解。当搜索空间内包含任意方向的非常窄的路径(称为脊)时,PM算子的这个缺点就更加 明显。
[0045] 为了较好地克服PM算子的缺点,本发明提出了采用爬山算子的小种群遗传算法 (MGA)。爬山算子采用较小的种群规模通过较少的遗传代数进行种群迭代,最终可以找到当 前解附近的更好解。MGA算子在搜索过程中不用考虑方向性、步长甚至函数的不连续性,能 够有效地找到得到最优解的进化路径。MGA算子也具有其自身的缺点,即在搜索的过程中采 用随机搜索,没有考虑最优解的方向信息,使得小种群搜索处于一个盲目的过程,需要的计 算量大。针对这些缺点,本发明在小种群中引入伪剃度方向信息,即用函数适应值来提取搜 索方向,提出了一种方向自学习算子。
[0046] 算子即为自学习算法中的字典,即算法中的X变量,基于X变量构建数学模型如下:
[0047] 在传统GA的交叉、变异策略中,常忽略具有指导性的搜索方向,不能使子代群体向 高质量的区域快速移动。交叉策略中随机数的使用又会引起候选解在搜索空间中处于随机 的位置,这就降低了种群的搜索速度。这里将
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1