本申请公开了一种实现K-means聚类的方法及装置,包括:对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值;利用获得的样本集形成K个集群的层次聚类,将层次聚类的K个集群的质心作为K-means聚类的初始质心;根据获取的K-means初始质心进行K-means聚类。本发明专利技术通过选取需要数量的聚类集样本进行层次聚类,以获取层次聚类的质心作为K-means聚类方法的初始质心,使K-means聚类方法不受初始质心影响。另一方面,通过聚类算法过程中不满足聚类第一数值的聚类进行删除,从最大的聚类开始拆分相应个数的聚类,以保证聚类要求的聚类集群的个数要求。
【技术实现步骤摘要】
一种实现K-means聚类的方法及装置
本专利技术涉及数据挖掘技术,尤指一种实现K-means聚类的方法及装置。
技术介绍
K-means聚类的方法作为数据挖掘领域的一种常见方法,在一些数据处理的过程中存在以下问题:一方面,初始质心的选择对聚类结果影响很大。也就是指作为聚类方法的第一步,如果对质心的选取不是数据集中的正常数值,那么对于聚类方法获得的结果,由于初值选择的随机性,很可能得出的聚类效果是不理想的。图1为现有技术对同一聚类数据采用随机选取的初始质心进行聚类的四次聚类结果示意图,如图1所示,聚类结果a1、聚类结果a2和聚类结果a3是采用第一组随机选取初始质心的聚类结果;聚类结果b1、聚类结果b2和聚类结果b3是采用第二组随机选取初始质心的聚类结果;聚类结果c1、聚类结果c2和聚类结果c3是采用第三组随机选取初始质心的聚类结果;聚类结果d1、聚类结果d2和聚类结果d3是采用第四组随机选取初始质心的聚类结果。图2是现有技术采用随机选取初始质心的聚类结果示意图,如图2所示,聚类结果k1和聚类结果k2为聚类形成的两个结果,但是从图中可以看出,这两个聚类集群的理想效果应当属于一个聚类集群;而聚类结果k3和聚类结果K4从聚类的结果示意图上可以看出,其从聚类要达到的理想效果应当是聚类为3个集群。通过分析可见,在现有的K-means聚类方法中,如果一个数据集有K个“真实”的集群,那么随机选择的K个点作为聚类的初始质心,则每个初始质心恰好落在一个“真实”的集群上的概率很小。例如,一个数据集上有10个类,按照目前的聚类方法随机选择10个点作为初始质心。那么10个初始点正好落在10个类的集群上的概率为10!/1010=0.00036。另一方面,K-means聚类方法对异常点的敏感性高。当数据集含存在一定数量的异常点时,则异常点对SSE的贡献必然很大(采用的是距离的平方)。由于异常点的存在导致在算法迭代的过程中,质心非常容易被异常点“吸附”过去,从而严重影响了聚类方法的分析效果。再者,出现空集群问题。空集群是指在一次聚类方法实施的过程中,对于选取的一个或几个质心,任何一个数据点都没有被分配到该质心上,目前的K-means聚类方法无法避免聚类时出现空集群的现象。综上所述,目前的K-means聚类方法,采用随机选取初始质心的选取进行聚类,在聚类过程中,异常点对聚类结果影响较大,且无法避免出现空集群的现象,严重影响了K-means聚类方法在数据处理过程中的使用。
技术实现思路
为了解决上述技术问题,本专利技术公开了一种实现K-means聚类的方法及装置。能够选取出适合K-means聚类的初始质心,降低K-means聚类初始质心对聚类结果的影响。为了达到本申请的目的,本专利技术提供一种实现K-means聚类的方法,包括:对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值;利用获得的样本集形成K个集群的层次聚类,将层次聚类的K个集群的质心作为K-means聚类的初始质心;根据获取的K-means初始质心进行K-means聚类。进一步地,满足预先设置的相似度数值为:预先设置相似度数值,通过计算公式(1-(1-1/K)s)K的数值大于或等于预先设置的相似度数值,获得样本集的样本数值;其中,S为需要计算的样本集的样本数值。进一步地,在进行K-means聚类时,设置聚类集群的聚类第一数值,该方法还包括:删除不满足聚类第一数值的聚类集群,在删除聚类集群时,将最大集群开始的相应个数的集群进行拆分,以满足K-means聚类的集群个数不变。另一方面,本申请还提供一种实现K-means聚类的装置,包括:样本单元、初始质心获取单元及K-means聚类单元;其中,样本单元,用于对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值;初始质心获取单元,用于利用样本单元获得的样本集进行形成K个集群的层次聚类,将获取的层次聚类的K个集群的质心设置为K-means聚类的初始质心;K-means聚类单元,用于根据初始质心获取单元设置的K-means聚类的初始质心进行K-means聚类。进一步地,样本单元具体用于:预先设置相似度数值,通过计算公式(1-(1-1/K)s)K的数值大于或等于预先设置的相似度数值,获得样本集的样本数值;其中,S为需要计算的样本集的样本数值。进一步地,该装置还包括聚类处理单元,用于在进行K-means聚类时,设置聚类集群的第一数值,删除不满足第一数值的聚类集群;在删除聚类集群时,将最大集群开始的相应个数的集群进行拆分,以满足K-means聚类集群个数不变。本申请提出一种技术方案,包括:对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值;利用获得的样本集形成K个集群的层次聚类,将层次聚类的K个集群的质心作为K-means聚类的初始质心;根据获取的K-means初始质心进行K-means聚类。本申请还包括与方法对应的装置。本专利技术通过选取需要数量的聚类集样本进行层次聚类,以获取层次聚类的质心作为K-means聚类方法的初始质心,使K-means聚类方法不受初始质心影响。另一方面,通过聚类算法过程中不满足聚类第一数值的聚类进行删除,从最大的聚类开始拆分相应个数的聚类,以保证聚类要求的聚类集群的个数要求。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为现有技术对同一聚类数据采用随机选取的初始质心进行聚类的四次聚类结果示意图;图2是现有技术采用随机选取初始质心的聚类结果示意图;图3为本专利技术实现K-means聚类的方法的流程图;图4为本专利技术实现K-means聚类的聚类效果示意图;图5为本专利技术实现K-means聚类的装置的结构框图。具体实施方式图3为本专利技术实现K-means聚类的方法的流程图,如图3所示,包括:步骤300、对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值。本步骤中,满足预先设置的相似度数值为:预先设置相似度数值,通过计算公式(1-(1-1/K)s)K的数值大于或等于预先设置的相似度数值,获得样本集的样本数值;其中,S为需要计算的样本集的样本数值。需要说明的是,采用上述公式是为了获得进行层次聚类的样本集中的样本数值,样本数值的取值大小根据实际的需求进行相应的设定。假设以相似度为95%和聚类个数为20进行样本集的样本数值计算,可以获得样本数值为117。当设置的概率越大,样本数值也会呈现增大的趋势,同时,由于样本数值的增大,获得的聚类效果应当会相应的变为更为理想;需要强调的是采用其他概率的计算方法也可以得到本专利技术样本集的样本数值,当获得的样本集的样本数值与本专利技术计算样本数值相同时,采用本专利技术层次聚类对获取初始质心,其技术效果是相同的,应当属于本专利技术方法保护的范围。另外,从本专利技术的计算公式可以得出,对于样本集的大小和聚类数据的数据个数无关。也就是说,如果在大数据或其他数据较多的数据挖掘领域使用本专利技术方法,本专利技术方法是具有恒优的聚类效果的,不会因为数据集群数据量大小的改变而影响本专利技术方法的技术效果。步骤301、利用获得的样本集形成K个集群的层次本文档来自技高网...
【技术保护点】
一种实现K?means聚类的方法,其特征在于,包括:对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值;利用获得的样本集形成K个集群的层次聚类,将层次聚类的K个集群的质心作为K?means聚类的初始质心;根据获取的K?means初始质心进行K?means聚类。
【技术特征摘要】
1.一种实现K-means聚类的方法,其特征在于,包括:对聚类数据进行随机抽样得到样本集,样本集与聚类数据满足预先设置的相似度数值;利用获得的样本集形成K个集群的层次聚类,将层次聚类的K个集群的质心作为K-means聚类的初始质心;根据获取的K-means初始质心进行K-means聚类;所述满足预先设置的相似度数值为:预先设置相似度数值,通过计算公式(1-(1-1/K)s)K的数值大于或等于预先设置的相似度数值,获得样本集的样本数值;其中,S为需要计算的样本集的样本数值。2.根据权利要求1所述的方法,其特征在于,在进行K-means聚类时,设置聚类集群的聚类第一数值,该方法还包括:删除不满足聚类第一数值的聚类集群,在删除聚类集群时,将最大集群开始的相应个数的集群进行拆分,以满足K-means聚类的集群个数不变。3.一种实现K-means聚类的装置,其特征在于,包括:样本单元、初始质心获取单...
【专利技术属性】
技术研发人员:李傲,
申请(专利权)人:浪潮北京电子信息产业有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。