CN109685092A - 基于大数据的聚类方法、设备、存储介质及装置 - Google Patents
基于大数据的聚类方法、设备、存储介质及装置 Download PDFInfo
- Publication number
- CN109685092A CN109685092A CN201810953907.8A CN201810953907A CN109685092A CN 109685092 A CN109685092 A CN 109685092A CN 201810953907 A CN201810953907 A CN 201810953907A CN 109685092 A CN109685092 A CN 109685092A
- Authority
- CN
- China
- Prior art keywords
- cluster
- target
- objects
- clustered
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000011002 quantification Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 30
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 4
- 238000007418 data mining Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 241000406668 Loxodonta cyclotis Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 238000001035 drying Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于大数据的聚类方法、设备、存储介质及装置。本发明中获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;统计所述目标簇内的数据对象的簇对象数量;当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。明显地,本发明的聚类过程充分考虑到了目标簇簇内对象的实际状况,并以大数据的技术基础为前提根据该实际状况来开展聚类操作,聚类效果更好,进而解决了现有的基于大数据的聚类方法选取出的聚类数聚类效果不好的技术问题。
Description
技术领域
本发明涉及数据挖掘领域,尤其涉及基于大数据的聚类方法、设备、存储介质及装置。
背景技术
数据挖掘作为一种从大量数据中发现隐藏信息的方法,广泛地应用于市场分析以及科学研究等方面。而数据的聚类是数据挖掘中的一个极为重要的技术环节,将极大地影响挖掘结果的准确性以及挖掘效率。
具体而言,聚类是一种以样本数据出发的自动分类方法,简单而言,聚类就是以大量的数据为基础,根据数据之间的接近程度来对数据进行分组的过程。
而实现聚类的典型算法有多种,K-Means算法则是其中一种。K-Means算法的常规实现过程为,将先确定多个聚类中心,然后,计算各个点至聚类中心的距离,距离哪个聚类中心较近,则归于哪个聚类中心,最终,也就会得到多个以聚类中心为中心的点集结而成的分组,从而实现了对于数据的自动分组。
明显地,聚类中心的个数就是最终分组的组数,也就是K-Means算法中的聚类数K值,所以,聚类数K值将极大地影响聚类过程的有效性与分组区域的相似性,但是,聚类数K值往往又是难以估计的。
因为考虑到待聚类的大量数据是实时提供并实时进行聚类的,往往无法事前设定好一个较佳的聚类数,因为较佳的聚类数需要考虑到待聚类的数据的实际状况,所以,传统的确定聚类数的方式为人为设定,但是,人为设定聚类数易导致聚类结果不够稳定。
所以,可认为,现有的基于大数据的聚类方法存在选取出的聚类数聚类效果不好的技术问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供基于大数据的聚类方法、设备、存储介质及装置,旨在解决现有的基于大数据的聚类方法选取出的聚类数聚类效果不好的技术问题。
为实现上述目的,本发明提供一种基于大数据的聚类方法,所述基于大数据的聚类方法包括以下步骤:
获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;
统计所述目标簇内的数据对象的簇对象数量;
当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;
基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。
优选地,所述获取目标簇与预设初始聚类数之前,所述基于大数据的聚类方法还包括:
获取待聚类数据与预设初始聚类数,所述待聚类数据由数据对象构成;
根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇。
优选地,所述根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇,包括:
确定数量为所述预设初始聚类数的聚类中心,并建立与所述聚类中心对应的目标簇;
遍历所述待聚类数据中的数据对象,并计算遍历到的数据对象与所述聚类中心之间的第一欧式距离;
当所述第一欧式距离小于或等于第一预设距离阈值时,将与所述第一欧式距离对应的数据对象添加至与所述聚类中心对应的目标簇内。
优选地,所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇,包括:
从所述待聚类簇中选取数量为所述预设初始聚类数的目标数据对象作为新的聚类中心;
遍历所述待聚类簇中的数据对象,并计算遍历到的数据对象与新的聚类中心之间的第二欧式距离;
当所述第二欧式距离小于或等于第二预设距离阈值时,将与所述第二欧式距离对应的数据对象添加至与所述聚类中心对应的目标子簇内。
优选地,所述当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇之前,所述基于大数据的聚类方法还包括步骤:
统计所述待聚类数据中的数据对象的目标对象数量;
基于所述目标对象数量与预设簇内点阈值计算公式进行计算,以获得预设对象数量阈值。
优选地,所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇之后,所述基于大数据的聚类方法还包括:
统计所述目标子簇内的数据对象的子簇对象数量;
当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
优选地,所述统计所述目标子簇内的数据对象的子簇对象数量之后,所述基于大数据的聚类方法还包括:
当所述子簇对象数量大于或等于所述预设对象数量阈值时,将所述目标子簇作为待聚类簇,返回执行所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇的步骤,直至当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
此外,为实现上述目的,本发明还提出一种设备,所述设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于大数据的聚类程序,所述基于大数据的聚类程序配置为实现如上文所述的基于大数据的聚类方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有基于大数据的聚类程序,所述基于大数据的聚类程序被处理器执行时实现如上文所述的基于大数据的聚类方法的步骤。
此外,为实现上述目的,本发明还提出一种基于大数据的聚类装置,所述基于大数据的聚类装置包括:数据获取模块、数量统计模块、数量比较模块以及子簇聚类模块;
所述数据获取模块,用于获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;
所述数量统计模块,用于统计所述目标簇内的数据对象的簇对象数量;
所述数量比较模块,用于当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;
所述子簇聚类模块,用于基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。
在本发明中将不会预先确定一个固定的聚类数K值来完成聚类过程,而仅设置了预设初始聚类数,在获取到目标簇后,本发明将先判断目标簇内的数据对象的数量是否满足预设对象数量阈值的要求,当不满足要求时再对该目标簇进行聚类。明显地,本发明的聚类过程充分考虑到了目标簇簇内对象的实际状况,并根据该实际状况来开展聚类操作,聚类效果更好,并不会如现有技术一样预先锁定一个固定的聚类数K值,这会导致聚类不结合实际,聚类效果较差。所以,可认为,本发明解决了现有的基于大数据的聚类方法选取出的聚类数聚类效果不好的技术问题。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明基于大数据的聚类方法第一实施例的流程示意图;
图3为本发明基于大数据的聚类方法第二实施例的流程示意图;
图4为本发明基于大数据的聚类方法第三实施例的流程示意图;
图5为本发明基于大数据的聚类装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的设备结构示意图。
如图1所示,该设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display),可选用户接口1003还可以包括标准的有线接口、无线接口,对于用户接口1003的有线接口在本发明中可为USB接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于大数据的聚类程序。
在图1所示的设备中,网络接口1004主要用于连接后台服务器,与所述后台服务器进行数据通信;用户接口1003主要用于连接外设;所述设备通过处理器1001调用存储器1005中存储的基于大数据的聚类程序,并执行本发明实施例提供的基于大数据的聚类方法。
基于上述硬件结构,提出本发明基于大数据的聚类方法的实施例。
参照图2,图2为本发明基于大数据的聚类方法第一实施例的流程示意图。
在第一实施例中,所述基于大数据的聚类方法包括以下步骤:
步骤S10:获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;
可以理解的是,考虑到现有的基于大数据的聚类方法并不能很好地选取出一个较为合适的聚类数来完成整个聚类过程,从而导致聚类效果不好,本实施例考虑到该技术问题,将不会为整个聚类过程预先敲定一个固定的聚类数,而将在聚类过程中灵活地改变聚类的数量从而使得与整个聚类过程对应的最终聚类数数值将适应于实时提供的待聚类数据,使得聚类效果更好。
在具体实现中,比如,在聚类的过程中,由于存在海量数据,所以,可应用大数据处理海量数据的方式来处理待聚类的相关数据,最终可能聚类出多个簇,而簇正是由距离靠近的数据对象组成的。若在一次聚类后,由于预先设置的聚类数为3,则将获得3个目标簇,但是,聚类数3并不一定能够很好地将待聚类数据中的各个数据对象很好地区分开,所以,为了使得聚类效果更好,本实施例将预先设置一个预设初始聚类数,比如,预设初始聚类数为2,可基于该预设初始聚类数2对这3个目标簇进行新一轮的聚类,从而使得聚类结果具有更高的有效性。
步骤S20:统计所述目标簇内的数据对象的簇对象数量;
在具体实现中,比如,在得到3个目标簇后,将先评估目标簇的分簇效果,可通过统计目标簇内的数据对象的方式来评估分簇效果。
步骤S30:当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;
应当理解的是,可将预设对象数量阈值设置为60。若3个目标簇内的簇对象数量分别为100、80与30,可认为簇对象数量分别为100、80的目标簇可以进一步地进行分簇,以提高簇内数据对象的相似性;而簇对象数量为30的目标簇可认为分簇效果较好,则不必进行进一步的聚类操作。
步骤S40:基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。
可以理解的是,可将簇对象数量为100的目标簇分为2个目标子簇,同时,将簇对象数量为80的目标簇也分为2个目标子簇,如此,计算上之前未分簇的一个目标簇,则实际上得到的簇的数量为5个。而考虑到常规的K-Means算法中对于聚类数K值的定义,聚类数K值即为最终聚成的簇的数量,则本实施例中的聚类数K值实则为5。明显地,最终分成5个簇是考虑到了簇内数据对象的相似性的结果,对簇内数据对象进行了深度挖掘,所以,本实施例在聚类效果上表现更好。
在本实施例中将不会预先确定一个固定的聚类数K值来完成聚类过程,而仅设置了预设初始聚类数,在获取到目标簇后,本实施例将先判断目标簇内的数据对象的数量是否满足预设对象数量阈值的要求,当不满足要求时再对该目标簇进行聚类。明显地,本实施例的聚类过程充分考虑到了目标簇簇内对象的实际状况,并根据该实际状况来开展聚类操作,聚类效果更好,并不会如现有技术一样预先锁定一个固定的聚类数K值,这会导致聚类不结合实际,聚类效果较差。所以,可认为,本实施例解决了现有的基于大数据的聚类方法选取出的聚类数聚类效果不好的技术问题。
参照图3,图3为本发明基于大数据的聚类方法第二实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明基于大数据的聚类方法的第二实施例。
第二实施例中,所述步骤S10之前,所述基于大数据的聚类方法还包括:
步骤S101:获取待聚类数据与预设初始聚类数,所述待聚类数据由数据对象构成;
可以理解的是,目标簇也是由聚类得到的,所以,本实施例实现一次完成的聚类操作往往其中将包括一次到多次阶段性的聚类操作。
步骤S102:根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇。
在具体实现中,比如,在获得待聚类数据后,可直接根据预设初始聚类数2对该待聚类数据进行聚类,从而得到2个目标簇。其中,待聚类数据中将含有多个数量对象,数据对象可表现为数据点的形式。结合本发明基于大数据的聚类方法第一实施例的内容,在得到2个目标簇后,可再判断这2个目标簇中的簇对象数量,进而根据簇对象数量的判断结果决定是否对目标簇进行进一步地聚类,从而获得目标子簇。
进一步地,所述根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇,包括:
确定数量为所述预设初始聚类数的聚类中心,并建立与所述聚类中心对应的目标簇;
遍历所述待聚类数据中的数据对象,并计算遍历到的数据对象与所述聚类中心之间的第一欧式距离;
当所述第一欧式距离小于或等于第一预设距离阈值时,将与所述第一欧式距离对应的数据对象添加至与所述聚类中心对应的目标簇内。
可以理解的是,聚类操作具体为,比如,若预设初始聚类数为2,可先选取2个表示聚类中心的数据点,并分别计算数据对象与这2个数据点之间的欧式距离(EuclideanMetric),并比较这两个欧式距离的数值大小。若距离第一聚类中心的欧式距离小于第一预设距离阈值,而距离第二聚类中心的欧式距离大于第一预设距离阈值,则可将该数据点归于第一聚类中心的目标簇。其中,目标簇为以聚类中心为距离基准建立的分组。
进一步地,所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇,包括:
从所述待聚类簇中选取数量为所述预设初始聚类数的目标数据对象作为新的聚类中心;
遍历所述待聚类簇中的数据对象,并计算遍历到的数据对象与新的聚类中心之间的第二欧式距离;
当所述第二欧式距离小于或等于第二预设距离阈值时,将与所述第二欧式距离对应的数据对象添加至与所述聚类中心对应的目标子簇内。
应当理解的是,考虑到当再次聚类时,由于待聚类的数据对象发生了变化,原先的聚类中心可能已经无法适用于现在的数据对象,故而,将重新选举新的聚类中心,并基于新的聚类中心来搭建目标子簇。
当然,由于待聚类的数据对象与聚类中心发生了变化,则用于比较欧式距离的距离阈值也将发生变化,明显地,第二预设距离阈值将小于第一预设距离阈值,以适用于当前的聚类操作。
进一步地,在所述遍历所述待聚类簇中的数据对象,并计算遍历到的数据对象与新的聚类中心之间的第二欧式距离之后,所述基于大数据的聚类方法还包括步骤:
统计根据所述预设初始聚类数进行聚类的聚类次数;
通过聚类次数与所述第一预设距离阈值进行距离阈值的计算,以获得第二预设距离阈值。
在具体实现中,将根据预设距离阈值计算公式来计算出第二预设距离阈值,其中,预设距离阈值计算公式为,
a2=a1*b/n;
其中,a2为第二预设距离阈值,a1为第一预设距离阈值,b为预设距离权重,n为聚类次数。比如,本次聚类为第2次,则n为2,a1为100,b为0.8,则计算出的第二预设距离阈值为40,通过结合聚类的次数与之前的距离阈值可以更好地确定当前距离阈值的范围,从而提高了不同簇之间的差异性。
进一步地,所述当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇之前,所述基于大数据的聚类方法还包括步骤:
统计所述待聚类数据中的数据对象的目标对象数量;
基于所述目标对象数量与预设簇内点阈值计算公式进行计算,以获得预设对象数量阈值。
可以理解的是,考虑到将根据预设对象数量阈值来判断是否进行下一次的聚类操作,所以,预设对象数量阈值的数值大小将极大地影响最终的聚类效果。但是,待聚类数据是实时提供的,无法预先知晓待聚类数据中的数据对象的数量,所以,如果仅根据一个固定的预设对象数量阈值,比如,500,将无法照顾到数据对象的数量的变化。特别是,当数据对象的整体数量本身就偏小时,预设对象数量阈值不能起到应有的作用;当数据对象的整体数量本身就偏大时,较小的预设对象数量阈值会导致聚类次数较多,影响聚类的效率。
在具体实现中,将根据预设簇内点阈值计算公式来确定预设对象数量阈值,其中,预设簇内点阈值计算公式为,
p=m*x;
其中,p为预设对象数量阈值,m为预设簇内点权重,x为目标对象数量。比如,若m为0.3,x为100,则计算出的预设对象数量阈值将为30。正是,因为预设对象数量阈值将由目标对象数量决定,也就降低了数据对象的数量变化带来的影响。
在本实施例中将基于聚类中心来完成簇内对象的聚类操作,并且,通过重新确定聚类中心与距离阈值,可以加大不同簇之间的差异性,从而使得聚类效果更好。
参照图4,图4为本发明基于大数据的聚类方法第三实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明基于大数据的聚类方法的第三实施例。
第三实施例中,所述步骤S40之后,所述基于大数据的聚类方法还包括:
步骤S50:统计所述目标子簇内的数据对象的子簇对象数量;
可以理解的是,当得到了多个目标子簇后,还将对该目标子簇的分簇效果进行评估,以判断是否还需要对目标子簇进行再一次的分簇。当然,若目标子簇中的对象数量均已经小于预设对象数量阈值,则不必继续聚类,可认为已经完成了一次完整的聚类操作。
步骤S60:当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
进一步地,所述步骤S50之后,所述基于大数据的聚类方法还包括:
步骤S601:当所述子簇对象数量大于或等于所述预设对象数量阈值时,将所述目标子簇作为待聚类簇。
执行步骤S601之后,返回执行步骤S40,直至当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
应当理解的是,若目标子簇中的对象数量仍然大于或等于预设对象数量阈值,则将继续对目标子簇进行分簇。具体而言,可将对之前目标簇的聚类操作重复实施在目标子簇上,也就构成一个循环分簇的操作。简而言之,只要得到的簇的对象数量不满足预设对象阈值的要求,本实施例将不断地进行聚类操作,直至最终得到的簇的对象数量满足预设对象阈值的要求。
在本实施例公开了一种循环分簇的操作,只有当最终分出的簇内的对象数量满足预设对象阈值的要求时才会停止聚类,否则,将不断地进行聚类操作。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有基于大数据的聚类程序,所述基于大数据的聚类程序被处理器执行时实现如上文所述的基于大数据的聚类方法的步骤。
此外,参照图5,本发明实施例还提出一种基于大数据的聚类装置,所述基于大数据的聚类装置包括:数据获取模块10、数量统计模块20、数量比较模块30以及子簇聚类模块40;
所述数据获取模块10,用于获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;
可以理解的是,考虑到现有的基于大数据的聚类方法并不能很好地选取出一个较为合适的聚类数来完成整个聚类过程,从而导致聚类效果不好,本实施例考虑到该技术问题,将不会为整个聚类过程预先敲定一个固定的聚类数,而将在聚类过程中灵活地改变聚类的数量从而使得与整个聚类过程对应的最终聚类数数值将适应于实时提供的待聚类数据,使得聚类效果更好。
在具体实现中,比如,在聚类的过程中,可能聚类出多个簇,而簇正是由距离靠近的数据对象组成的。若在一次聚类后,由于预先设置的聚类数为3,则将获得3个目标簇,但是,聚类数3并不一定能够很好地将待聚类数据中的各个数据对象很好地区分开,所以,为了使得聚类效果更好,本实施例将预先设置一个预设初始聚类数,比如,预设初始聚类数为2,可基于该预设初始聚类数2对这3个目标簇进行新一轮的聚类,从而使得聚类结果具有更高的有效性。
所述数量统计模块20,用于统计所述目标簇内的数据对象的簇对象数量;
在具体实现中,比如,在得到3个目标簇后,将先评估目标簇的分簇效果,可通过统计目标簇内的数据对象的方式来评估分簇效果。
所述数量比较模块30,用于当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;
应当理解的是,可将预设对象数量阈值设置为60。若3个目标簇内的簇对象数量分别为100、80与30,可认为簇对象数量分别为100、80的目标簇可以进一步地进行分簇,以提高簇内数据对象的相似性;而簇对象数量为30的目标簇可认为分簇效果较好,则不必进行进一步的聚类操作。
所述子簇聚类模块40,用于基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。
可以理解的是,可将簇对象数量为100的目标簇分为2个目标子簇,同时,将簇对象数量为80的目标簇也分为2个目标子簇,如此,计算上之前未分簇的一个目标簇,则实际上得到的簇的数量为5个。而考虑到常规的K-Means算法中对于聚类数K值的定义,聚类数K值即为最终聚成的簇的数量,则本实施例中的聚类数K值实则为5。明显地,最终分成5个簇是考虑到了簇内数据对象的相似性的结果,所以,本实施例在聚类效果上表现更好。
进一步地,所述基于大数据的聚类装置还包括目标簇聚类模块;
所述目标簇聚类模块,用于获取待聚类数据与预设初始聚类数,所述待聚类数据由数据对象构成;根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇。
进一步地,所述目标簇聚类模块,还用于确定数量为所述预设初始聚类数的聚类中心,并建立与所述聚类中心对应的目标簇;遍历所述待聚类数据中的数据对象,并计算遍历到的数据对象与所述聚类中心之间的第一欧式距离;当所述第一欧式距离小于或等于第一预设距离阈值时,将与所述第一欧式距离对应的数据对象添加至与所述聚类中心对应的目标簇内。
进一步地,所述子簇聚类模块40,还用于从所述待聚类簇中选取数量为所述预设初始聚类数的目标数据对象作为新的聚类中心;遍历所述待聚类簇中的数据对象,并计算遍历到的数据对象与新的聚类中心之间的第二欧式距离;当所述第二欧式距离小于或等于第二预设距离阈值时,将与所述第二欧式距离对应的数据对象添加至与所述聚类中心对应的目标子簇内。
进一步地,所述基于大数据的聚类装置还包括阈值计算模块;
所述阈值计算模块,用于统计所述待聚类数据中的数据对象的目标对象数量;基于所述目标对象数量与预设簇内点阈值计算公式进行计算,以获得预设对象数量阈值。
进一步地,所述基于大数据的聚类装置还包括对象统计模块;
所述对象统计模块,用于统计所述目标子簇内的数据对象的子簇对象数量;当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
进一步地,所述基于大数据的聚类装置还包括循环聚类模块;
所述循环聚类模块,用于当所述子簇对象数量大于或等于所述预设对象数量阈值时,将所述目标子簇作为待聚类簇,返回执行所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇的步骤,直至当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
在本实施例中将不会预先确定一个固定的聚类数K值来完成聚类过程,而仅设置了预设初始聚类数,在获取到目标簇后,本实施例将先判断目标簇内的数据对象的数量是否满足预设对象数量阈值的要求,当不满足要求时再对该目标簇进行聚类。明显地,本实施例的聚类过程充分考虑到了目标簇簇内对象的实际状况,并根据该实际状况来开展聚类操作,聚类效果更好,并不会如现有技术一样预先锁定一个固定的聚类数K值,这会导致聚类不结合实际,聚类效果较差。所以,可认为,本实施例解决了现有的基于大数据的聚类方法选取出的聚类数聚类效果不好的技术问题。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为名称。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于大数据的聚类方法,其特征在于,所述基于大数据的聚类方法包括以下步骤:
获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;
统计所述目标簇内的数据对象的簇对象数量;
当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;
基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。
2.如权利要求1所述的基于大数据的聚类方法,其特征在于,所述获取目标簇与预设初始聚类数之前,所述基于大数据的聚类方法还包括:
获取待聚类数据与预设初始聚类数,所述待聚类数据由数据对象构成;
根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇。
3.如权利要求2所述的基于大数据的聚类方法,其特征在于,所述根据所述预设初始聚类数对所述待聚类数据进行聚类,以获得数量为所述预设初始聚类数的目标簇,包括:
确定数量为所述预设初始聚类数的聚类中心,并建立与所述聚类中心对应的目标簇;
遍历所述待聚类数据中的数据对象,并计算遍历到的数据对象与所述聚类中心之间的第一欧式距离;
当所述第一欧式距离小于或等于第一预设距离阈值时,将与所述第一欧式距离对应的数据对象添加至与所述聚类中心对应的目标簇内。
4.如权利要求3所述的基于大数据的聚类方法,其特征在于,所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇,包括:
从所述待聚类簇中选取数量为所述预设初始聚类数的目标数据对象作为新的聚类中心;
遍历所述待聚类簇中的数据对象,并计算遍历到的数据对象与新的聚类中心之间的第二欧式距离;
当所述第二欧式距离小于或等于第二预设距离阈值时,将与所述第二欧式距离对应的数据对象添加至与所述聚类中心对应的目标子簇内。
5.如权利要求2所述的基于大数据的聚类方法,其特征在于,所述当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇之前,所述基于大数据的聚类方法还包括步骤:
统计所述待聚类数据中的数据对象的目标对象数量;
基于所述目标对象数量与预设簇内点阈值计算公式进行计算,以获得预设对象数量阈值。
6.如权利要求1所述的基于大数据的聚类方法,其特征在于,所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇之后,所述基于大数据的聚类方法还包括:
统计所述目标子簇内的数据对象的子簇对象数量;
当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
7.如权利要求6所述的基于大数据的聚类方法,其特征在于,所述统计所述目标子簇内的数据对象的子簇对象数量之后,所述基于大数据的聚类方法还包括:
当所述子簇对象数量大于或等于所述预设对象数量阈值时,将所述目标子簇作为待聚类簇,返回执行所述基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇的步骤,直至当所述子簇对象数量小于所述预设对象数量阈值时,则完成聚类操作。
8.一种设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行基于大数据的聚类程序,所述基于大数据的聚类程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于大数据的聚类方法的步骤。
9.一种存储介质,其特征在于,所述存储介质上存储有基于大数据的聚类程序,所述基于大数据的聚类程序被处理器执行时实现如权利要求1至7中任一项所述的基于大数据的聚类方法的步骤。
10.一种基于大数据的聚类装置,其特征在于,所述基于大数据的聚类装置包括:数据获取模块、数量统计模块、数量比较模块以及子簇聚类模块;
所述数据获取模块,用于获取目标簇与预设初始聚类数,所述目标簇中包括数据对象;
所述数量统计模块,用于统计所述目标簇内的数据对象的簇对象数量;
所述数量比较模块,用于当所述簇对象数量大于或等于预设对象数量阈值时,将所述簇对象数量大于或等于所述预设对象数量阈值的目标簇作为待聚类簇;
所述子簇聚类模块,用于基于所述预设初始聚类数对所述待聚类簇进行聚类,以获得数量为所述预设初始聚类数的目标子簇。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810953907.8A CN109685092B (zh) | 2018-08-21 | 2018-08-21 | 基于大数据的聚类方法、设备、存储介质及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810953907.8A CN109685092B (zh) | 2018-08-21 | 2018-08-21 | 基于大数据的聚类方法、设备、存储介质及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109685092A true CN109685092A (zh) | 2019-04-26 |
CN109685092B CN109685092B (zh) | 2024-02-06 |
Family
ID=66184456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810953907.8A Active CN109685092B (zh) | 2018-08-21 | 2018-08-21 | 基于大数据的聚类方法、设备、存储介质及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109685092B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110414569A (zh) * | 2019-07-03 | 2019-11-05 | 北京小米智能科技有限公司 | 聚类实现方法及装置 |
CN111079653A (zh) * | 2019-12-18 | 2020-04-28 | 中国工商银行股份有限公司 | 数据库自动分库方法及装置 |
CN111950632A (zh) * | 2020-08-12 | 2020-11-17 | 贝壳技术有限公司 | 用于实现聚类的方法、装置、介质以及电子设备 |
CN112560947A (zh) * | 2020-12-14 | 2021-03-26 | 国网青海省电力公司 | 基于能源供需结构分析的聚类方法及装置 |
CN112560731A (zh) * | 2020-12-22 | 2021-03-26 | 苏州科达科技股份有限公司 | 特征聚类方法、数据库更新方法、电子设备及存储介质 |
CN113963221A (zh) * | 2021-09-17 | 2022-01-21 | 深圳云天励飞技术股份有限公司 | 一种图像聚类方法、装置、计算机设备及可读存储介质 |
CN116167692A (zh) * | 2023-02-21 | 2023-05-26 | 上海朗晖慧科技术有限公司 | 一种结合货单信息的自动优化方法与系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6374251B1 (en) * | 1998-03-17 | 2002-04-16 | Microsoft Corporation | Scalable system for clustering of large databases |
CN104199853A (zh) * | 2014-08-12 | 2014-12-10 | 南京信息工程大学 | 一种聚类方法 |
CN104376057A (zh) * | 2014-11-06 | 2015-02-25 | 南京邮电大学 | 一种基于最大最小距离和K-means的自适应聚类方法 |
CN105472631A (zh) * | 2014-09-02 | 2016-04-06 | 中兴通讯股份有限公司 | 一种业务数据量和/或资源数据量的预测方法及预测系统 |
CN106776600A (zh) * | 2015-11-19 | 2017-05-31 | 北京国双科技有限公司 | 文本聚类的方法及装置 |
CN107480708A (zh) * | 2017-07-31 | 2017-12-15 | 微梦创科网络科技(中国)有限公司 | 一种复杂模型的聚类方法及系统 |
CN108268526A (zh) * | 2016-12-30 | 2018-07-10 | 中国移动通信集团北京有限公司 | 一种数据分类方法和装置 |
-
2018
- 2018-08-21 CN CN201810953907.8A patent/CN109685092B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6374251B1 (en) * | 1998-03-17 | 2002-04-16 | Microsoft Corporation | Scalable system for clustering of large databases |
CN104199853A (zh) * | 2014-08-12 | 2014-12-10 | 南京信息工程大学 | 一种聚类方法 |
CN105472631A (zh) * | 2014-09-02 | 2016-04-06 | 中兴通讯股份有限公司 | 一种业务数据量和/或资源数据量的预测方法及预测系统 |
CN104376057A (zh) * | 2014-11-06 | 2015-02-25 | 南京邮电大学 | 一种基于最大最小距离和K-means的自适应聚类方法 |
CN106776600A (zh) * | 2015-11-19 | 2017-05-31 | 北京国双科技有限公司 | 文本聚类的方法及装置 |
CN108268526A (zh) * | 2016-12-30 | 2018-07-10 | 中国移动通信集团北京有限公司 | 一种数据分类方法和装置 |
CN107480708A (zh) * | 2017-07-31 | 2017-12-15 | 微梦创科网络科技(中国)有限公司 | 一种复杂模型的聚类方法及系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110414569A (zh) * | 2019-07-03 | 2019-11-05 | 北京小米智能科技有限公司 | 聚类实现方法及装置 |
US11501099B2 (en) | 2019-07-03 | 2022-11-15 | Beijing Xiaomi Intelligent Technology Co., Ltd. | Clustering method and device |
CN111079653A (zh) * | 2019-12-18 | 2020-04-28 | 中国工商银行股份有限公司 | 数据库自动分库方法及装置 |
CN111079653B (zh) * | 2019-12-18 | 2024-03-22 | 中国工商银行股份有限公司 | 数据库自动分库方法及装置 |
CN111950632A (zh) * | 2020-08-12 | 2020-11-17 | 贝壳技术有限公司 | 用于实现聚类的方法、装置、介质以及电子设备 |
CN112560947A (zh) * | 2020-12-14 | 2021-03-26 | 国网青海省电力公司 | 基于能源供需结构分析的聚类方法及装置 |
CN112560731A (zh) * | 2020-12-22 | 2021-03-26 | 苏州科达科技股份有限公司 | 特征聚类方法、数据库更新方法、电子设备及存储介质 |
CN112560731B (zh) * | 2020-12-22 | 2022-07-01 | 苏州科达科技股份有限公司 | 特征聚类方法、数据库更新方法、电子设备及存储介质 |
CN113963221A (zh) * | 2021-09-17 | 2022-01-21 | 深圳云天励飞技术股份有限公司 | 一种图像聚类方法、装置、计算机设备及可读存储介质 |
CN113963221B (zh) * | 2021-09-17 | 2024-07-02 | 深圳云天励飞技术股份有限公司 | 一种图像聚类方法、装置、计算机设备及可读存储介质 |
CN116167692A (zh) * | 2023-02-21 | 2023-05-26 | 上海朗晖慧科技术有限公司 | 一种结合货单信息的自动优化方法与系统 |
CN116167692B (zh) * | 2023-02-21 | 2023-09-01 | 上海朗晖慧科技术有限公司 | 一种结合货单信息的自动优化方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109685092B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109685092A (zh) | 基于大数据的聚类方法、设备、存储介质及装置 | |
CN105281925B (zh) | 网络业务用户群组划分的方法和装置 | |
CN110417607B (zh) | 一种流量预测方法、装置及设备 | |
US10846332B2 (en) | Playlist list determining method and device, electronic apparatus, and storage medium | |
CN108901036A (zh) | 小区网络参数的调整方法、装置、计算机设备和存储介质 | |
CN108762867A (zh) | 悬浮菜单设置方法和装置 | |
CN106412917A (zh) | 一种网络扩容方法及装置 | |
CN109492153A (zh) | 一种产品推荐方法和装置 | |
CN108419249A (zh) | 三维无线传感器网络分簇覆盖方法、终端设备及存储介质 | |
JP4971488B2 (ja) | メッセージ解析器およびメッセージ解析方法 | |
CN109495291A (zh) | 调用异常的定位方法、装置和服务器 | |
WO2020238965A1 (zh) | 生产环境的性能评估方法、装置及存储介质 | |
CN111242428A (zh) | 微服务处理方法、装置、设备及存储介质 | |
CN102930016B (zh) | 一种用于在移动终端上提供搜索结果的方法和设备 | |
CN104077361B (zh) | 一种用于大数据的排序方法及系统 | |
CN110147493A (zh) | 活跃因子的确定方法、装置、计算机设备及存储介质 | |
CN109816004A (zh) | 房源图片分类方法、装置、设备及存储介质 | |
CN107181601A (zh) | 一种流量提醒方法及装置 | |
US20140214826A1 (en) | Ranking method and system | |
WO2018082320A1 (zh) | 数据流连接方法及装置 | |
CN116974926A (zh) | 测试记录生成方法、系统、终端设备及计算机存储介质 | |
CN106535102A (zh) | 一种移动终端定位方法及移动终端 | |
CN111683280A (zh) | 视频处理方法、装置及电子设备 | |
CN108563758B (zh) | 用户数量测算方法、装置、设备和存储介质 | |
CN103796226B (zh) | 一种网络优化方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |