更全的杂志信息网

电力通信大数据并行化聚类算法研究*

更新时间:2016-07-05

0 引言

随着电力通信网络以功能为中心持续性发展,产生了大量分专业、分功能和分管理域的运维管理系统,进而导致大量电力数据孤岛的产生。如何利用分布式系统更好地处理这些数据量巨大且类型复杂的电力通信运维数据已成为研究的热点问题。聚类分析作为数据处理的一个有效手段,支持对大量无序分散数据进行整合分类从而进行更深层次的关联性分析或者数据挖掘,在电力通信网络中得到越来越广泛的应用。同时,分布式系统中并行化处理机制因其优秀的灵活性和高效性逐渐成为数据挖掘的一个重要研究方向。

国内外学者也越来越对这方面加大关注,文献[1]提出了一种基于DBSACN算法的并行优化的聚类算法。文献[2]中通过计算距离选择最中心的k个数据点作为初始聚类中心,然后用k-medoids算法进行迭代聚类,提高了聚类效果,但不适合处理大规模数据;文献[3]提出了一种蚁群 k-medoids融合聚类算法,该算法不需要人为确定类簇数目和初始聚类中心,提高了聚类效果,但也仅只适用于小型数据集;文献[4]采用基于粒计算的聚类算法,该算法在初始聚类中心的选取过程中的计算量较大,且在处理大规模数据时存在时延问题;文献[5]提出了将局部搜索过程嵌入到迭代局部搜索过程中的方法,显著减少了计算时间。文献[6]在Hadoop平台上实现了传统k-medoids聚类算法的并行化处理,减少了聚类时间,但在初始聚类中心的选取机制上没有进行改进,没有提高聚类效果;文献[7]采用基于核的自适应聚类算法,克服了k-medoids的初值敏感问题,但是没有降低算法的时间复杂度。

综上所述,k-medoids聚类算法存在初始值敏感、运行速度慢、时间复杂度较高等问题,需要对k-medoids算法中初始点选取以及并行化方式进行算法优化设计。

1 k-medoids聚类初始点选取改进机制

k-medoids算法是一种基于划分的聚类算法,具有简单、收敛速度快以及对噪声点不敏感等优点,因此在模式识别、数据挖掘等领域都得到了广泛的应用。k-medoids算法初始中心点的选取十分重要,如果初始中心点选择的是离群点时,就会导致由离群点算出的质心会偏离整个簇,造成数据分析不正确;如果选择的初始中心点离得太近,就会显著增加计算的时间消耗。因此本文算法首先对初始中心点的选取进行优化。基于密度的聚类可以很好地分离簇和环境噪声,所以本文采用基于密度的聚类思想,尽量减少噪声数据对选取初始点的影响。

由表2和图1可知,各种菌产蛋白酶活力差异显著(P<0.05),其中芽孢杆菌Y1,Y2,Y3产蛋白酶活力最佳,其次是乳酸菌R1和R2,Z1产蛋白酶活力最差。

定义1:点密度是对于数据集U中的数据集的样本点x,以x为球心,某一正数r为半径的球形域中所包含样本点的个数,记作Dens(x)。其中:

式中的 Dist(x,p)为球心x与数据集中某样本点p的欧式距离;r设定成r=α×a,α为事先给定的常数,a为数据集U中样本点两两之间距离的均值,计算公式如下:

定义2:均值点密度是数据集U中每个样本点的点密度的平均值,记作AvgDens。其中:

定义3:类簇密度是数据集U被划分出的类簇中所包含的样本点个数占总样本点n的比值,记作CDens(ci)。其中:

本文算法中,首先对每个数据点并行计算点密度,并将点密度作为该数据点的一个属性。选取初始聚类中心的具体步骤如下:

(2)公有数据集。分别为200数量级的Northix、1 000数量级的DSA、5 000数量级的SSC和10 000数量级的GPSS。

(1)计算数据集中m个数据点之间的距离。

在点密度的计算中,由于一个数据点的点密度对其他数据点的点密度没有影响,所以该计算过程是可以并行化的。使用MultithreadedMapper在一个JVM进程里以多线程的方式同时运行多个Mapper,每个线程实例化一个Mapper对象,各个线程并发执行。主进程把数据点分派给若干个不同的计算节点进行处理,计算节点将数据平均分成k份,且有k个线程,每个线程中的数据点都与数据集中所有点进行距离计算,进而计算出点密度,最后通过Reduce函数将计算结果汇总并输出。并行处理使得点密度计算所用时间大大减少,提高了算法的执行效率。

本文算法在实现聚类的过程中经历了两次并行化划分,分别是非中心点分配和中心点更新过程。这两次并行化过程是周而复始的,直到满足程序退出的条件才会终止循环。

(4)计算各个簇的类簇密度 CDens(ci),选择其中k个较大密度的簇,计算其中心点,即为初始聚类中心。

(3)合并所有具有公共核心点的簇。

类簇中心点的计算方法如下:假设有一个类簇ci包含 m 个数据点{x1,x2,…,xm},则其中心点 ni按如式(5)计算:

