高速数据流的集成分类器算法.docx

上传人:b****1 文档编号:23172547 上传时间:2023-05-15 格式:DOCX 页数:7 大小:22.22KB
下载 相关 举报
高速数据流的集成分类器算法.docx_第1页
第1页 / 共7页
高速数据流的集成分类器算法.docx_第2页
第2页 / 共7页
高速数据流的集成分类器算法.docx_第3页
第3页 / 共7页
高速数据流的集成分类器算法.docx_第4页
第4页 / 共7页
高速数据流的集成分类器算法.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

高速数据流的集成分类器算法.docx

《高速数据流的集成分类器算法.docx》由会员分享,可在线阅读,更多相关《高速数据流的集成分类器算法.docx(7页珍藏版)》请在冰豆网上搜索。

高速数据流的集成分类器算法.docx

高速数据流的集成分类器算法

面向高速数据流的集成分类器算法

摘要:

数据流挖掘要求算法在占用少量内存空间的前提下快速地处理数据并且自适应概念漂移,据此提出一种面向高速数据流的集成分类器算法。

该算法将原始数据流沿着时间轴划分为若干数据块后,在各个数据块上计算所有类别的中心点和对应的子空间;此后将各个数据块上每个类别的中心点和对应的子空间集成作为分类模型,并利用统计理论的相关知识检测概念漂移,动态地调整模型。

实验结果表明,该方法能够在自适应数据流概念漂移的前提下对数据流进行快速的分类,并得到较好的分类效果。

关键词:

概念漂移;数据流;子空间;分类;集成ensembleclassificationalgorithmforhighspeeddatastream英文作者名linan1,2,guogong-de1,2*英文地址(1.schoolofmathematicsandcomputerscience,fujiannormaluniversity,fuzhoufujian350007,china;2.keylaboratoryofnetworksecurityandcryptography,fujiannormaluniversity,fuzhoufujian350007,china)abstract:

thealgorithmsforminingdatastreamshavetomakefastresponseandadapttotheconceptdriftatthepremiseoflightdemandsonmemoryresources.thispaperproposedanensembleclassificationalgorithmforhighspeeddatastream.afterdividingagivendatastreamintoseveraldatablocks,itcomputedthecentralpointandsubspaceforeveryclassoneachblockwhichwereintegratedastheclassificationmodel.meanwhile,itmadeuseofstatisticstodetectconceptdrift.theexperimentalresultsshowthattheproposedmethodnotonlyclassifiesthedatastreamfastandadapttotheconceptdriftwithhigherspeed,butalsohasabetterclassificationperformance.keywords:

conceptdrift;datastream;subspace;classification;integration0引言随着信息产业的发展,超市交易、电信等众多应用领域每天都产生大量的数据流,其中蕴含着丰富的有价值的知识有待挖掘,近年来已成为数据挖掘领域的一个研究热点。

由于数据流具有快速性、无限性和实时性的特点[1],使得传统的挖掘算法显得有些力不从心。

同时,数据流中隐含的概念或知识可能会随着时间的推移或环境的改变而发生变化,即1996年widmer和kubat[2]提出的概念漂移问题。

因此,数据流挖掘要求算法能在有限的计算时间和内存资源内完成挖掘任务,并且根据当前的概念自适应地改变模型[3]。

目前,处理数据流上概念漂移的方法有3种[4]:

实例选择、实例加权和集成学习。

hansen等[5]证明使用集成分类器方法比仅使用单个分类器方法具有更好的适应性和精确性。

wang等[6]提出了一个集成学习的通用框架用于挖掘概念漂移数据流。

street等[7]提出一个可以自适应数据流概念漂移的集成分类器算法(streamingensemblealgorithm,sea),展示了集成学习的有效性。

此后,许多学者深入研究了集成分类器的权值设计[8-10]以及集成策略[11-13]。

然而,上述已存在的数据流分类模型不仅构建模型耗时多,而且面临着同一个问题:

当数据流中只有少部分类别发生概念漂移时,仍必须抛弃现有的整个集成分类模型进行重建以适应新的概念,降低了分类效率。

针对以上问题,本文提出了一种新颖的面向高速数据流的集成分类算法(简称eca)。

1相关工作1.1eca基分类器构建最近邻分类是一种已经被众多学者广泛研究的有监督的机器学习方法。

经典的k-最近邻(k-nearestneighbor,knn)算法[14]由于简单但颇为有效被列为十大数据挖掘算法之一[15]。

然而,其面临分类速度较慢和k值难以确定的问题。

为了解决分类效率低的问题,近期有学者通过将同类别数据聚类生成若干关键数据以减少要搜索的近邻数,在不失分类精度的前提下提高了分类速度[16]。

