【技术实现步骤摘要】
基于SOM与K-means融合算法的网络流量分类方法
本专利技术涉及网络流量分析及网络安全等领域,具体涉及一种基于SOM与K-means融合算法的网络流量分类方法。
技术介绍
随着互联网的迅猛发展,大数据时代的到来,越来越多的新型网络应用逐渐兴起,网络规模不断扩大,网络组成愈发复杂,对于网络的管理和分析需求增加。网络流量分类技术作为网络可控性的基础技术之一,可以帮助网络运营商提供更好的服务质量,对网络进行有效地监管。对网络流量进行分析,可以识别并过滤掉网络病毒,检测出垃圾邮件和非法入侵,提高了网络的安全性能。因此网络流量分类技术对于提高网络的管理效率,保障网络环境的绿色和安全有着至关重要的作用。常用的流量分类技术主要有以下三类:①基于端口号的流量分类方法:端口号与所需应用程序之间的对应关系由IANA(互联网数字分配机构)定义,这种方法存在着严重的局限性,例如服务器端口可以动态分配,具有不同QoS级别服务可以使用相同的端口号等,这些原因导致基于端口号的流量分类方法不再适用当前网络;②基于有效载荷的流量分类方法:这种方法需要精确了解应用层数据以及其数据包的格式,只能用于非加密流量,而当前网络的应用程序有效负载的加密性好,这种方法的局限性较大;③基于流量统计特征的分类方法:通过流量的特征来建立机器学习的模型,然后再用数据集训练并完善模型,通过模型来预测未知流量的种类,由于其适用范围广泛,该方法被广泛地研究和使用。目前针对流量分类的机器学习模型主要是基于监督学习算法,如基于K近邻、支持向量机、NaiveBay ...
【技术保护点】
1.一种基于SOM与K-means融合算法的网络流量分类方法,其特征在于,包括以下步骤:/n步骤1,采集网络流量数据集,确定训练集,并统计流量特征;/n步骤2,采用基于相关性的特征选择算法对统计后的流量特征进行筛选,然后从筛选后的训练集中计算特征-类相关矩阵和特征-特征相关矩阵,其次用最佳优先搜索方法搜索特征子集空间,计算特征子集的估计值,找出估计值最大的特征子集,作为最优特征子集;/n步骤3,融合算法将聚类分为两阶段进行,第一阶段:将最优特征子集对应的特征向量作为输入样本输入SOM网络,执行SOM算法不断更新各个神经元的权值,直至达到设定的迭代次数,结束算法运行,输出聚类结果,计算出聚类后的簇中心和簇的数目;第二阶段:将第一阶段聚类后的簇中心和簇的数目分别作为K-means算法的初始聚类中心和初始K值,执行K-means算法直至算法收敛,输出最终的聚类结果;/n步骤311,设置初始学习率η
【技术特征摘要】
1.一种基于SOM与K-means融合算法的网络流量分类方法,其特征在于,包括以下步骤:
步骤1,采集网络流量数据集,确定训练集,并统计流量特征;
步骤2,采用基于相关性的特征选择算法对统计后的流量特征进行筛选,然后从筛选后的训练集中计算特征-类相关矩阵和特征-特征相关矩阵,其次用最佳优先搜索方法搜索特征子集空间,计算特征子集的估计值,找出估计值最大的特征子集,作为最优特征子集;
步骤3,融合算法将聚类分为两阶段进行,第一阶段:将最优特征子集对应的特征向量作为输入样本输入SOM网络,执行SOM算法不断更新各个神经元的权值,直至达到设定的迭代次数,结束算法运行,输出聚类结果,计算出聚类后的簇中心和簇的数目;第二阶段:将第一阶段聚类后的簇中心和簇的数目分别作为K-means算法的初始聚类中心和初始K值,执行K-means算法直至算法收敛,输出最终的聚类结果;
步骤311,设置初始学习率η0,竞争层的神经元个数为m,迭代次数设为T;
输入向量为X(n)=(x1(n),x2(n),L,xn(n))
权值向量为Wi(t)=(wi1(t),wi2(t),L,win(t)),i=1,2,L,m
步骤312,取区间[0,1]内的随机值对竞争层各个神经元的权值向量Wi进行初始化,并对当前输入向量X和初始权值向量Wi(0)全部进行归一化处理:
其中,表示归一化的当前输入向量,表示归一化的第i个神经元初始权值向量;
步骤313,将与竞争层所有神经元对应的权值向量进行相似性对比,即将两者做点积,选出点积值最大的作为获胜神经元i*;
步骤314,定义优胜邻域一般初始优胜邻域N(t0)较大,训练过程中会随着迭代次数的增加而不断收缩,对优胜邻域内的所有神经元调整权值向量,权值更新过程如下所示:
式中,Wi(t)为第i个神经元在t时刻的权值,η(t)表示t时刻的学习率,学习率会随着迭代次数增加而衰减,d表示拓扑距离,e-d表明离获胜神经元越远,权值更新比例越小;
步骤315,更新学习率η(t)和优胜邻域N(t),如下所示,并将更新后的权值向量重新归一化处理;
步骤316,当学习率η<ηmin或达到指定迭代次数时,结束训练;否则转至步骤312不断重复此流程,直至满足结束判定条件;
步骤321,选取阶段一训练后的聚类中心作为初始聚类中心,选取簇数作为初始K值;
步骤322,使用阶段一归一化处理后的数据集作为输入样本;
步骤323,遍历所有数据,计算数据点到聚类中心的距离,并将其划分到最近的中心点中,形成K个簇;
步骤324,使用误差平方和SSE作为聚类的目标函数:
其中,k表示簇类数目,cj表示第j个聚类中心,dist表示的是欧几里得距离,簇的最小...
【专利技术属性】
技术研发人员:赵莎莎,肖毅,张登银,宁越强,王飞,李速,
申请(专利权)人:南京邮电大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。