其中距离公式使用的是欧式距离:

经过上述步骤,可以优化初始聚类中心点的选取,使之后的聚类迭代运算更加有效,降低搜索范围,大大减少搜索指派的时间。

2 k-medoids聚类算法并行化设计策略

本文针对k-medoids算法具有初始点选取复杂、聚类迭代时间久、中心点选取消耗资源过多等缺点,使用Hadoop平台下的MapReduce编程框架对算法进行初始点的点密度计算选取并行化、非中心点分配并行化和中心点更新并行化等方面的改进。MapReduce分为Map(映射)和 Reduce(化简)两部分操作,使用 MapReduce实现算法并行化关键在于Map函数和Reduce函数的设计。其中Map函数将可并行执行的多个任务映射到多个计算节点,多个计算节点对各自被分派的任务并行进行处理,Reduce函数则是在各计算节点处理结束后,将计算结果返回给主进程进行汇总。

2.1 点密度计算并行化策略

(2)计算每个样本点的点密度Dens(xi)以及均值点密度AvgDens,将点密度大于AvgDens的点即核心点存入集合T中,并记录其簇中所包含的数据点。

2.2 非中心点分配及中心点更新并行化策略

非中心点分配阶段的主要工作是计算各数据点到每个中心点的距离,由于每个数据点跟各个中心点距离的计算互不影响,所以该计算过程也是可并行化的。此阶段的MapReduce化过程中,Map函数主要负责将数据集里除中心点外的每一个样本点分配给与其距离最近的聚类中心,Reduce函数则负责通过计算更新每一个簇的中心点,按照这个原则迭代下去一直到达到设定阈值。主进程利用Map函数把非中心点分配的任务分派给若干个计算节点,每个计算节点采用基于Round-Robin的并行化分配策略。首先把每一个数据点看作一个请求,轮询地分配给不同的线程,对非中心点和每一个中心点的距离进行计算,找出最小的距离,然后把该非中心点指派给最小距离所对应的中心点。

因为轮询调度算法是假设所有服务器中的处理性能都是相同,并不关心每台服务器当前的计算速度和响应速度。因此当用户发出请求时,如果服务间隔的时间变化较大的时候,那么Round-Robin调度算法是非常容易导致服务器之间的负载发生不平衡表现。而本文中所运用的每个数据点都是平等的,所以不会造成服务器分配任务不均的问题。因此基于Round-Robin的策略是可行的。

水利管理改革不断深化。省政府出台了《关于实行最严格水资源管理制度的实施意见》和《关于实行最严格水资源管理制度考核办法》,最严格水资源管理制度有力推进;依法治水能力显著提升,《陕西省水土保持条例》颁布实施;制定出台了《陕西省大型灌区高扬程抽水电费补贴资金管理暂行办法》,落实了电费补贴4 237万元和浇地费补贴7 000万元;抓紧陕西省水利发展有利机遇,采用股份制、合资、合作等模式,在项目融资、信息共享、市场运作等领域进行全方位协作,提升水利建设服务、融资能力。与此同时,严格落实中央“八项规定”,认真开展群众路线教育实践活动,自身建设能力显著增强。

3 仿真实验与结果分析

仿真实验分别使用本文算法、DBSCAN并行化算法[1]和k-medoids并行化算法[8]进行对比试验,证明各个算法的优劣性。为了证明本文算法的有效性,实验将分析不同算法的聚类时间、聚类准确度以及增加线程数之后的时间消耗。实验将在两种类型的数据集上进行测试:

(1)电力数据集。电力通信数据的属性有设备状态、设备资产、网络拓扑等,其数据量约为1 GB。

表示所有 Q(hkl) 的平均值.G是粉末样品的剪切模量,而且G可由超声波结果外推和理论计算得到.

基于此,当看见《中国画画刊》杂志讨论“学生和老师的艺术风格是否应该相似”的讨论话题时,我并不为那些和老师风格相似的学生感到惊慌。在我看来,似与不似,并不是问题的要害,要害的是能否“翻新”—翻出新的好。

安徽省传统农区宿州市埇桥区,过去农民习惯于分散种养,难以抵御自然风险和市场风险。2012年以来,埇桥区创建以“农业企业为龙头,家庭农场为基础,农民合作社为纽带”的现代农业产业化联合体,把单个的农业经营主体联结成利益共同体和产业化链条,形成具有综合竞争力的“农业航母”,在融合发展中取得“1+1+1>3”的聚变效应。

对于故障码“C10ACF0 转向系,未学习的端位主动/静态”,说明需要进行方向盘极限位置设定。具体的操作方法是:将方向盘向左右两侧方向分别转动到极限位置,并停顿数秒,当听到仪表台上发出“叮、叮、叮”三声的提示音,说明设定成功,然后删除故障码。这一操作适用于大众、奥迪全系车型绝大部分电控机械转向系统的“端位学习”。

3.1 电力数据集实验结果分析