受其启发,本文提出一种基于子空间中心点的分类算法作为eca的基分类器。

设训练数据集x由n个样本组成,即x={(x1,y1),(x2,y2),…,(xi,yi),…,(xn,yn)}。

其中xi表示由d个属性构成的第i个样本,即xi=〈xi1,xi2,…,xid〉;yi∈{1,2,…,k}表示xi的类别,k(k>1)表示训练集中包含的类别个数。

为了进一步减少要搜索的近邻数目以提高分类效率,将所有同类别的数据组成一个中心点,记为:

centerk={ck1,ck2,…,ckd}。

centerk=1num(k)∑yi=kxi

(1)其中num(k)表示第k类的样本数目。

显然,将所有同类别数据仅用一个中心数据来表示不仅提升了模型对噪声的鲁棒性,同时大大提高了分类效率。

但值得注意的是,将所有同类别数据仅用一个中心数据来表示分类时容易受到数据离散程度的影响,图1就是个例子。

在二维空间上空心的椭圆和矩形分别代表两类不同的样本,其中心点各自用实心的椭圆和矩形表示。

如果简单地利用各自的中心点来代表所有同类数据,根据测试样本在全空间上距离两类中心点的距离来进行分类(相当于用图中的虚线作为分类标准),显然不能正确地代表数据的分布情况,分类处在全空间类别边界上的点时精度受到影响。

因此,有必要对其进行进一步改进。

图片图1中心点分类例子数据空间中往往存在许多不相关的属性,在全空间上表现为同类别的点是“离散的”,只在某些低维的子空间上是“密集的”[17]。

为了减少数据离散程度对分类模型所造成的影响,我们将测试样本投影到每个类别所在的子空间上,即利用加权的欧氏距离来衡量测试样本与各个类别中心点的距离。

算法基于软子空间聚类[18]的普遍假设:

“维度权重大小与同类数据点投影到该维度上的分布离散程度成反比”的思想来建立每个类别所在的子空间,记为:

1.2基分类器算法空间复杂度分析设在大小为s、类别个数为k的数据块上构建基分类器,根据上述算法流程,其所需的存储空间为o(k),即存储k个中心点数据,通常ks并且k与s无关。

同时,求取中心和权重的过程时间复杂度与s的大小成线性关系,即算法时间复杂度为o(s)。

综上,相对于数据块大小s,该基分类器算法具有常数的空间复杂度和线性的时间复杂度。

因此,该算法适合作为数据流集成分类器的基分类器算法。

第3期李南等:

面向高速数据流的集成分类器算法计算机应用第32卷2eca的设计与分析本章先介绍eca分类模型的概念漂移检测机制,然后对算法进行具体描述。

算法使用滑动窗口模型,将数据流沿时间轴组织成固定大小s的数据块序列,每个数据块用d1,d2,…,dn表示。

2.1漂移检测本文采用假设检验中χ2拟合检验的原理来进行漂移检测。

其基本思想是如果相邻两个数据块内关于同一类别的数据的分类精度在一定的显著性水平下有显著改变,那么就有理由认为新数据块上的此类数据概念发生变化,需要重构该类别的分类模型。

χ2拟合检验的原理[20]是:

当总体的分布未知时,根据样本x1,x2,…,xn来检验关于总体分布的假设“h0:

总体x的分布函数是f(x)”。

设x的取值范围为a1,a2,…,az。

以fi(i=1,2,…,z)记录n个样本观测值x1,x2,…,xn落在ai的个数,pi(i=1,2,…,z)为根据h0所假设的x的分布函数来计算事件ai的概率。

那么若样本个数n充分大,则当h0为真时,统计量χ2=∑zi=1fi2npi-n近似地服从χ2(z-1)分布。

即当样本的观测值使χ2值有χ2≥χ2α(z-1),则在显著性水平α下拒绝h0;否则就接受h0。

eca使用上述的原理检测概念漂移,依次对当前数据块上每个类别的分类情况进行假设检验,设置z=2(分类正确与否两种情况),h0为前若干个概念平稳的数据块上该类别的平均分类情况,显著性水平α取0.05。

若在新数据块上χ2≥χ2α(z-1),则该类别分类精度发生显著性改变,从而说明发生了概念漂移;反之认为概念分布平稳。

2.2eca描述eca由为每个类别保存的在不同数据块上建立的多个中心点和对应的子空间组成集成模型。

同时,当使用数理统计的相关知识检测到数据流的少部分类别发生概念漂移时,无需像现有的集成分类算法[8-13]一样,耗时耗力地重构整个集成分类模型,降低算法的分类效率。

