一种基于网络关系图的网站分类方法与流程

文档序号:12271511阅读:541来源:国知局

本发明涉及互联网网站分类领域,特别涉及一种基于网络关系图的网站分类方法。



背景技术:

互联网是一个开放式的共享平台,随着互联网不断发展,网页规模不断扩大,各类网页不断涌现。传统的网络安全机构通常采用人工审核系统判定和启发式爬虫自动识别两种方式对不断涌现的网站进行分类。但无论是哪种方式,都面临着严峻的挑战。首先,不断扩张的网页数据规模使现有的技术很难覆盖所有的网页,数据的处理速度远远跟不上网页的更新速度。人工审核的弊端体现在分类的效果依赖于审核人员的业务能力、处理周期相对比较长。其次,恶意网址往往存活周期短、隐匿性强,通常会因为该网站的特征不够明显导致误分类。

网站分类引擎主要用于对网站进行分类,需要对数以亿计的网站进行特征识别。网站大体分为正规经营网站和恶意网站两种类型。对于正规经营的网站,对网站进行功能分类和行业分类,有助于企业挖掘优质的用户,也有助于设计良好的网站推荐系统或建立健全的网络社区。以功能分类,分为新闻媒体、社交网络、网址导航、人才招聘及投资金融等。以行业分类,分为旅游行业、教育行业、医疗行业及电子商务等。对于恶意网站,网站分类能够将恶意网站通过相关渠道进行有效拦截,从而避免网民受骗。以安全联盟的恶意数据共享平台为例,其拦截(提醒)渠道包括电信运营商、浏览器、搜索引擎、聊天工具及搜索引擎等,有效预防网民上当受骗。以恶意类型分类,则分为博彩、欺诈、钓鱼、色情及被黑等。

传统的网站分类引擎除了深度包检测方法、基于机器学习的方法,还有基于这些方法改进的方法。传统的学习分类方法主要分为这几个部分:1)收集样本URL;2)利用爬虫工具爬取网页内容或网站标题;3)对内容进行分词;4)对分词结果做词频分析;5)对样本数据进行分类,提取不同类型的网站的特征;6)根据这些特征和提取的网站信息对网站进行聚类分析;7)提取新的特征;8)循环3)至7)。改进的学习算法也有很多,比如一种自学习的轻量学习算法,它引入了访问关系的概念,从已有的恶意网页集合出发,自动发现可信度低的用户和对应的访问关系。结合可信度低的用户访问恶意网址的可能性较高的特点,重点追踪这类用户的访问习惯,提高恶意网页的检测效果,相比于简单的机器学习方法,大幅降低平均检测时间,提升处理效率。

上述网站分类方法分为传统的机器学习方法和改进的机器学习方法。传统的机器学习方法面临着网页的总量呈几何级增长的问题,改进的机器学习方法通过构建用户与被访问网站的访问关系能够有效地提高检测效率。然而,这种轻量级的学习方法也带来了一个新的局限,它必须依靠获取用户的访问关系来解决问题。首先必须获取用户的访问记录日志,因此,它只能局限在一个局域网来区分网站是否恶意,并且需要调取网站的访问记录日志。对于局域网的用户,他们的行为习惯往往有很大的共性,也带来了访问视野的局限性。其次,由于这种方法依靠用户的行为进行分析,仅能区分网站是否恶意,要区分该网站属于何种恶意类型,也很难做到。更难以对一般网站进行分类。

在传统的机器学习算法的基础上,构建新型的网站分类引擎,以解决网站分类的效率问题,又尽量不带来新的局限,这样才能更好地服务于互联网安全。

相关术语:

分类器:在机器学习领域,分类的目标是指将具有相似特征的对象聚集。而一个线性分类器则透过特征的线性组合来做出分类决定,以达到此种目的。对象的特征通常被描述为特征值,在向量中则描述为特征向量。

朴素贝叶斯分类器:在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强(朴素)独立下运用贝叶斯定理为基础的简单概率分类器。

训练集:在机器学习中,一般将样本分成独立的三部分,训练集、验证集和测试集。其中,训练集用于建立模型。

图聚类:图聚类是指把图中相对连接紧密的结点及其相关的边分组形成一个可以用一个抽象结点表示的子图。子图内各结点具有较高的相似性,而子图之间各结点的相似性较低。图聚类有很多不同的方式,比较具代表性的有:M arkov聚类、谱聚类和基于密度的聚类。



技术实现要素:

本发明所要解决的技术问题是提供一种基于网络关系图的网站分类方法,以传统的学习分类算法为依托,通过提取网站页面的外站链接,构建带权重的网络关系图。各计算单元通过相互之间并不复杂的数据交互,在不影响分类效果的前提下,有效地提升网站分类的计算性能。

为解决上述技术问题,本发明采用的技术方案是:

一种基于网络关系图的网站分类方法,包括以下步骤:

步骤1:以“安全联盟”的恶意数据作为样本数据源,获取已有的数据分类和URL数据;

步骤2:通过抽取样本数据的外站链接和分词器处理,形成站点映射表和词频分析表;利用站点指纹特征提取器提取样本指纹特征,构建特征表,通过抽取各指纹特征集形成类型表;

