一种应用于编程现场大数据的聚类方法及系统技术方案

技术编号:26172873 阅读:39 留言:0更新日期:2020-10-31 13:52
本发明专利技术公开了一种应用于编程现场大数据的聚类方法及系统,该方法包括:基于粒子群优化算法,求解对数据聚类时K均值聚类算法中的K值的最优解;在每次迭代过程中,基于模拟退火算法,以一定概率接受非极值最值的粒子,并继续基于粒子群优化算法对K值的最优解进行迭代求解;当达到预设迭代终止条件后停止迭代,并以当前解作为K值的最优解;基于求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类。本发明专利技术基于粒子群优化算法和模拟退火算法求取K值最优解,有效解决了K均值聚类算法中初始聚类点选取不恰当所导致的陷入局部最优的问题,可提高编程现场大数据的处理准确度和速度。

【技术实现步骤摘要】
一种应用于编程现场大数据的聚类方法及系统
本专利技术涉及大数据分析处理
,特别涉及一种应用于编程现场大数据的聚类方法及系统。
技术介绍
编程现场大数据是在软件生产的编程现场所产生的数据集合的总称,其在程序员编写代码过程中瞬时涌现,在程序员间交互,并随软件技术与开发环境不断演变,具有海量、瞬时、多样和可变等大数据典型特征。编程现场大数据对于正确理解、呈现、分析软件生产的微过程,改善软件生产方式,将人类从繁重的软件生产脑力劳动中解放出来,具有非常重要的意义。因此,如何利用编程现场大数据,构建新型智能化软件现场开发方法与环境,提升软件生产率与品质,成为软件产业重要科学问题。根据大数据的“4V”特征:数据体量巨大(Volume);数据种类繁多(Variety);流动速度快(Velocity);价值密度低(Value),得知,数据量呈指数増长的同时,隐藏在海量数据的有用信息却没有相应比例增长,反而获取有用信息的难度加大。目前,传统数据分析是指用适当的统计方法对收集来的大量第1手资料和第2手资料进行分析,把隐没在一大批看来杂乱无章的数据中的信息集中、萃取和提炼出来,找出所研究对象的内在规律,以求最大化地开发数据资料的功能,发挥数据的作用。大数据分析可以视为对种特殊数据的分析,因此很多传统的数据分析算法也可用于大数据分析,比如聚类分析。聚类算法大致分为基于划分的聚类、基于层次的聚类、基于网格的聚类、基于密度的聚类、基于模型的聚类这几种,但由于每一种算法都有缺陷,再加上实际问题的复杂性和数据的多样性,使得无论哪一种算法都只能解决某一类问题。Macqueen提出的k-Means算法(K均值聚类算法)是解决聚类问题的一种经典算法。它的主要优点是算法简单、高效。缺点是对不同的K值可能会导致不同的聚类结果。其次,该算法不能发现非凸面的簇,或大小差別很大的簇。而且对“噪声”和孤立点很敏感,因为少量“噪声”能对平均值产生极大的影响。
技术实现思路
本专利技术提供了一种应用于编程现场大数据的聚类方法及系统,以解决K均值聚类算法中初始聚类点选取不恰当所导致的陷入局部最优的技术问题。为解决上述技术问题,本专利技术提供了如下技术方案:一方面,本专利技术提供了一种应用于编程现场大数据的聚类方法,其包括:基于粒子群优化算法,迭代求解采用K均值聚类算法对待聚类的目标数据进行聚类时,所述K均值聚类算法中的K值的最优解;在每次迭代过程中,基于模拟退火算法,以预设概率接受非极值最值的粒子作为新的当前解,并继续基于粒子群优化算法对K值的最优解进行迭代求解;当达到预设迭代终止条件后停止迭代,并以当前解作为K值的最优解;基于求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类。进一步地,在每次迭代过程中所述粒子群优化算法采用下式更新粒子速度和位置:Vid(t)=ωVid(t-1)+C1ρ1(Pbestid-Xid(t-1))+C2ρ2(Pgd-Xid(t-1))Xid(t)=Xid(t-1)+Vid(t)其中,Vid(t)表示第t次迭代时粒子i速度矢量的第d维分量,C1、C2表示学习常数,ρ1、ρ2表示0~1之间的随机数,Pbestid表示粒子i到目前为止所出现的最佳位置,Pgd表示粒子群体到目前为止所出现的最佳位置,Xid(t)表示第t次迭代时粒子i位置矢量的第d维分量;ω表示惯性权重,其表达式如下:其中,ωmin表示ω的下限,ωmax表示ω的上限,fitmax表示粒子群体到目前为止所出现的最佳位置的适应度,fitid表示粒子i目前所在位置的适应度,timemax表示最大迭代次数,timeid表示当前为第几次迭代。进一步地,C1、C2的表达式如下:其中,e表示自然指数。进一步地,所述预设概率的表达式如下:其中,Pid表示所述预设概率,e表示自然指数,timemax表示最大迭代次数,timeid表示当前为第几次迭代。进一步地,基于求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类,包括:S1,基于求解出的K值的最优解确定初始聚类中心;S2,基于所述初始聚类中心,按照最近距离原则对目标数据进行划分聚类;S3,根据划分结果计算每个类簇内的所有数据对象的平均值作为该类簇新的聚类中心,如果存在某个类簇为空,则删除该类簇,并将K值减1;S4,基于更新后的聚类中心,按照最近距离原则对目标数据重新划分聚类;S5,迭代执行S3~S4,直至满足预设终止条件,得到目标数据的聚类结果。另一方面,本专利技术还提供了一种应用于编程现场大数据的聚类系统,其包括:K值最优解求解模块,用于基于粒子群优化算法,迭代求解采用K均值聚类算法对待聚类的目标数据进行聚类时,所述K均值聚类算法中的K值的最优解;其中,在每次迭代过程中,基于模拟退火算法,以预设概率接受非极值最值的粒子作为新的当前解,并继续基于粒子群优化算法对K值的最优解进行迭代求解;当达到预设迭代终止条件后停止迭代,并以当前解作为K值的最优解;数据聚类模块,用于基于所述K值最优解求解模块所求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类。进一步地,在每次迭代过程中所述K值最优解求解模块采用下式更新粒子速度和位置:Vid(t)=ωVid(t-1)+C1ρ1(Pbestid-Xid(t-1))+C2ρ2(Pgd-Xid(t-1))Xid(t)=Xid(t-1)+Vid(t)其中,Vid(t)表示第t次迭代时粒子i速度矢量的第d维分量,C1、C2表示学习常数,ρ1、ρ2表示0~1之间的随机数,Pbestid表示粒子i到目前为止所出现的最佳位置,Pgd表示粒子群体到目前为止所出现的最佳位置,Xid(t)表示第t次迭代时粒子i位置矢量的第d维分量;ω表示惯性权重,其表达式如下:其中,ωmin表示ω的下限,ωmax表示ω的上限,fitmax表示粒子群体到目前为止所出现的最佳位置的适应度,fitid表示粒子i目前所在位置的适应度,timemax表示最大迭代次数,timeid表示当前为第几次迭代。进一步地,C1、C2的表达式如下:其中,e表示自然指数。进一步地,所述预设概率的表达式如下:其中,Pid表示所述预设概率,e表示自然指数,timemax表示最大迭代次数,timeid表示当前为第几次迭代。进一步地,所述数据聚类模块具体用于执行以下步骤:S1,基于求解出的K值的最优解确定初始聚类中心;S2,基于所述初始聚类中心,按照最近距离原则对目标数据进行划分聚类;S3,根据划分结果计算每个类簇内的所有数据对象的平均值作为该类簇新的聚类中心,如果存在某个类簇为空,则删除该类簇,并将K值减1;S4,基于更新后的聚类中心,按照最近距离原则对目标数据重新划分聚类;S5,迭本文档来自技高网
...

