CN107886124A - 一种自动识别肘部法则中最优k值的方法 - Google Patents
一种自动识别肘部法则中最优k值的方法 Download PDFInfo
- Publication number
- CN107886124A CN107886124A CN201711090620.9A CN201711090620A CN107886124A CN 107886124 A CN107886124 A CN 107886124A CN 201711090620 A CN201711090620 A CN 201711090620A CN 107886124 A CN107886124 A CN 107886124A
- Authority
- CN
- China
- Prior art keywords
- distortion degree
- average distortion
- optimal
- values
- regularization
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 26
- 238000003064 k means clustering Methods 0.000 claims abstract description 15
- 230000005484 gravity Effects 0.000 claims description 12
- 238000005457 optimization Methods 0.000 claims description 4
- 238000010801 machine learning Methods 0.000 abstract description 6
- 241001269238 Data Species 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003909 pattern recognition 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
Abstract
本发明涉及一种自动识别肘部法则中最优K值的方法,属于机器学习中无监督聚类学习技术领域。本发明包括步骤:设定K‑means聚类算法中要查找最优K值的范围[1,M];计算设定范围聚类数对应的平均畸变程度;对计算得到的平均畸变程度进行0‑10的规则化转换;将0‑10规则化后的平均畸变程度与范围[1,M]封装成数据对;利用余弦定理求上述封装成的连续三个数据对之间的夹角;找出最小的夹角;利用最小的夹角得到最优的K值。本发明在K‑means及肘部法则的基础上,通过对肘部法则得到的平均畸变程度做0‑10规则化及利用余弦定理对其进行进一步的计算最终得到指定范围内的最优K值。
Description
技术领域
本发明涉及一种自动识别肘部法则中最优K值的方法,特别涉及一种结合利用机器学习中无监督学习中常用的K-Means聚类算法、肘部法则以及通过0-10的规则化对平均畸变程度进行规则化、将0-10规则化后的平均畸变程度与对应的分类簇数量封装成数据对以及利用余弦定理求出连续三个数据点之间的夹角等来自动识别肘部法则中预估出来的最优K值的方法,属于机器学习中无监督聚类学习领域。
背景技术
随着信息技术的发展以及人们产生的数据越来越多,人类逐渐进入了大数据时代。人们通过机器学习来对大数据进行研究,进而从大数据中获取新的知识或技能。尤其是通过机器学习中的无监督学(unsupervised learning)来挖掘或发现大数据中的新知识或技能。
无监督学习与监督学习不同,无监督学习不需要对数据进行标记。无监督学习模型可以帮助我们发现数据的“群落”,同时也可以寻找“离群”的样本,这是海量数据处理中非常实用的技术。数据聚类是无监督学习的主流应用之一。聚类是一个将整体的数据对象划分为以类或簇存在的包含局部数据对象的过程。聚类源于数据挖掘、统计学、生物学、机器学习等众多领域,现如今聚类分析已经广泛应用于模式识别、数据分析以及图像处理等领域。目前的聚类算法可以归纳为如下几类:K均值聚类(K-means Clustering)、高斯混合聚类(Mixture-of-Gaussian Clustering)、密度聚类(Density-Based Clustering)、层次聚类(hierarchicalclustering)等算法,但是最为经典并且易用的聚类模型是K均值(K-means)算法。
但是K-means聚类算法也不可避免地存在缺点:无法事先确定合适的聚类数目,导致聚类质量不高。获取良好聚类效果关键在于确定最佳的聚类数目。当使用该算法时需要我们预先设定聚类的个数,找到或设定聚类的个数往往需要经验或者通过使用肘部方法来找到最佳的聚类个数。然而肘部方法往往需要通过观察法来粗略地预估相对合理的类簇个数,肘部方法需要借助观察法来找出最佳的类簇数量,这就影响了其在自动化系统中的使用以及其的推广使用。
发明内容
本发明要解决的技术问题是提供一种自动识别肘部法则中最优K值的方法,首先通过给K-means指定不同的聚类数计算出样本数据对应的重心,根据重心和肘部法则计算出样本数据的平均畸变程度,进而计算相邻两个平均畸变程度的差值,找出相邻两个平均畸变程度差值中的最大值,并通过最大值对应的下标得到肘部法则为K-means聚类算法找到的最优K值。该方法降低了对人工识别肘部法则中得到最优K值的依赖,同样有利于肘部法则在自动化系统中为聚类提供最优K值的应用和推广。
本发明采用的技术方案是:一种自动识别肘部法则中最优K值的方法,包括如下步骤:
(1)设定K-means聚类算法中要查找最优K值的范围[1,M];
(2)计算设定范围聚类数对应的平均畸变程度;
(3)对计算得到的平均畸变程度进行0-10的规则化转换;
(4)将0-10规则化后的平均畸变程度与范围[1,M]封装成数据对;
(5)利用余弦定理求上述封装成的连续三个数据对之间的夹角;
(6)找出最小的夹角;
(7)利用最小的夹角得到最优的K值。
所述的一种自动识别肘部法则中最优K值的方法的具体步骤如下:
Step1、设定K-means聚类算法中要查找最优K值的范围Range:[1,2,…,M];
Step2、初始化k=1,且生成一个长度为M且所有元素为0的平均畸变程度列表MDL;
Step3、如果k∈Range,执行Step4;如果则跳过Step4-Step7,执行Step8;
Step4、用聚类数k来实例化sklearn.cluster.KMeans得到实例对象kmeans;
Step5、通过实例对象kmeans拟合N个样本数据,并得到对应的k个重心;
Step6、利用K-means算法的优化目标函数、得到的k个重心以及样本数据来求样本数据的平均畸变程度,并将求得的平均畸变程度追加到平均畸变程度列表中;
Step7、k=k+1,重复Step3-Step7;
Step8、初始化j=0,生成一个长度为M且所有元素为0的0-10的规则化平均畸变程度列表RMDL;
Step9、利用规则化公式将平均畸变程度列表中的值规则化到0-10之间,并将其追加到0-10的规则化平均畸变程度列表RMDL中;
Step10、将0-10规则化平均畸变程度列表RMDL中中的值与对应的聚类簇封装成对应的二维数据点,并依次追加到数据点列表PL中;
Step11、利用余弦定理公式计算上述相邻的三个数据点之间的角,并将其追加到角列表AL中;
Step12、找出AL中最小的角minA,得到minA在AL中的下标minAI,将minAI加上2即为在上述指定范围内找到的最优K值。
本发明的有益效果是:
聚类方法能够发现数据间的关系,将相似的归为一类,相异的归为一类,现有的肘部法则需要通过人工观察肘部方法画出的图进而识别最佳的聚类数K,本发明在将现有肘部法则中求出的平均畸变程度规则化到[0,10],然后将规则化后的平均畸变程度与要查找范围内的k值组成相应的数据点,并通过余弦定理来求连续三个点之间的夹角进而找出设定范围内的最佳聚类数K,而不再需要通过人工观察去识别指定范围内的最佳聚类数K。这样只是增加了少量的计算量,就可以达到能够自动识别肘部法则中的最优K值,进而降低了需要通过人工去观察肘部法则得到的曲线中的肘点(即最优K值)的依赖,进而使本发明的方法来替代现有的肘部法则来识别指定范围内最优的K值,进而使其可以应用到自动的聚类应用系统中。
附图说明
图1是本发明自动识别肘部法则中最优K值的方法的总体流程图;
图2是本发明中用到的具有3个类簇的90个样本数据集;
图3是本发明中90个样本数据的散点图;
图4是本发明通过肘部法则得到的需要人工干预的平均畸变程度与聚类数的关系图;
图5是本发明得到的最优K值之后在需要人工干预的平均畸变程度与聚类数的关系图上标注最优K值之后的图,圆圈处对应的聚类数即为本发明得到的最优K值。
具体实施方式
下面集合附图和具体实施方式,对本发明作进一步的说明。
实施例1:如图1-5所示,一种自动识别肘部法则中最优K值的方法,包括如下步骤:
(1)设定K-means聚类算法中要查找最优K值的范围[1,M];
(2)计算设定范围聚类数对应的平均畸变程度;
(3)对计算得到的平均畸变程度进行0-10的规则化转换;
(4)将0-10规则化后的平均畸变程度与范围[1,M]封装成数据对;
(5)利用余弦定理求上述封装成的连续三个数据对之间的夹角;
(6)找出最小的夹角;
(7)利用最小的夹角得到最优的K值。
一种自动识别肘部法则中最优K值的方法的具体步骤如下:
Step1、设定K-means聚类算法中要查找最优K值的范围Range:[1,2,…,M];
Step2、初始化k=1,且生成一个长度为M且所有元素为0的平均畸变程度列表MDL;
Step3、如果k∈Range,执行Step4;如果则跳过Step4-Step7,执行Step8;
Step4、用聚类数k来实例化sklearn.cluster.KMeans得到实例对象kmeans;
Step5、通过实例对象kmeans拟合N个样本数据,并得到对应的k个重心;
Step6、利用K-means算法的优化目标函数、得到的k个重心以及样本数据来求样本数据的平均畸变程度,并将求得的平均畸变程度追加到平均畸变程度列表中;
Step7、k=k+1,重复Step3-Step7;
Step8、初始化j=0,生成一个长度为M且所有元素为0的0-10的规则化平均畸变程度列表RMDL;
Step9、利用规则化公式将平均畸变程度列表中的值规则化到0-10之间,并将其追加到0-10的规则化平均畸变程度列表RMDL中;
Step10、将0-10规则化平均畸变程度列表RMDL中中的值与对应的聚类簇封装成对应的二维数据点,并依次追加到数据点列表PL中;
Step11、利用余弦定理公式计算上述相邻的三个数据点之间的角,并将其追加到角列表AL中;
Step12、找出AL中最小的角minA,得到minA在AL中的下标minAI,将minAI加上2即为在上述指定范围内找到的最优K值。
下面结合具体例子对本发明的方案进行详细描述:
例1:所述自动识别肘部法则中最优K值的方法的具体步骤如下:
Step1、设定K-means聚类算法中要查找最优K值的范围Range:[1,2,…,M];具体的:
设定K-means聚类算法中要要查找最优K值的范围Range为:[1,2,3,4,5,6,7,8,9,10];
Step2、初始化k=1,且生成一个长度为M且所有元素为0的平均畸变程度列表MDL;具体的:
将k初始化为1,即k=1;生成一个长度为10且所有元素为0的平均畸变程度列表MDL为:MDL=[0,0,0,0,0,0,0,0,0,0];
Step3、如果k∈Range,执行Step4;如果则跳过Step4-Step7,执行Step8;具体的:
例如当k=1时,1∈[1,2,3,4,5,6,7,8,9,10],即k∈Range,执行Step4(当k=2,3,4,5,6,7,8,9,10时与k=1时的情况类似);例如当k=11时, 即则跳过Step4-Step7,执行Step8;
Step4、用聚类数k来实例化sklearn.cluster.KMeans得到实例对象kmeans;具体的:
scikit-learn(http://scikit-learn.org/dev/)是Python的一个开源机器学习模块,它建立在NumPy,SciPy和matplotlib模块之上。scikit-learn最大的特点就是为用户提供各种机器学习算法接口,可以让用户简单、高效地进行数据挖掘和数据分析。例如用聚类数k=3来实例化sklearn.cluster.KMeans(n_clusters=k),得到实例对象kmeans;
Step5、通过实例对象kmeans拟合N个样本数据,并得到对应的k个重心;具体的:
通过Python的模块numpy中的均匀分布函数随机生成3个簇(即3类样本数据),每类样本数据有30个二维数据点,生成的90个样本数据如图2所示,图3是这90个样本数据画成的散点图。例如此时的聚类数k=3,通过实例对象kmeans拟合90个样本数据,得当对应的k=3个重心为:[[59.88920096,60.12720929],[10.82111511,10.09584162],[34.77577557,35.55172302]];
Step6、利用K-means算法的优化目标函数、得到的k个重心以及样本数据来求样本数据的平均畸变程度,并将求得的平均畸变程度追加到平均畸变程度列表中,具体的:
给定样本数据集D={x1,x2,…,xN},假设聚类的簇划分c={C1,C2,…,CK},K-means算法的目标是最小化平方误差:其中,是簇Ck的均值向量。我们称平方误差SSE为畸变程度,利用得到的SSE来平均畸变程度并将得到的平均畸变程度追加到平均畸变程度列表中MDL中。例如当聚类数k为3时,计算得到的md为:3.7133694541841544,并将该md存入MDL中合适的位置,此时MDL中的值为:[24.573797126997469,13.129398357186458,3.7133694541841544,0,0,0,0,0,0,0];
Step7、k=k+1,重复Step3-Step7;具体的:
当在重复Step3-Step7的过程中生成的聚类数k对应的重心(centroids)和平均畸变程度列表MDL中的值分别为:
当k=1时:
centroids:[[35.16203055,35.25825798]];
MDL:[24.573797126997469,0,0,0,0,0,0,0,0,0];
当k=2时:
centroids:[[59.88920096,60.12720929],[22.79844534,22.82378232]];
MDL:[24.573797126997469,13.129398357186458,0,0,0,0,0,0,0,0];
当k=3时:
centroids:[[10.82111511,10.09584162],[59.88920096,60.12720929],[34.77577557,35.55172302]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,0,0,0,0,0,0,0];
当k=4时:
centroids:[[10.82111511,10.09584162],[59.76097219,57.91556934],[34.77577557,35.55172302],[60.0815441,63.44466922]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,0,0,0,0,0,0];
当k=5时:
centroids:[[34.77577557,35.55172302],[10.34826121,7.40111566],[57.23437332,60.20981542],[62.54402859,60.04460317],[11.23486227,12.45372683]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,3.084676420375617,0,0,0,0,0];
当k=6时:
centroids:[[59.76097219,57.91556934],[10.34826121,7.40111566],[32.33276115,36.31919355],[36.9134132,34.8801863],[11.23486227,12.45372683],[60.0815441,63.44466922]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,3.084676420375617,2.8254436764486108,0,0,0,0];
当k=7时:
centroids:[[11.30769311,7.10440606],[57.07852945,58.16072984],[32.80667116,35.77045122],[10.49672977,12.09013199],[60.39150488,63.63541702],[37.72943219,35.22363071],[62.39824229,58.02437702]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,3.084676420375617,2.8254436764486108,2.5915599853175757,0,0,0];
当k=8时:
centroids:[[13.26733626,12.07031633],[57.07852945,58.16072984],[32.80667116,35.77045122],[7.65506307,11.2817618],[59.99518544,63.77142125],[62.59388798,58.44947679],[11.540946,6.93544672],[37.72943219,35.22363071]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,3.084676420375617,2.8254436764486108,2.5915599853175757,2.3294163211748233,0,0];
当k=9时:
centroids:[[31.7749079,38.3001178],[62.59388798,58.44947679],[13.26733626,12.07031633],[34.09752639,33.32671439],[10.84277835,7.05107292],[59.99518544,63.77142125],[37.42532684,36.23002666],[7.7308438,12.19490126],[57.07852945,58.16072984]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,3.084676420375617,2.8254436764486108,2.5915599853175757,2.3294163211748233,2.1147734102388598,0]
当k=10时:
centroids:[[57.12370209,57.80676166],[13.26733626,12.07031633],[33.63474358,34.31277964],[10.98310056,6.84101568],[57.40038016,63.81439607],[7.90510939,11.88010141],[62.39824229,58.02437702],[37.92238243,35.36471735],[62.76270804,63.07494238],[31.47923232,38.57894405]];
MDL:[24.573797126997469,13.129398357186458,3.7133694541841544,3.3965657236220546,3.084676420375617,2.8254436764486108,2.5915599853175757,2.3294163211748233,2.1147734102388598,1.9424923110766739];
Step8、初始化j=0,生成一个长度为M且所有元素为0的0-10的规则化平均畸变程度列表RMDL;具体的:
本例中M为10,即生成一个长度为10且所有元素为0的0-10的规则化平均畸变程度列表RMDL为:[0,0,0,0,0,0,0,0,0];
Step9、利用规则化公式将平均畸变程度列表中的值规则化到0-10之间,并将其追加到0-10的规则化平均畸变程度列表RMDL中,具体的:
规则化公式为:其中maxD表示平均畸变程度列表中最大的平均畸变程度、minD表示平均畸变程度列表中最小的平均畸变程度、Di表示平均畸变程度列表中第i+1个平均畸变程度(平均畸变程度列表的小标从0开始)、Ri表示第i+1个平均畸变程度经过规则化后的值。从0到M-1依次将平均畸变程度列表中的值依次用规则化公式将其转换为0-10规则化后的值,并依次追加到规则化平均畸变程度列表中,其伪代码为:
1.maxD=max(MDL)/*获取MDL中最大的平均畸变程度并赋值给maxD*/
2.minD=min(MDL)/*获取MDL中最的小平均畸变程度并赋值给minD*/
3.for(i=0;i<length;i++)/*length为MDL中的元素个数*/
3.1Di=MDL[i]
3.2/*将平均畸变程度规则化到[0,10]*/
3.3RDML[i]=Ri
例如,本例中的N为10,平均畸变程度列表中经过规则化后的规则化平均畸变程度列表中的值为:[10.0,4.9413144741079265,0.77921473596801083,0.64357887302574368,0.51290984416258656,0.40750330186847117,0.28128772226531573,0.15755420051676697,0.070626257483285979,0.0]
Step10、将0-10规则化平均畸变程度列表RMDL中的值与对应的聚类簇封装成对应的二维数据点,并依次追加到数据点列表PL中,具体的:
生成0-10规则化平均畸变程度和聚类数封装成二维数据点并依次追加到数据点列表PL中的伪代码为:
1.length=len(RMDL)/*计算RMDL中的元素个数并赋值给length*/
2.PL=[]/*初始化PL为空列表*/
3.for(i=0;i<length;i++)
3.1Point=(RDML[i],i+1)/*列表的小标从0开始,聚类数从1开始*/
3.2PL.append(Point)/*将Point追加到PL中*/
Step11、利用余弦定理公式计算上述相邻的三个数据点之间的角,并将其追加到角列表AL中;具体的:
假设相邻的3个数据点Pi(xi,yi),Pj(xj,yj),Pk(xk,yk)。其中xi,yi表示数据点列表PL中下标为i的数据点中的规则化后的平均畸变程度与聚类数;xj,yj表示数据点列表PL中下标为i的数据点中的规则化后的平均畸变程度与聚类数;xk,yk示数据点列表PL中下标为i的数据点中的规则化后的平均畸变程度与聚类数;i,j,k∈[1,2,…,n],1<i,j,k<n,j=i+1,k=j+1。∠PiPjPk=θ,a表示PiPj之间的距离,即b表示PjPk之间的距离,即c表示PiPk之间的距离,即我们用到的余弦定理公式为来求相邻的三个数据点之间的夹角,并将得到的夹角追加到夹角列表AL中。计算连续三个数据点之间的夹角,并将得到的弧度并转化为度,并将其依次追加到AL中的伪代码为:
1.AngleList=[]/*初始化AL为空列表*/
2.for(i=0,j=1,k=2;k<length;i++,j++,k++)/*length为PL中的元素个数*/
2.1xi,yi=PL[i];xj,yj=PL[j];xk,yk=PL[k]
2.2*计算PiPj之间的距离*/
2.3/*计算PjPk之间的距离*/
2.4/*计算PiPk之间的距离*/
2.5/*通过余弦定理得到夹角∠PiPjPk的弧度值*/
2.6/*将得到的连续三个点之间的夹角追加到AL中*/
经过余弦定理计算后得到的夹角列表中的值为:AL=[177.67205241837968,111.23422406723046,179.72037945756477,178.57252675019083,178.82354898843653,179.8599756180431,177.91455781756332,179.0717627517494]
Step12、找出AL中最小的角minA,得到minA在AL中的下标minAI,将minAI加上2即为在上述指定范围内找到的最优K值,具体的:
找到AL中最小的夹角minA以及其在AL中对应下标minAI,并得到在查找范围内最优K值的算法伪代码为:
1.用Python中内建函数min()求AL中的最小值并赋值给minA
2.minAI=AL.index(minA)/*Python中列表类型list有求下标函数index*/
3.K=minAI+2/*K即为得到的指定范围内的最优K值*/
AL中得到的最小夹角minA为:111.234224067,得到的指定范围内的最优K值为3,该聚类数3与我们模拟产生的90个样本数据有3类数据点一致。图4为通过肘部法则得到的平均畸变程度与类簇数量的关系,该图需要人工去查找最优的K值。图5为用本发明得到的最优K值3之后将其在需要人工干预的平均畸变程度与聚类数的关系图上用红色圆圈标注之后的图。
本发明只需要在肘部法则得到的中间结果平均畸变程度的基础上先对其进行0-10的规则化,然后对规则后的平均畸变程度与聚类数封装成数据对,进而利用余弦定理求连续相邻的三个数据点之间的夹角,最后通过的最小夹角求出最优的K值。这样只是增加了少量的计算量,就可以达到能够自动识别肘部法则中的最优K值,进而降低了需要通过人工去观察肘部法则得到的曲线中的肘点(即最优K值)的依赖,进而使本发明的方法可以应用到自动的聚类应用系统中。
上面结合附图对本发明的具体实施方式作了详细说明。本发明的方法不仅适合于像K-means聚类算法需要预先提供聚类数的问题,而且也可以将通过应用本发明方法得到的聚类数作为其它除了K-means聚类算法以外的聚类算法得到聚类数目的一个重要参考值。
以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (2)
1.一种自动识别肘部法则中最优K值的方法,其特征在于:包括如下步骤:
(1)设定K-means聚类算法中要查找最优K值的范围[1,M];
(2)计算设定范围聚类数对应的平均畸变程度;
(3)对计算得到的平均畸变程度进行0-10的规则化转换;
(4)将0-10规则化后的平均畸变程度与范围[1,M]封装成数据对;
(5)利用余弦定理求上述封装成的连续三个数据对之间的夹角;
(6)找出最小的夹角;
(7)利用最小的夹角得到最优的K值。
2.根据权利要求1所述的一种自动识别肘部法则中最优K值的方法,其特征在于:具体步骤如下:
Step1、设定K-means聚类算法中要查找最优K值的范围Range:[1,2,…,M];
Step2、初始化k=1,且生成一个长度为M且所有元素为0的平均畸变程度列表MDL;
Step3、如果k∈Range,执行Step4;如果则跳过Step4-Step7,执行Step8;
Step4、用聚类数k来实例化sklearn.cluster.KMeans得到实例对象kmeans;
Step5、通过实例对象kmeans拟合N个样本数据,并得到对应的k个重心;
Step6、利用K-means算法的优化目标函数、得到的k个重心以及样本数据来求样本数据的平均畸变程度,并将求得的平均畸变程度追加到平均畸变程度列表中;
Step7、k=k+1,重复Step3-Step7;
Step8、初始化j=0,生成一个长度为M且所有元素为0的0-10的规则化平均畸变程度列表RMDL;
Step9、利用规则化公式将平均畸变程度列表中的值规则化到0-10之间,并将其追加到0-10的规则化平均畸变程度列表RMDL中;
Step10、将0-10规则化平均畸变程度列表RMDL中的值与对应的聚类簇封装成对应的二维数据点,并依次追加到数据点列表PL中;
Step11、利用余弦定理公式计算上述相邻的三个数据点之间的角,并将其追加到角列表AL中;
Step12、找出AL中最小的角minA,得到minA在AL中的下标minAI,将minAI加上2即为在上述指定范围内找到的最优K值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711090620.9A CN107886124A (zh) | 2017-11-08 | 2017-11-08 | 一种自动识别肘部法则中最优k值的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711090620.9A CN107886124A (zh) | 2017-11-08 | 2017-11-08 | 一种自动识别肘部法则中最优k值的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107886124A true CN107886124A (zh) | 2018-04-06 |
Family
ID=61779535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711090620.9A Pending CN107886124A (zh) | 2017-11-08 | 2017-11-08 | 一种自动识别肘部法则中最优k值的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107886124A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804520A (zh) * | 2018-04-27 | 2018-11-13 | 厦门快商通信息技术有限公司 | 一种访客行为分类方法及系统 |
CN109949068A (zh) * | 2019-01-09 | 2019-06-28 | 深圳北斗应用技术研究院有限公司 | 一种基于预测结果的实时拼车方法和装置 |
CN110033141A (zh) * | 2019-04-22 | 2019-07-19 | 大唐环境产业集团股份有限公司 | 一种脱硫系统运行工况数据库的建立方法 |
CN110377798A (zh) * | 2019-06-12 | 2019-10-25 | 成都理工大学 | 基于角度熵的离群点检测方法 |
CN111505434A (zh) * | 2020-04-10 | 2020-08-07 | 国网浙江余姚市供电有限公司 | 一种低压配电表箱线路、表箱故障隐患识别方法 |
CN111738304A (zh) * | 2020-05-28 | 2020-10-02 | 思派健康产业投资有限公司 | 一种高维特征空间中基于聚类算法的就诊人群分组方法 |
CN112131606A (zh) * | 2020-09-24 | 2020-12-25 | 合肥城市云数据中心股份有限公司 | 一种基于K-means++结合肘部法自主聚类技术的动态数据差分隐私直方图发布方法 |
-
2017
- 2017-11-08 CN CN201711090620.9A patent/CN107886124A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804520A (zh) * | 2018-04-27 | 2018-11-13 | 厦门快商通信息技术有限公司 | 一种访客行为分类方法及系统 |
CN109949068A (zh) * | 2019-01-09 | 2019-06-28 | 深圳北斗应用技术研究院有限公司 | 一种基于预测结果的实时拼车方法和装置 |
CN110033141A (zh) * | 2019-04-22 | 2019-07-19 | 大唐环境产业集团股份有限公司 | 一种脱硫系统运行工况数据库的建立方法 |
CN110033141B (zh) * | 2019-04-22 | 2022-10-04 | 大唐环境产业集团股份有限公司 | 一种脱硫系统运行工况数据库的建立方法 |
CN110377798A (zh) * | 2019-06-12 | 2019-10-25 | 成都理工大学 | 基于角度熵的离群点检测方法 |
CN110377798B (zh) * | 2019-06-12 | 2022-10-21 | 成都理工大学 | 基于角度熵的离群点检测方法 |
CN111505434A (zh) * | 2020-04-10 | 2020-08-07 | 国网浙江余姚市供电有限公司 | 一种低压配电表箱线路、表箱故障隐患识别方法 |
CN111505434B (zh) * | 2020-04-10 | 2022-03-22 | 国网浙江余姚市供电有限公司 | 一种低压配电表箱线路、表箱故障隐患识别方法 |
CN111738304A (zh) * | 2020-05-28 | 2020-10-02 | 思派健康产业投资有限公司 | 一种高维特征空间中基于聚类算法的就诊人群分组方法 |
CN112131606A (zh) * | 2020-09-24 | 2020-12-25 | 合肥城市云数据中心股份有限公司 | 一种基于K-means++结合肘部法自主聚类技术的动态数据差分隐私直方图发布方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107886124A (zh) | 一种自动识别肘部法则中最优k值的方法 | |
Horng | Multilevel thresholding selection based on the artificial bee colony algorithm for image segmentation | |
CN105095494B (zh) | 一种对分类数据集进行测试的方法 | |
CN111079780A (zh) | 空间图卷积网络的训练方法、电子设备及存储介质 | |
CN106250979B (zh) | 一种基于互信息相似度策略的粒子群优化方法 | |
Goudos et al. | Application of an ensemble method to UAV power modeling for cellular communications | |
CN103886330A (zh) | 基于半监督svm集成学习的分类方法 | |
CN101923712A (zh) | 基于粒子群优化的K-means聚类算法的基因芯片图像分割法 | |
CN107256017B (zh) | 路线规划方法及系统 | |
Banharnsakun et al. | Object detection based on template matching through use of best-so-far ABC | |
Bhatt et al. | Comparison of CNN models for application in crop health assessment with participatory sensing | |
CN106780376A (zh) | 基于显著性检测和联合分割算法的背景图像分割方法 | |
Hamdaoui et al. | An efficient multi level thresholding method for image segmentation based on the hybridization of modified PSO and Otsu’s method | |
CN111368900A (zh) | 一种图像目标物识别方法 | |
CN113792803A (zh) | 前景信息引导的弱监督目标检测方法与系统 | |
Liu et al. | Learning transport cost from subset correspondence | |
CN111582373A (zh) | 一种基于加权迁移极限学习机算法的辐射源识别方法 | |
CN113408573B (zh) | 基于机器学习的瓷砖色号自动分类归类的方法及装置 | |
CN112183199B (zh) | 一种基于Fish-SVC的2.4GHz频段信号识别方法及系统 | |
CN110109005B (zh) | 一种基于序贯测试的模拟电路故障测试方法 | |
CN108205721B (zh) | 基于聚类的样条插值典型日负荷曲线选取装置 | |
CN114494819B (zh) | 一种基于动态贝叶斯网络的抗干扰红外目标识别方法 | |
CN109977797A (zh) | 基于排序损失函数的一阶目标检测器的优化方法 | |
Masooleh et al. | An improved fuzzy algorithm for image segmentation | |
CN108171253A (zh) | 基于l2范数规范化和余弦定理改进的肘部法则的方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180406 |