新算法只需将新数据块上建立的符合新概念的该类别的中心点和对应的子空间替换原有分类模型中的即可,符合数据流要求算法能快速处理数据并且自适应概念漂移的特点。

算法流程具体如下:

1)当新的数据块到来时,eca先利用现有的分类模型,计算新数据块中各待分类样本与每个类别的距离(距离采用在相应的子空间上待分类样本与为每一个类别保留的不超过num个在各个数据块上建立的中心点的平均距离作为待分类样本距离此类别的距离),选取距离最近的类别作为待分类样本的类别。

2)在新数据块上利用baset算法建立该数据块上各类样本的中心点和对应的子空间。

3)根据分类情况检查各类别是否发生概念漂移。

4)一旦检测出某个类别发生概念漂移,那么删除原有分类模型中所有为该类别保存的中心点和对应的子空间,保存新数据块上建立的该类别的中心点和对应的子空间。

如果没有发生概念漂移,先保存新数据块上建立的该类别的中心点和相应的子空间,再判断原有分类模型中为该类别保存的中心点和相应的子空间个数是否超过num,如果超过,则删除最早建立的那个数据块上构建的中心点和对应的子空间。

算法每个数据块上对应的处理流程如下:

算法eca。

输入集成分类器ecn-1,当前数据块dn,为各类别保存的中心点和相应的子空间容量num。

输出当前分类模型ecn。

程序前其中:

ec表示eca集成分类模型,ecn表示第n个数据块时的集成分类模型。

通过算法流程可看出:

eca中利用现有分类模型对当前数据块中的数据进行分类,显然只需要相对于数据块大小线性的时间复杂度,其余时间耗费在使用baset算法在新数据块上建立新的分类模型以对现有模型进行更新。

在大小为s、类别个数为k的数据块上,baset算法为每类计算其中心点及其对应的子空间需要相对于该类别样本数目线性的时间复杂度,因此整体的时间复杂度为o(ks),通常ks并且k是独立于s的常数。

因此,相对于数据块大小s,利用baset算法对分类模型进行更新具有线性的时间复杂度。

综上所述,eca具有相对于数据块大小s线性的时间复杂度,适合数据流分类模型快速处理的要求。

3实验分析与讨论为了评估eca的性能,我们在分别在真实数据集和实验数据集上对算法的精确度和分类效率进行实验。

实验环境如下:

2.6ghzcpu和2gbram;操作系统为windowsxp;开发环境为基于java语言的weka平台,编译运行环境为jdk1.5。

3.1使用的算法为了验证本文算法的有效性,对比算法使用经典的sea、目前比较流行的实例加权集成分类器(example-weightalgorithmforminingdatastreams,ewamds)算法[8]以及分类器动态集成的dwm(dynamicweightedmajority)算法[11]。

实验中各种算法的具体参数设置分别参照文献[7-8,11]中的实验参数,eca中为各类别保存最多不超过5个在各数据块上建立的中心点和对应的子空间个数,即num=5。

3.2数据集分别在以下两个数据集上进行实验以检验eca解决数据流分类问题的有效性。

1)移动超平面(hyperplane)[21]:

一个d维超平面上的样本x满足形式:

∑di=1aixi=a0。

在实验中,取d为100,并且随机产生3个不同的权重集合。

实验使用30000条数据,蕴含3个概念,2次漂移。

其中每个概念含有10000条样本,并包含5%的噪声样本。