步骤3:由各站点和其连接权重构成一个无向权重图,各站点作为网络图的节点,初始权重由相互之间的页面链接的紧密程度来确定;

步骤4:众多的站点和权重构成一个网络关系图,通过图聚类算法把一个大图分成若干个子图;即将各子图中的节点数统计出来,在分发队列里存储子图ID和其对应的节点数,根据子图的大小平均地把各子图分发到不同的服务器上进行计算;

步骤5:各任务单元在各自的服务器上通过站点指纹特征提取器和分类器来抽取指纹特征并分类。

进一步的,所述步骤5具体为:基于样本特征得到新的站点数据和指纹特征,划分训练集,每个子训练集通过分类器得到分类结果,把这些数据存储到相应的表中。

进一步的,还包括存储各站点的特征词汇、频率和分类列表。

进一步的,还包括根据分类结果中的特征值和权重系数,更新整个关系图的连接权重;对于新增的外站链接站点和其它来源的站点,在各任务处理单元处理时,添加到数据预处理队列中进行处理。

进一步的,还包括重复前述步骤步骤1至步骤5,各数据分类结果构成一套在每次迭代之后都不断更新的网络关系图。

进一步的,还包括在分类结果的基础上,结合白名单数据表和传统大站点的类型表对分类结果进一步处理,避免特殊因素影响分类结果。

与现有技术相比,本发明的有益效果是:

本发明显著地提高网站分类的检测速度,区分具体类型。对于不断新增的站点,并不是作为一个单独的个体进入训练集,而是依据其与现有的连接关系来确定处理单元,有效地减少了计算复杂度以及训练的迭代次数,节省了计算资源。

区域分层检测有效地分割检测的范围,实现局部同时计算,进而提升检测性能。同时,对于分割的部分,又通过分类结果更新网络图的边权重,重组网络图再次进行图聚类,检测效果相比于传统的检测方法不会有明显的减弱。

本发明方法既可应用于一般网站的行业分类处理,也可检测恶意站点,区分站点的恶意类型。相比于传统的分类引擎,只增加了图聚类这一环节,基于传统的分类引擎作优化,改动不大,却可达到更好的效果。

在基本不影响分类准确性和检测精细度的情况下,还能有效提升检测性能,是一种比较有实用价值的分类引擎。

附图说明

图1是本发明一种基于网络关系图的网站分类方法各模块示意图。

具体实施方式

下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明分类方法分为三大部分:数据收集及逻辑处理、数据表维护、特征提取及分类。本发明的核心在于充分利用站点网络关系图在分类过程中的重要作用。本发明方法处理流程具体为:

1、训练数据的收集及数据预处理

以“安全联盟”的恶意数据作为样本数据源,获取已有的数据分类和URL数据。该方法不仅要能处理系统内的站点,如已有的样本数据源和这些站点页面上爬取到的新站点,还需要处理系统外的随时可能从其它来源获取到的需要分类的站点。

2、数据抽取及分词处理

通过抽取样本数据的外站链接和分词器处理,形成站点映射表和词频分析表;利用站点指纹特征提取器提取样本指纹特征,构建特征表;通过抽取各指纹特征集形成类型表(恶意类型或行业类型等)。特别的,需要有效地维护这几张表,形成一整套数据集。各站点指向一个或多个(原则上不超过三个)类型。

3、网络关系图构建及处理

由各站点和其连接权重构成一个无向权重图。各站点作为网络图的节点,初始权重由相互之间的页面链接的紧密程度来确定。两个对象之间的相异度是这两个对象差异程度的数值化度量,对象越相似,它们的相异度就越低。众多的站点和权重构成一个网络关系图,通过图聚类算法计算,把一个大图分成若干个子图。各子图中的节点数可以统计出来,在分发队列里存储子图ID和其对应的节点数,根据子图的大小尽量平均的把各子图分发到不同的服务器(任务处理单元)中进行计算。各任务处理单元可以相对独立地处理各自的任务。

4、特征提取及分类

各任务处理单元在各自的服务器上通过站点指纹特征提取器和分类器来抽取指纹特征并分类。基于样本特征得到新的站点数据和指纹特征,划分训练集,每个子训练集通过分类器得到分类结果,把这些数据存储到相应的表中。同时,存储各站点的特征词汇,频率及分类列表等。处理好各单元的任务之后,根据分类结果表中的特征值和权重系数,更新整个关系图的连接权重。对于新增的外站链接站点和其它来源的站点,在各任务处理单元处理时,添加到数据预处理队列中处理。各任务处理单元完成任务时,形成一套新的网络图。

5、迭代计算及结果集成

重复步骤1到步骤4的整个过程,各数据结果表构成一套在每次迭代之后都不断更新的网络关系图,该关系图的节点之间的权重不仅与相互之间的页面连接关系有关,还与各类型的特征指纹相关,并随着迭代次数的增多,特征指纹的影响系数越大,分类的结果也就越准确。最后,对分类结果进行处理,结合白名单数据表和传统大站点的类型表等(均可扩展)对分类结果进一步处理,避免一些特殊因素影响分类结果。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1