实验首先设置6个线程对数据集进行处理,三种算法对电力数据进行聚类的结果见表1。其中k-medoids并行化算法[8]采用标签共现原则对初始点选取进行改进,但没有考虑线程的分配方式,因此其执行效率最差;DBSCAN算法考虑到了初始点的选取,并采用动态分配策略实现并行化,但在计算动态分配过程中增加了一定消耗,因此聚类准确度和执行效率都略有提升;本文所提出的算法,既考虑了初始点的合理选取,同时采用简单有效的并行化分配策略,以减少计算和过多资源占用,因此相对于k-medoids并行化算法和DBSCAN并行化算法执行效率大幅提升,准确度也有所提高。

然后增加线程处理器的数量至8个,得到下表的聚类结果,见表2。

由表2可得,使用8个线程时,本文算法比k-medoids并行化算法执行时间快了42.64%,比DBSCAN并行化算法快了24.70%。

表1 使用6个线程处理电力数据的运行结果

算法k-medoid并行化算法DBSCAN并行化算法本文算法执行时间/s 97.570 67.875 59.923准确率/%70.60 72.53 73.36聚类数量555

表2 使用8个线程处理电力数据的运行结果

算法k-medoid并行化算法DBSCAN并行化算法本文算法执行时间/s 87.612 66.738 50.256准确率/%70.60 72.53 73.36聚类数量555

各类算法增加线程后所用时间相比原算法减少的百分比如图1。

图1 各算法执行时间减少百分比

由图1可知,k-medoids并行化算法减少了10.20%,DBSCAN并行化算法减少了1.68%,本文算法减少了16.13%,说明本文算法在线程数增加时,可以更有效地减少运算时间,提高执行效率。

3.2 公有数据集实验结果分析

基于 Northix、DSA、SSC和 GPSS数据集使用 5个线程实现算法的聚类准确度比较见表3。

表3 各算法处理不同数据集的准确率

数据集Northix DSA SSC GPSS k-medoid并行化算法89.33%84.67%73.20%60.11%DBSCAN并行化算法90.06%86.10%74.51%60.35%本文算法92.67%88.39%79.56%65.42%

本文算法的聚类准确度均高于k-medoids并行化算法和DBSCAN并行化算法,并且在处理较大数量级的数据集时,本文算法准确度更占优势。不同数据集上各算法的执行时间如图2。

根据图2,随着数据量的增大,三种算法执行效率差异逐渐增大,本文算法性能明显优于k-medoids并行性算法和DBSCAN并行算法。接着对三个算法使用7个线程时的执行时间进行比较,如图3所示。

张仲平不得不停下来,急切地说:“我告诉你,左达就在楼上,刚才进去的那两个人一定是要债的。还有,我外甥徐艺是你的同学吧?他也在上面,打电话他不接,真不知道上面出什么事了。”

图2 5个线程算法时间比较

图3 7个线程算法时间比较

从图3中可以看出,使用7个线程在1 000、5 000、10 000数据级时,本文算法执行时间明显优于其他两个算法。

3.3 实验小结

仿真实验可知,在同一线程数时,本文算法比对比算法聚类准确率高,执行时间短;在线程数增加时,本文算法执行时间显著降低;随着数据量的增长,本文算法在保证更高准确度的基础上,执行时间优势逐渐凸显。

4 结论

本文针对电力通信数据的聚类处理问题,提出基于密度的聚类思想对k-medoids算法初始点的选取策略进行优化,并利用MapReduce编程框架实现了算法的并行化处理。通过仿真实验表明本文提出的优化算法可行有效,并具有较好的执行效率。在接下来的研究中可以考虑线程数小于聚类数时的优化分配策略,进一步提高算法性能。

LEC作为一种作业条件危险性评价方法,简单实用,通过LEC评价,可以量化确定城南污水厂工程建设过程中各类有害因素可能造成的潜藏祸患程度。其中,L、E、C分别代表3个自变量,D为因变量:

参考文献

[1]蔡永强,陈平华,李惠.基于云计算平台的并行 DBSCAN算法[J].广东工业大学学报,2016,33(1):51-56.

[2]PARK H S,JUN C H.A simple and fast algorithm for k-medoids clustering[J].Expert System with Applications,2009,36(2):3336-3341.

[3]赵烨,黄泽君.蚁群 K-medoids融合的聚类算法[J].电子测量与仪器学报,2012,26(9):800-804.

[4]马菁,谢娟英.基于粒计算的 k-medoids聚类算法[J].计算机应用,2012,32(7):1973-1977.

[5]吴景岚,朱文兴.基于k中心点的迭代局部搜索聚类算法[J].计算机研究与发展,2004,41(Z):246-252.

[6]Jiang Yaobin,Zhang Jiongmin.Parallel k-medoids clustering algorithm based on Hadoop[C].Proceedings of the IEEE International Conference on Software Engineering and Service Sciences,2014:649-651.

[7]孙胜,王元珍.基于核的自适应k-medoid聚类[J].计算机工程与设计,2009,30(3):674-677.

[8]马晓慧.一种改进的可并行的K-medoids聚类算法[J].智能计算机与应用,2015:874-876.

曾瑛,李星南,刘新展
《电子技术应用》 2018年第05期
《电子技术应用》2018年第05期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号