2)20-newsgroups(http:

//mlg.ucd.ie/files/dataset):

一个常用的文本数据集,它是由20个不同新闻组的文档组成。

本文使用的数据集是20-newsgroups来自同一个新闻组的部分样本集合,一共分为6类:

med、baseball、autos、motor、space和politics。

实验中随机抽取了4498条样本,各类分布情况见表1所示,每个样本包含500个特征属性。

为了消除文档的长度差异带来的影响,数据事先进行了单位向量长度变换。

为了模拟一个多类别漂移的情况,以验证算法对真实复杂数据中出现新类问题的快速适应性以及对多类分类问题的处理能力,将数据集划分为两大块:

在第一大块数据中,只有med、baseball、autos和motor4类;在第二大块数据中,淘汰了motor类的数据,并添加了space和politics两个新的类别。

表格(有表名)表120-newsgroups中各类分布类别实例个数类别实例个数med1162motor600baseball1162space562autos450politics5623.3实验结果与分析3.3.1移动超平面数据集各种算法在移动超平面数据集上每个数据块上的精度对比结果如图2所示。

由于移动超平面样本个数较多,将数据块大小设置为500。

从图2可看出:

在第20和40个数据块时,由于数据出现概念漂移的情况,各种算法的分类精度骤然下降。

但是,随着漂移数据的增多,分类器逐渐适应了新的概念,分类精度也恢复到了原先的水平。

由于sea使用c4.5作为基分类器,在处理维度较高的数值型属性数据时分类精度会受到影响,因而分类效果最差。

同时,我们可以看出,在大部分情况下,eca分类精度优于dwm算法,和ewamds算法相当。

此外,各种算法在移动超平面数据集上的处理时间如图3所示。

从图3可看出:

由于基分类器构造方式简单,eca上在处理时间上对比其他3种算法具有相当的优势。

图片图2含5%噪声的移动超平面数据流上的分类精度比较图片图3含5%噪声的移动超平面数据流上的处理时间比较3.3.220-newsgroups数据集由于移动超平面是一个二分类问题,为了验证eca在真实复杂结构数据流中面对出现新类问题的快速适应性以及对多类分类问题的处理能力,在20-newsgroups数据集上进行了测试,此次测试将数据块大小设置为250。

各种算法在每个数据块上的精度对比如图4所示。

从图4可看出:

在第8个数据块时,由于新类别数据的出现旧类别数据的消失,原有的分类模型已经不适应新数据块的概念,因而各种算法的分类精度出现不同程度的下降。

由于dwm算法仅根据分类模型中各基分类器的累积错误动态地删除和新建基分类器,因而分类精度降低的幅度最小。

同时,在概念稳定以后,eca的分类精度高于其他3种算法。

此外,各种算法对20-newsgroups数据流中每类数据的分类正确率见表2所示。

从表2可看出:

对于6种类别的判断,eca都具有较高的分类精度。

各种算法在20-newsgroups数据流上的处理时间如图5所示。

虽然只有部分类别发生概念漂移,3种对比算法仍需重建整个分类模型,无需重建整个模型、基分类器构建简单的eca在处理时间上具有明显的优势。

同时ewamds算法需要为新数据块上的每个样本计算其相应的权重,故需要最长的处理时间。

4结语本文针对现有集成分类方法构建分类模型耗时多,在数据流仅部分类别发生概念漂移时仍需重建整个分类模型,分类效率低的缺点,提出一种新的线性时间复杂度的集成分类算法。

新算法在部分类别发生概念漂移时仅需重建相应部分的分类模型,从而提高分类效率。

在移动超平面和20-newsgroups数据流上的实验表明,与经典的sea、当前比较流行的ewamds算法和dwm算法相比,新算法能够在自适应概念漂移的情况下对数据流进行快速分类,并得到较好的分类效果。

下一步工作的重点是研究基分类器的建立方法,从而进一步提高分类性能。

参考文献:

[1]李燕,张玉红,胡学钢.基于c4.5和nb混合模型的数据流分类算法[j].计算机科学,2010,37(12):

138-142.[2]widmerg,kubatm.learninginthepresenceofconceptdriftandhiddencontexts[j].machinelearning,1996,23

(1):

69-101.[3]王黎明,周驰.自适应概念漂移的在线集成分类器[j].计算机工程,2011,37(5):

74-76.[4]tsymbala,pechenizkiym,cunninghamp,etal.dynamicintegrationofclassifiersforhandlingconceptdrift[j].informationfusion,2008,9

(1):

56-68.[5]hansenlk,salamonp.neutralnetworkensemble[j].ieeetransactionsonpatternanalysisandmachineintelligence,1990,12(10):

993-1001.[6]wangh,fanw,yup.etal.miningconceptdriftingdatastreamsusingensembleclassifiers[c]//kdd03:

proceedingsofthe9thacmsigkddinternationalconferenceonknowledgediscoveryanddatamining.newyork:

acmpress,2003:

226-235.[7]streetw,kimy.astreamingensemblealgorithm(sea)forlarge-scaleclassification[c]//kdd01:

proceedingsofthe7thacmsigkddinternationalconferenceonknowledgediscoveryanddatamining.newyork:

acmpress,2001:

77-382.[8]胡学刚,潘春香.基于实例加权方法的概念漂移问题研究[j].计算机工程与应用,2008,44(21):

188-190.[9]欧阳震诤,罗建书,胡东敏,等.一种不平衡数据流集成分类模型[j].电子学报,2010,38

(1):

184-189.[10]张健沛,杨显飞,杨静.面向高速数据流的偏倚抽样集合分类器[j].北京邮电大学学报,2010,33(4):

44-48.[11]jeremyzk,marcusam.dynamicweightedmajority:

anensemblemethodfordriftingconcepts[j].journalofmachineresearch,2007,8(12):

2755-2790.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1