熊菊霞,吴尽昭
(1.中国科学院成都计算机应用研究所,四川 成都 610041;2.中国科学院大学,北京 100049;3.广西民族大学广西混杂计算与集成电路设计分析重点实验室,广西 南宁 530006)
在异构复杂信息网络中,网络基元结构具有差异性,通常包含大量的敏感数据流,从数据流中提取有用特征是十分重要的工作[1]。但是,由于异构网络中不同结构的网络数据存在较强的动态变化,如何对异构复杂信息网络敏感数据流进行有效的动态挖掘,成为现在数据挖掘领域中重要的问题[2]。
专家学者们提出一些关于网络敏感数据流的挖掘方法。茹蓓等人[3]提出一种减少候选项集的数据流挖掘算法,通过数据扫描窗口建立全局树,基于全局树生成数据候选模式,从候选模式中选取出高效用的挖掘模式,完成数据挖掘。刘华成等人[4]提出一种动态调度的延迟敏感流网络挖掘算法,采用能量最小化组合方程来节约挖掘时间,采用分解定界算法来提升分类器处理速度。赵小强等人[5]提出一种基于改进模糊支持向量机FSVM(Fuzzy Support Vector Machine)的数据挖掘分类算法,预选出有效的候选支持向量,并对其进行增强处理,在此基础上设计隶属度函数完成挖掘。刘洋等人[6]对大数据挖掘算法进行分析,根据模型向量的改变量优化数据迭代过程,在不同阶段选择不同的迭代和数据处理方式,以提高挖掘性能。
国外众多学者也对此进行了研究,并取得了较多突出的成果,Malik等人[7]指出,随着数据规模的不断扩大,利用现有的方法进行数据挖掘时,内存往往容易成为瓶颈问题,因此很多科研人员从多个角度对数据挖掘方法进行了改进。比如,美国学者Freitas等人[8]针对大规模的数据进行分析,先对原始数据集进行简单排序,其次分析网络内存的实现机制,在时间局部性方面进行重点分析,以满足大规模数据挖掘需求。Belorkar等人[9]利用敏感网络对异构基因表达数据进行了分析,主要研究数据的异质性,通过敏感网络抑制了单区域数据集的选取功能,结合异质性特征挖掘得到表达数据。但是,在异构复杂信息网络中,相关数据流挖掘方法无法在复杂网络下找到准确的挖掘特征,难以适应复杂信息网络敏感数据流特征的高动态变化,降低了挖掘精度。
针对上述问题,本文提出基于最大类间散度的网络敏感数据流动态挖掘方法。实验结果表明,该方法在复杂信息网络敏感数据流挖掘方面具有较高的实用性。
由于异构复杂信息网络承载着不同的协议和网络信道,网络基元结构之间差异性较大,导致提取网络中的敏感数据流特征困难。由此,以异构复杂信息网络中的敏感数据差异最大化间隔作为分类基础,将差异化网络基元结构进行区别划分,得到网络敏感数据流特征的最大类间散度,为全面高精度动态挖掘敏感数据提供基础。
假设异构复杂信息网络数据库中的待挖掘矩阵为X={x1,x2,…,xi},i代表网络数据库中数据的序数,获取第i时刻异构复杂网络数据库中敏感数据矩阵xi={xi1,xi2,…,xim},对应的网络数据流类型用向量yi表示,利用式(1)给出异构复杂信息网络敏感数据流整体矩阵:
Y=f(x1,x2,…,xn)=(y1,y2,…,yn)
(1)
向量yi是网络数据流类型,对提取出的网络敏感数据流特征降维处理。将敏感数据差异最大化间隔作为分类目标,找出1组最佳分类向量,对其进行映射变换,使变换后得到的网络敏感数据流特征具有最大类间散度,并获取最大类间散度特征值[10]。过程如下所示:
在上述给出的异构复杂信息网络数据库矩阵X={x1,x2,…,xn}中,为维持复杂网络内原始数据的分布结构形状,利用最大间隔准则约束找出一个线性映射:
(Sb-Sw)X=λiwi
(2)
得到最佳识别向量为:
(3)
其中,Sb和Sw分别代表网络敏感数据流特征降维后,特征空间中的类间散度和类内散度,作为差异化网络基元结构的划分基础。λi表示线性映射系数,T为转置符号,wi表示最大间隔向量[11,12]。将其投影变换到低维特征空间Y中,使其具有最大类间散度:
Y=WTX
(4)
投影变换处理后,得到异构复杂信息网络的敏感数据向量:
(5)
在2.1节获取了异构复杂信息网络的敏感数据最大类间散度后,对其进行遗传迭代,确定最优散度迭代函数,依据该函数动态挖掘敏感数据特征[13,14],并对挖掘得到的敏感数据特征进行筛选,得出动态可挖掘特征,克服传统方法不容易形成可挖掘特征,进而需要多次挖掘的不足,为数据的动态挖掘奠定基础。
传统的遗传算法并没有考虑个体或者组织的演变特征,只能够通过编码表现个体或者组织的一一对应关系,模糊遗传算法能够打破这一规则,在[0,1]中为个体或者组织取值。模糊遗传算法的这一特性使得其能够很好地解决迭代中的随机和非线性问题,解决更多的复杂问题。因此,本文使用模糊遗传算法进行网络敏感数据最大类间散度迭代,量化异构网络基元结构之间的差异性。lnfo(B)和lnfoA(B)分别表示不同的异构网络基元结构,Gain(A)表示2者之间的差异,如下:
(6)
(7)
其中,B是异构网络基本元素构成的向量,A是异构网络差异值向量,v是B中元素个数。Wopt是异构复杂信息网络的敏感数据向量。Pi是概率值。
Gain(A)=lnfo(B)-lnfoA(B)
(8)
得到:
Pri(t)=Gain(A)-Pi*hi(t)+nPi(t)
(9)
其中,hi(t)代表Pi在异构复杂信息网络敏感数据的变异参数,nPi(t)代表数据流特征响应值,由此可以求出异构复杂信息网络敏感数据流特征响应函数:
Sri(t)=S(t)×hi(t)+nsi(t)
(10)
其中,S(t)代表异构复杂网络数据库的信道响函数,挖掘得到敏感数据特征为:
ri(t)=Sri(t)×Pri(-t)=
S(t)×P(-t)*hi(t)+nli(t)
(11)
以式(11)为基础,对敏感数据挖掘特征形成概率进行计算,公式如下:
(12)
其中,aij是特征系数,βj是敏感特征系数,bij是特征数据向量,Pj(t)是概率值。
得到优选的敏感数据动态可挖掘特征为:
R(Xi)=bij(Pj(t))X
(13)
其中,X是数据库中的待挖掘矩阵。
以上述得到的敏感数据动态可挖掘特征为基础,对可挖掘特征进行半监督聚类分析,进而完成网络敏感数据流挖掘。
聚类分析是数据挖掘中的重要步骤,聚类是按照相似性原理,把1组个体划分为若干类别的过程,聚类的目的是使同一类别的个体之间距离最小化,不同类别个体之间的距离最大化,从而提高数据挖掘精度。采用半监督聚类方法可以有效地改善初始聚类中心敏感、聚类质量不高的问题[15,16]。半监督聚类方法是结合分类和K-means算法思想的一种新的聚类方法,是利用半监督学习方法对聚类过程中类中心选取的过程。
假设主存中的数据特征点q是Q={d1,d2,…,dn,labels}中的元素,Q是一个数据特征矩阵,labels为可挖掘数据标记的向量。利用labels初始化聚类中心Z,表示为:
(14)
其中,I为可挖掘数标记个数。
聚类过程中,若缺少某类标记,则由聚类中心自动产生,不断重复上述初始化过程,直到出现重复聚类为止[17,18]。
对可挖掘特征点进行聚类分配,将每一个可挖掘特征点di、labels分配至聚类L中,表示为:
L=argmin |di-Z|
(15)
在式(15)基础上,重新计算初始化聚类中心Z:
(16)
其中,di是挖掘特征点向量。
由此则可以完成对可挖掘特征的聚类分析,挖掘得到数据隐藏信息模式,并对其进行评价,若是合理,则进行知识表示,将上述合理的信息模式进行展示,从而实现异构复杂信息网络敏感数据的动态挖掘[19,20]。
具体数据挖掘流程如图1所示。
Figure 1 Flow chart for dynamic mining of sensitive data in heterogeneous complex information networks图1 异构复杂信息网络敏感数据动态挖掘流程图
为了验证本文所提的基于模糊遗传的网络敏感数据流动态挖掘方法的综合性能,实验采用的平台为IBM的工控异构网络机,主频为2.3 GHz CPU,内存为24 GB。
实验数据来源于亚马逊自动化工作流系统AWS(Automated Workflow System)数据库,网址为https://aws.amazon.com/cn/datasets/。在实验中随机采集500个真实复杂信息网络数据集。采集器如图2所示。
Figure 2 Data acquisition unit图2 数据采集器
实验数据采集过程如图3所示。
Figure 3 Flow chart of experimental data acquisition图3 实验数据采集流程图
在上述实验环境和数据设置条件下,选取以下指标对本文方法进行验证:
(1)可挖掘特征形成概率:数据可挖掘特征的获取是实现数据挖掘的关键步骤,以式(12)的计算步骤为依据,对本文方法与文献[7,8]方法的可挖掘特征形成概率进行计算和对比。
(2)挖掘耗时:对本文方法与文献[7,8]方法的挖掘耗时进行对比,验证本文方法的时效性。
(3)labels标记质量:在获取数据的可挖掘特征后,本文方法首先对可挖掘特征进行了聚类分析,以此为基础完成数据挖掘,提高挖掘精度。聚类分析中,labels标记质量的好坏会直接影响数据聚类质量,进而影响挖掘精度。
(4)挖掘精度:精度是验证方法性能的重要指标,本实验选取这一指标进行分析。
(5)敏感数据挖掘内存占用率:对比不同方法的挖掘内存占用率,进一步体现本文方法优势。
对本文方法与文献[7,8]方法的可挖掘特征形成概率进行计算,结果如表1所示。
Table 1 Comparison of mineable feature formation probability表1 可挖掘特征形成概率对比
分析表1可以看出,本文采用最大类间散度方法,将敏感数据的差异最大化间隔作为分类基础进行分析,并在遗传迭代状态确定最优散度迭代函数,完成可挖掘特征优选,由此得到的可挖掘特征形成概率整体高于90%,最高可达98%,可顺利形成可挖掘特征。而文献[7,8]方法的可挖掘特征形成概率在80%以下,远低于本文方法的,无法形成数据的可挖掘特征。
鉴于表1分析的结果,可知本文方法能够顺利形成数据的可挖掘特征,进而能够降低数据挖掘次数,有利于节约数据挖掘时间。为进一步验证这一结果,对本文方法与文献[7,8]方法进行对比,结果如图4所示。分析图4可以看出,本文方法的挖掘耗时明显低于文献[7,8]方法的,以后可进一步验证本文采用最大类间散度方法获取数据的可挖掘特征的有效性,表明本文方法具有一定的可行性。
Figure 4 Time-consuming comparison of different mining methods图4 不同方法挖掘耗时对比
对本文方法的labels标记质量的分析结果如图5所示。根据图5可知,在不同的labels标记处,本文估计值与实际值之间的差异均较小,不超过6.0,且随着标记点的增加,估计值与实际值之间的差异呈现下降趋势,表明本文方法具有较好的聚类效果。
Figure 5 Difference between estimated and true values图5 估计值和真实值之间的差异
为充分验证本文方法的优势,选取挖掘精度和敏感数据挖掘内存占用率为指标进行对比分析,结果如表2和图6所示。
根据表2可知,本文方法的数据挖掘精度在90%左右,文献[7]方法的数据挖掘精度最高为69%,文献[8]方法的最高值为76%,表明本文方法能够准确地完成异构复杂信息网络敏感数据流动态挖掘,同时也进一步验证了可挖掘特征的聚类质量较高。
Table 2 Comparison of mining accuracy of different methods表2 不同方法挖掘精度对比
图6为不同方法的敏感数据挖掘内存占用率对比图。从图6中的情况来看,本文方法所占用的内存容量较少,而其他2种方法所占用的内容容量较多,主要是因为本文能够顺利获取可挖掘数据特征,避免了多次数据挖掘,从而降低了内存占用率。这表明在对敏感数据流进行挖掘的性能上,本文方法具有更大的优势。
Figure 6 Comparison of memory usage of different methods图6 不同方法内存占用率对比
复杂信息网络中存在大量的敏感数据流,对其进行有效挖掘,能够促使网络更加高效地运行。针对现有方法存在数据挖掘精度低、挖掘时间长、占用内存大等问题,本文提出了一种新的网络敏感数据流动态挖掘方法。采用最大类间散度确定最优散度迭代函数,对迭代函数最优值进行计算,获取可挖掘的动态特征。以此为依据,对可挖掘特征进行聚类分析,进而实现数据挖掘。
将本文方法与文献[7,8]方法进行对比,结果表明:
(1)数据的可挖掘特征获取概率较高,进而降低了数据挖掘次数,节约了数据挖掘时间,并降低了内存占用率;
(2)聚类分析中,labels标记估计值与实际值之间的差异较小,说明对可挖掘特征的聚类质量良好,进而提高了数据挖掘精度。
综上可知,本文所提方法的数据挖掘性能较好,为数据的深入研究奠定了基础,具有一定的参考价值。