【技术保护点】
1.一种应用于编程现场大数据的聚类方法,其特征在于,所述方法包括:/n基于粒子群优化算法,迭代求解采用K均值聚类算法对待聚类的目标数据进行聚类时,所述K均值聚类算法中的K值的最优解;/n在每次迭代过程中,基于模拟退火算法,以预设概率接受非极值最值的粒子作为新的当前解,并继续基于粒子群优化算法对K值的最优解进行迭代求解;/n当达到预设迭代终止条件后停止迭代,并以当前解作为K值的最优解;/n基于求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类。/n

【技术特征摘要】
1.一种应用于编程现场大数据的聚类方法,其特征在于,所述方法包括:
基于粒子群优化算法,迭代求解采用K均值聚类算法对待聚类的目标数据进行聚类时,所述K均值聚类算法中的K值的最优解;
在每次迭代过程中,基于模拟退火算法,以预设概率接受非极值最值的粒子作为新的当前解,并继续基于粒子群优化算法对K值的最优解进行迭代求解;
当达到预设迭代终止条件后停止迭代,并以当前解作为K值的最优解;
基于求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类。


2.如权利要求1所述的应用于编程现场大数据的聚类方法,其特征在于,在每次迭代过程中所述粒子群优化算法采用下式更新粒子速度和位置:
Vid(t)=ωVid(t-1)+C1ρ1(Pbestid-Xid(t-1))+C2ρ2(Pgd-Xid(t-1))
Xid(t)=Xid(t-1)+Vid(t)
其中,Vid(t)表示第t次迭代时粒子i速度矢量的第d维分量,C1、C2表示学习常数,ρ1、ρ2表示0~1之间的随机数,Pbestid表示粒子i到目前为止所出现的最佳位置,Pgd表示粒子群体到目前为止所出现的最佳位置,Xid(t)表示第t次迭代时粒子i位置矢量的第d维分量;ω表示惯性权重,其表达式如下:



其中,ωmin表示ω的下限,ωmax表示ω的上限,fitmax表示粒子群体到目前为止所出现的最佳位置的适应度,fitid表示粒子i目前所在位置的适应度,timemax表示最大迭代次数,timeid表示当前为第几次迭代。


3.如权利要求2所述的应用于编程现场大数据的聚类方法,其特征在于,C1、C2的表达式如下:






其中,e表示自然指数。


4.如权利要求1所述的应用于编程现场大数据的聚类方法,其特征在于,所述预设概率的表达式如下:



其中,Pid表示所述预设概率,e表示自然指数,timemax表示最大迭代次数,timeid表示当前为第几次迭代。


5.如权利要求1所述的应用于编程现场大数据的聚类方法,其特征在于,基于求解出的K值的最优解,采用K均值聚类算法对目标数据进行聚类,包括:
S1,基于求解出的K值的最优解确定初始聚类中心;
S2,基于所述初始聚类中心,按照最近距离原则对目标数据进行划分聚类;
S3,根据划分结果计算每个类簇内的所有数据对象的平均值作为该类簇新的聚类中心,如果存在某个类簇为空,则删除该类簇,并将K值减1;
S4,基于更新后的聚类中心,按照最近距离原则对目标数据重新划分聚类;
S5,迭代执行S3~S4,直至满足预设终止条件,得到目标数据的聚类结果。


6...

【专利技术属性】
技术研发人员:许海涛周成成李笑笑林福宏周贤伟
申请(专利权)人:北京科技大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1