CN108256008A - 运用l1范数及余弦定理在均匀分布中求最优值的方法 - Google Patents
运用l1范数及余弦定理在均匀分布中求最优值的方法 Download PDFInfo
- Publication number
- CN108256008A CN108256008A CN201810004863.4A CN201810004863A CN108256008A CN 108256008 A CN108256008 A CN 108256008A CN 201810004863 A CN201810004863 A CN 201810004863A CN 108256008 A CN108256008 A CN 108256008A
- Authority
- CN
- China
- Prior art keywords
- angle
- distortion degree
- average distortion
- cluster
- values
- 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 39
- 238000012545 processing Methods 0.000 claims abstract description 32
- 238000003064 k means clustering Methods 0.000 claims abstract description 21
- 238000005457 optimization Methods 0.000 claims description 4
- 238000010801 machine learning Methods 0.000 abstract description 10
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000004458 analytical method Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000007621 cluster analysis Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 101100452593 Caenorhabditis elegans ina-1 gene Proteins 0.000 description 1
- 101100023387 Caenorhabditis elegans mina-1 gene Proteins 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种运用L1范数及余弦定理在均匀分布中求最优值的方法,属于机器学习中聚类分析技术领域。本发明包括首先对呈现均匀分布的样本数据设定K‑Means聚类算法中要搜索其最佳聚类K值的范围[Kn,Km];第二步计算搜索范围内的Km‑Kn+1个均匀分布的聚类数据对应的平均的畸变程度;最后对计算得到的Km‑Kn+1个平均畸变程度数据运用L1范数规范化处理以及进行余弦定理改进的肘部法则(Elbow Method)从而从呈现均匀分布的数据中求出最优聚类K值。本发明可以使得到的最优K值更具有客观性。
Description
技术领域
本发明涉及一种运用L1范数及余弦定理在均匀分布中求最优值的方法,本发明涉及的技术有机器学习中的K-Means聚类算法、余弦定理、肘部法则(Elbow Method)、L1范数规范化对K-Means聚类算法中得到的数据进行规范化处理,将规范化处理后的数据与搜索范围内的聚类数封装成数据点集,然后根据余弦定理将数据点集中每三个相邻数据点中的夹角求出最小夹角值,得到与之对应的K值,从而识别出最优K值的方法,属于机器学习中聚类分析技术领域技术。
背景技术
随着社会的发展,与电子相关的所有产业得到了快速发展,万物在线,世界成网。世界正处于信息经济阶段向共享经济阶段迈进的转折点,在不久的未来,所有人和物(物品和机器)在任何地点、任何时间永远在线,整个世界如同一张实时互动、并发、分布式的“网”(人联网、物联网、企联网、政联网),随着互联网的发展,人们产生的数据也呈指数型增长,人类也开始进入大数据时代,同时人们也发现了随着互联网快速的发展带来的大数据中蕴藏着财富和知识,人们从这些数据中得到想要内容,方便人们的生活以及科技的发展,从而衍生出了机器学习及数据挖掘相关技术。
机器学习通常与计算机科学有关,在机器学习中可以大致分为监督学习和非监督学习算法,而我们在本次发明中利用的是非监督学习算法中的聚类方法,聚类,或称为聚类分析(cluster analysis)是一种分组观察的方法,将更具相似性的样本归为一组,或一类(cluster),同组中的样本比其他组的样本更相似。聚类是用于找出不带标签数据的相似性的算法。其可以挖掘出大数据中有用的信息和知识。获取的信息和知识可以广泛应用于各种应用,如商务管理,生产控制,市场分析,科学探索和工程设计等领域。机器学习中的聚类方法可以分为基于划分聚类方法,基于层次聚类方法、基于网格聚类方法、基于密度聚类方法、基于神经网络聚类方法、基于统计学聚类方法。在本发明中我们使用基于划分聚类方法中常用的K-Means分析方法,K-Means聚类算法(K-means Clustering)是聚类模型中最为经典和易用的一个聚类模型。
获取较好聚类效果的关键在于确定最佳的聚类数目。由于K-Means聚类算法需要预先设定聚类的数目,然而事实上在某种程度上无法事先直接确定最佳的聚类数目。当使用K-Means聚类算法的时候,往往需要通过专家的丰富经验或者通过肘部法则来找到K-Means聚类算法中所需的聚类数目(最佳聚类数、最优K值)。然而肘部法则的方法往往需要通过将指定搜索范围内的聚类数目与其对应的平均畸变程度以关系曲线的形式呈现,进而通过人为粗略地观察预估出关系曲线上的肘点(最佳聚类数),这种通过人为观察得到的最佳聚类数目的方法存在着个人主观性,从而也不是很利于其在自动化系统中的使用及其它领域的推广使用。
发明内容
本发明要解决的技术问题是提供一种运用L1范数及余弦定理在均匀分布中求最优值的方法,首先通过给K-Means聚类算法设定最优K值的搜索范围[Kn,Km],然后根据不同的聚类数计算出样本数据点的聚类中心,根据计算得到的聚类中心和肘部法则计算出样本数据的平均畸变程度,进而通过L1范数规范化来处理得到的平均畸变程度,将经过规范化处理后的平均畸变程度和搜索范围[Kn,Km]内对应的聚类数封装成数据点集,进而利用余弦定理来计算封装数据点中的每三个相邻的数据点之间的夹角,进而从所有计算出的夹角中找出最小的夹角,再通过最小夹角对应的搜索范围内对应的K值列表得到最优K值。该方法降低了对人工通过可视化的观察法来识别肘部法则中得到最优K值的依赖,同样有利于肘部法则在自动化系统中为聚类提供最优K值的应用和推广。
本发明采用的技术方案是:一种运用L1范数及余弦定理在均匀分布中求最优值的方法,包括如下步骤:
(1)利用K-Means聚类算法中得到最佳K值的搜索范围;
(2)利用K-Means聚类算法中包含的所有Km-Kn+1个聚类数对应的平均畸变程度,之后对每个聚类数得到的平均畸变程度值进行L1范数规范化处理;
(3)将L1范数规范化处理后的Km-Kn+1个平均畸变程度与搜索范围内的Km-Kn+1个聚类数封装成一个二维数组,里面包含搜索范围内的每个K值和与其对应的平均畸变程度;
(4)利用余弦定理求上述封装成的Km-Kn+1个数据点中每三个相邻数据点之间的夹角,找出所有夹角中最小的夹角,继而通过最小夹角得到对应的最优K值;
所述的运用L1范数及余弦定理在均匀分布中求最优值方法的具体步骤如下:
(1)设定K-Means聚类算法中要搜索最优K值的范围:[Kn,Kn+1,…,Km-1,Km];
(2)对聚类化数K赋初值,即K=Kn,生成一个长度为Km-Kn+1且所有元素为0的平均畸变程度列表LAD;
(3)如果K属于[Kn,Km],则执行步骤(4)-(6);如果K不属于[Kn,Km],则跳过步骤(4)-(6),执行步骤(7);
(4)用K来实例化KMeans得到实例对象kmeans后对具有M个样本数据的数据集进行处理,并得到对应的K个聚类中心;
(5)利用K-Means聚类算法的优化目标函数、得到的K个聚类中心以及M个样本数据来求对应的平均畸变程度,并将求得的平均畸变程度增加到LAD;
(6)K=K+1,重新回到步骤(3);
(7)生成一个长度为Km-Kn+1且所有元素为0的L1范数规范化处理后的平均畸变程度列表NLAD,并将处理后的结果加入到NLAD;
(8)将L1范数规范化处理后的Km-Kn+1个平均畸变程度与K的搜索范围内的相同数量的聚类数封装成Km-Kn+1个数据点,并存入数据点列表DL中;
(9)利用余弦定理得到步骤(8)所产生的数据点中每三个相邻数据点之间的夹角,并将求得的夹角存到夹角列表AL中;
(10)找出AL列表中夹角最小的夹角Amin;
(11)得到最小夹角Amin,将Amin的值加2即在K值的搜索范围内找到最优K值。
本发明的有益效果是:
运用机器学习中的非监督聚类分析方法能够发现均匀分布数据中内在的联系。聚类分析方法是机器学习中最经典的数据分类方法,其能够发现数据间的关系,将相似的归为一类,相异的归为一类。现有的肘部法则需要通过可视化的观察法来识别肘部法则中画出的平均畸变程度与聚类数的关系曲线上的最优K值,本发明在将现有肘部法则中求出的平均畸变程度经过L1范数规范化处理,然后将规范化处理后的平均畸变程度与要搜索范围内的聚类数组成相应的数据点,并通过余弦定理从第一个数据点开始求每三个相邻数据点之间的夹角进而找出搜索范围内的最优K值,从而降低可视化的肘部法则对人的依赖。该发明只是在现有肘部法则的基础之上增加了对平均畸变程度进行L1范数规范化处理、数据点的封装以及余弦定理对数据的处理过程,就可以达到自动识别搜索范围内的最优K值,进而降低了现有肘部法则中需要通过人工来主观的识别搜索范围内最佳聚类数的依赖,进而使本发明的方法可以作为一种替代现有的肘部法则来识别搜索范围内最佳聚类数的方案,可以参考应用到需要识别数据分布特征为均匀分布或相似分布的自动的聚类应用系统中。
附图说明
图1为本发明的总体流程图;
图2为本发明中用到的具有3个聚类由150个(CA length,CA width)均匀分布的数据点组成的样本数据集的散点图;
图3为本发明通过肘部法则(Elbow method)得到的需要人工干预的平均畸变程度与聚类数的关系图;
图4为本发明改进的肘部法则得到的有关夹角与聚类数的关系图;
图5为本发明得到的最佳聚类数K之后在需要人工干预的平均畸变程度与聚类数的关系图上标注最佳聚类数K之后的图。
具体实施方式
下面结合附图和具体实施方式,对本发明作进一步的描述。
实施例1:如图1-5所示,一种运用L1范数及余弦定理在均匀分布中求最优值的方法,包括如下步骤::
(1)设定K-Means聚类算法中要搜索最优K值的范围[Kn,Km];
(2)利用K-Means均值聚类算法计算搜索范围[Kn,Km]内的Km-Kn+1个聚类数目对应的平均畸变程度以及对计算得到的所有平均畸变程度作L1范数规范化处理;
(3)将L1范数规范化处理后的Km-Kn+1个平均畸变程度数与搜索范围[Kn,Km]内的Km-Kn+1个聚类数封装成Km-Km+1个数据点;
(4)利用余弦定理求上述封装成的Km-Kn+1个数据点中每三个相邻数据点之间的夹角,找出所有夹角中最小的夹角,继而通过最小夹角得到对应的最优K值;
运用L1范数及余弦定理在均匀分布中求最优值方法的具体步骤如下:
(1)设定K-Means聚类算法中要搜索最优K值的范围:[Kn,Kn+1,…,Km-1,Km];
(2)对聚类化数K赋初值,即K=Kn,生成一个长度为Km-Kn+1且所有元素为0的平均畸变程度列表LAD;
(3)如果K属于[Kn,Km],则执行步骤(4)-(6);如果K不属于[Kn,Km],则跳过步骤(4)-(6),执行步骤(7);
(4)用K来实例化KMeans得到实例对象kmeans后对具有M个样本数据的数据集进行处理,并得到对应的K个聚类中心;
(5)利用K-Means聚类算法的优化目标函数、得到的K个聚类中心以及M个样本数据来求对应的平均畸变程度,并将求得的平均畸变程度增加到LAD;
(6)K=K+1,重新回到步骤(3);
(7)生成一个长度为Km-Kn+1且所有元素为0的L1范数规范化处理后的平均畸变程度列表NLAD,并将处理后的结果加入到NLAD;
(8)将L1范数规范化处理后的Km-Kn+1个平均畸变程度与K的搜索范围内的相同数量的聚类数封装成Km-Kn+1个数据点,并存入数据点列表DL中;
(9)利用余弦定理得到步骤(8)所产生的数据点中每三个相邻数据点之间的夹角,并将求得的夹角存到夹角列表AL中;
(10)找出AL列表中夹角最小的夹角Amin;
(11)得到最小夹角Amin,将Amin的值加2即在K值的搜索范围内找到最优K值。
下面结合具体例子对本发明的方案进行详细描述:
所述自动识别肘部法则中最优K值的方法的具体步骤如下:
(1)设定K-Means聚类算法中要搜索最优K值的范围:[Kn,Kn+1,…,Km-1,Km];具体的:
假设K-Means聚类算法中要搜索最佳K值范围中的Kn=0,Km=8,即搜索最佳K值的范围为:[0,1,2,3,4,5,6,7,8];本例中涉及的样本数据集中包含的实际聚类数为3,即实际聚类数在最佳K值的搜索范围中;
(2)对聚类化数K赋初值,即K=Kn,生成一个长度为Km-Kn+1且所有元素为0的平均畸变程度列表LAD;具体的:
由于(1)中假设Kn=0,所以将K初始化为0,即k=0;由于(1)中假设Kn=0,Km=8,所以生成一个长度为9且所有元素为0的平均畸变程度列表LAD,即LAD=[0,0,0,0,0,0,0,0,0];
(3)如果K属于[Kn,Km],则执行步骤(4)-(6);如果K不属于[Kn,Km],则跳过步骤(4)-(6),执行步骤(7);具体的:
例如当K=3时,3属于[0,1,2,3,4,5,6,7,8],即K属于[Kn,Km],执行步骤(4);例如当K=10时,9不属于[0,1,2,3,4,5,6,7,8],即K不属于[Kn,Km],则跳过步骤(4)-(6),执行步骤(7);
(4)用K来实例化KMeans得到实例对象kmeans后对具有M个样本数据的数据集进行处理,并得到对应的K个聚类中心;具体的:
Python中的机器学习模块Scikit-Learn,其基于BSD开源许可证。基本功能主要被分为六个部分:分类、回归、聚类、数据降维、模型选择、数据预处理。而且支持多种格式的数据,包括经典的Iris数据,LibSVM格式数据等。同时依赖NumPy,SciPy和Matplotlib等模块。例如用k=4来实例化KMeans,得到实例对象kmeans。使用的150个均匀分布的样本数据点,这150个样本数据点中包含3类均匀分布,图2为这150个样本数据点得到的散点图,图中的横轴表示CA length,纵轴表示CA width。例如此时的聚类数K=3,通过实例对象kmeans对具有150个样本数据集进行处理,得到对应的3个聚类中心为:[[3.006329353320404,2.2845259988039315],[3.140351091667809,3.1361917962313393],[3.1330843432635973,3.1374010230245584]];
(5)利用K-Means聚类算法的优化目标函数、得到的K个聚类中心以及M个样本数据来求对应的平均畸变程度,并将求得的平均畸变程度增加到LAD;
具体的:
给定样本数据集B={x1,x2,…,xN},假设聚类的簇划分C={y1,y2,…,yk},K-means算法的目标是最小化平方误差:其中,k表示K个聚类中心,Ci表示第几个中心,dist表示的是欧几里得距离。我们称平方误差SSE为畸变程度,利用得到的SSE来计算平均畸变程度其中N为聚类总数,并将得到的平均畸变程度追加到平均畸变程度列表LAD中。例如当聚类数K为3时,计算得到的AD为:0.347927925390003883,并将该AD存入LAD中合适的位置,此时LAD中的值为:[2.0198464741718309,1.0799225697511887,0.37951020997701923,0,0,0,0,0,0,0];
(6)K=K+1,重新回到步骤(3);具体的:
当在重新回到步骤(3)的过程中生成的聚类数K对应的聚类中心(centers)和平均畸变程度列表LAD中的值分别为:
当K=0时:
centers:[[3.006329353320404,2.2845259988039315];
LAD:[0.7249878501506478,0,0,0,0,0,0,0,0];
当K=1时:
centers:[[3.006329353320404,2.2845259988039315],[3.140351091667809,3.1361917962313393]];
LAD:[0.7249878501506478,0.54537003072889712,0,0,0,0,0,0,0];
当K=2时:
centers:[[3.006329353320404,2.2845259988039315],[3.140351091667809,3.1361917962313393],[3.1330843432635973,3.1374010230245584]];
LAD:[0.7249878501506478,0.54537003072889712,0.41919882172598327,0,0,0,0,0,0];
当K=3时:
centers:[[3.006329353320404,2.2845259988039315],[3.140351091667809,3.1361917962313393],[3.1330843432635973,3.1374010230245584][5.25555556,3.67037037]];
LAD:[0.8349878501506478,0.55537003072889712,0.41919882172598327,0.37354272204952771,0,0,0,0,0];
当K=4时:
centers:[[5.8175,2.6925],[7.43846154,3.13076923],[4.772,2.9],[6.50487805,3.03414634],[5.19677419,3.63870968]];
LAD:[0.8349878501506478,0.55537003072889712,0.41919882172598327,0.37354272204952771,0.33212455707301725,0,0,0,0];
当K=5时:
centers:[[4.76,3.184],[6.55,3.05555556],[5.92368421,2.74736842],[5.28333333,3.70833333],[7.43846154,3.13076923],[5.22142857,2.45714286]];
LAD:[0.8349878501506478,0.55537003072889712,0.41919882172598327,0.37354272204952771,0.33212455707301725,0.30468670181725122,0,0,0];
当K=6时:
centers:[[4.94285714,2.38571429],[5.28333333,3.70833333],[6.22307692,2.7],[7.475,3.125],[5.67407407,2.74444444],[4.76,3.184],[6.6,3.13793103]];
LAD:[0.8349878501506478,0.55537003072889712,0.41919882172598327,0.37354272204952771,0.33212455707301725,0.30468670181725122,0.27584094008425264,0,0];
当K=7时:
centers:[[4.70952381,3.15238095],[6.62,3.09666667],[5.628,2.704],[7.475,3.125],[6.15357143,2.76785714],[5.52857143,4.04285714],[5.15238095,3.52857143],[4.9,2.33333333]];
LAD:[0.8349878501506478,0.55537003072889712,0.41919882172598327,0.37354272204952771,0.33212455707301725,0.30468670181725122,0.27584094008425264,0.25745083837712651,0];
当K=8时:
centers:[[7.50909091,3.13636364],[5.64583333,2.70416667],[4.70952381,3.15238095],[6.696,3.088],[5.52857143,4.04285714],[4.94285714,2.38571429],[6.09285714,3.12142857],[6.265,2.625],[5.15238095,3.52857143]];
LAD:[0.37351551,0.19874931,0.0702974,0.06449563,0.0591628,0.05413148,0.05030973,0.04646806,0.04272141,0.04014867]
(7)生成一个长度为Km-Kn+1且所有元素为0的L1范数规范化处理后的平均畸变程度列表NLAD,并将处理后的结果加入到NLAD;具体的:
本例中由于(1)中假设Kn=0,Km=8,即生成一个长度为9且所有元素为0的L1范数规范化处理后平均畸变程度列表为:[0,0,0,0,0,0,0,0];
(8)将L1范数规范化处理后的Km-Kn+1个平均畸变程度与K的搜索范围内的相同数量的聚类数封装成Km-Kn+1个数据点,并存入数据点列表AD中;
具体的:L1范数规范化处理公式为:其中LAD[n]代表平均畸变程度列表中第ki+1平均畸变程度(平均畸变程度列表的小标从0开始)。L1表示LAD[n]经过L1范数规范化处理后的值。本例中由于(1)中假设Kn=0,Km=8,所以从0到8依次将平均畸变程度列表中的值依次用L1范数规范化处理公式进行处理,并将得到的值依次追加到NLAD中。
LAD中的值中经过L1范数规范化处理后规范化平均畸变程度列表NLAD中的值为:[2.0287707965123429,1.0795182029514097,0.38182434015616079,0.35031169023833242,0.32134612350887498,0.29401823765297674,0.27326018331127577,0.25239391613878848,0.23204377233655504];
(9)利用余弦定理得到步骤(8)所产生的数据点中每三个相邻数据点之间的夹角,并将求得的夹角存到夹角列表AL中;具体的:
假设三个相邻的3个数据点Pi(xi,yi),Pj(xj,yj),Pk(xk,yk)。其中xi,yi表示数据点列表AD中下标为i的数据点中的规则化后的平均畸变程度与聚类数;xj,yj表示数据点列表AD中下标为j的数据点中的规则化后的平均畸变程度与聚类数;xk,yk示数据点列表AD中下标为k的数据点中的规则化后的平均畸变程度与聚类数;i,j,k属于[Kn,Km+1,…,Km-1,Km],Kn≤i,j,k≤Km,j=i+1,k=j+1。∠PiPjPk=θ,a表示PiPj之间的距离,即 b表示PjPk之间的距离,即 c表示PiPk之间的距离,即我们用到的余弦定理公式为来求相邻的三个数据点之间的夹角(夹角的单位为弧度),并将得到的夹角追加到夹角列表AL中。计算相邻三个数据点之间的夹角,并将其依次追加到AL中。
经过余弦定理计算后得到的夹角列表中的值为:AL=[2.8115835788775407,2.6654352998138138,3.124663037786523,3.056703465363709,3.1078009935443216,3.1315857838715098,3.0592485387806985,3.1250713559764147];
(10)找出AL列表中夹角最小的夹角Amin;具体的
找到AL中最小的夹角minA=2.29024300411以及其在AL中对应下标minA1=0;
(11)得到最小夹角An,将An的值加2即在K值的搜索范围内找到最优K值。
具体的:
由(10)可知AL中得到的最小夹角minA=2.29024300411,其在AL中对应的下标为minA1=0,所以得到搜索范围内的最佳聚类数为2,该最佳聚类数2与150个样本数据点中包含3类均匀分布是一致的。图3为通过肘部法则得到的平均畸变程度与聚类数量的关系,该图需要人工去查找最佳的聚类数。图4为本发明改进的肘部法则得到的有关夹角与聚类数的关系图。图5为用本发明得到的最佳聚类数3之后将其在需要人工干预的平均畸变程度与聚类数的关系图上用圆圈标注之后的图。
附图及涉及符号字母公式说明:
图1是本发明基于L1范数和余弦定理改进的肘部法则求最优值方法的总体流程图;图2是本发明中用到的具有3个聚类由150个(CA length,CA width)均匀分布的数据点组成的样本数据集的散点图;图3是本发明通过肘部法则(Elbow method)得到的需要人工干预的平均畸变程度与聚类数的关系图;图4是本发明改进的肘部法则得到的有关夹角与聚类数的关系图;图5是本发明得到的最佳聚类数K之后在需要人工干预的平均畸变程度与聚类数的关系图上标注最佳聚类数K之后的图,图中圆圈对应的聚类数即为本发明得到的最优聚类数K值。
K为本次均匀分布中聚类数;Kn为K值范围的最小取值;Km为K值范围的最大取值;M为实验样本数;LAD代表平均畸变程度;NLAD为L1范数规范化处理后的平均畸变程度列表;DL为L1范数规范化处理后的Km-Kn+1个平均畸变程度与K的搜索范围内的相同数量的聚类数封装成Km-Kn+1个数据点列表;AL为数据点列表中每三个相邻数据点之间的夹角;Amin代表AL列表中夹角最小的夹角;CA length及CA width代表实验中均匀分布的样本数据的散点图的横轴和纵轴;B代表样本数据;C代表聚类的簇划分;K-means算法的目标是最小化平方误差:其中,SSE为畸变程度,x为聚类的簇划分中的样本数据,∈代表属于符号,k表示K个聚类中心,Ci表示第几个中心,dist表示的是欧几里得距离。我们称平方误差SSE为畸变程度,平均畸变程度 其中N为聚类总数,表示SSE;Pi(xi,yi),Pj(xj,yj),Pk(xk,yk)表示三个相邻的3个数据点,xi,yi表示数据点列表AD中下标为i的数据点中的规则化后的平均畸变程度与聚类数,xj,yj表示数据点列表AD中下标为j的数据点中的规则化后的平均畸变程度与聚类数;xk,yk示数据点列表AD中下标为k的数据点中的规则化后的平均畸变程度与聚类数;∠PiPjPk=θ,θ表示三个角形成的角的度数,a表示PiPj之间的距离;b表示PjPk之间的距离;c表示PiPk之间的距离。
在本发明中运用肘部法则得到的中间结果平均畸变程度的基础上先对其进行L1范数规范化处理,而后与聚类数封装成数据点,之后利用余弦定理求每三个相邻的数据点之间的夹角,最后通过最小夹角求出最佳的聚类数。这样就可以达到自动识别搜索范围内的最优K值,进而降低了现有肘部法则中需要通过人工来主观的观察得到搜索范围内最佳聚类数的依赖,所要本发明的方法可以作为一种替代现有的肘部法则来识别搜索范围内最佳聚类数的参考方案,使其可以应用到自动的聚类应用系统中。
本发明中涉及的技术方法不仅适合于像K均值聚类算法需要预先提供聚类数的问题作为参考方案,而且也可以将通过应用本发明方法得到的聚类数作为其它除了K均值聚类算法以外的聚类算法得到聚类数目的一个重要参考值。
以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (2)
1.一种运用L1范数及余弦定理在均匀分布中求最优值的方法,其特征在于:包括如下步骤:
(1)设定K-Means聚类算法中要搜索最优K值的范围[Kn,Km];
(2)利用K-Means均值聚类算法计算搜索范围[Kn,Km]内的Km-Kn+1个聚类数目对应的平均畸变程度以及对计算得到的所有平均畸变程度作L1范数规范化处理;
(3)将L1范数规范化处理后的Km-Kn+1个平均畸变程度数与搜索范围[Kn,Km]内的Km-Kn+1个聚类数封装成Km-Km+1个数据点;
(4)利用余弦定理求上述封装成的Km-Kn+1个数据点中每三个相邻数据点之间的夹角,求得夹角中的最小夹角;
(5)利用找到的最小夹角得到最优的K值。
2.根据权利要求书1所述的运用L1范数及余弦定理在均匀分布中求最优值的方法,其整个过程中的具体步骤如下:
(1)设定K-Means聚类算法中要搜索最优K值的范围:[Kn,Kn+1,…,Km-1,Km];
(2)对聚类化数K赋初值,即K=Kn,生成一个长度为Km-Kn+1且所有元素为0的平均畸变程度列表LAD;
(3)如果K属于[Kn,Km],则执行步骤(4)-(6);如果K不属于[Kn,Km],则跳过步骤(4)-(6),执行步骤(7);
(4)用K来实例化KMeans得到实例对象kmeans后对具有M个样本数据的数据集进行处理,并得到对应的K个聚类中心;
(5)利用K-Means聚类算法的优化目标函数、得到的K个聚类中心以及M个样本数据来求对应的平均畸变程度,并将求得的平均畸变程度增加到LAD;
(6)K=K+1,重新回到步骤(3);
(7)生成一个长度为Km-Kn+1且所有元素为0的L1范数规范化处理后的平均畸变程度列表NLAD,并将处理后的结果加入到NLAD;
(8)将L1范数规范化处理后的Km-Kn+1个平均畸变程度与K的搜索范围内的相同数量的聚类数封装成Km-Kn+1个数据点,并存入数据点列表DL中;
(9)利用余弦定理得到步骤(8)所产生的数据点中每三个相邻数据点之间的夹角,并将求得的夹角存到夹角列表AL中;
(10)找出AL列表中夹角最小的夹角Amin;
(11)得到最小夹角Amin,将Amin的值加2即在K值的搜索范围内找到最优K值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810004863.4A CN108256008A (zh) | 2018-01-03 | 2018-01-03 | 运用l1范数及余弦定理在均匀分布中求最优值的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810004863.4A CN108256008A (zh) | 2018-01-03 | 2018-01-03 | 运用l1范数及余弦定理在均匀分布中求最优值的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108256008A true CN108256008A (zh) | 2018-07-06 |
Family
ID=62725623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810004863.4A Pending CN108256008A (zh) | 2018-01-03 | 2018-01-03 | 运用l1范数及余弦定理在均匀分布中求最优值的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108256008A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112200220A (zh) * | 2020-09-18 | 2021-01-08 | 中国航空无线电电子研究所 | 一种基于数据归纳的飞机机载设备健康监控方法 |
-
2018
- 2018-01-03 CN CN201810004863.4A patent/CN108256008A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112200220A (zh) * | 2020-09-18 | 2021-01-08 | 中国航空无线电电子研究所 | 一种基于数据归纳的飞机机载设备健康监控方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Aldino et al. | Implementation of K-means algorithm for clustering corn planting feasibility area in south lampung regency | |
Ramesh et al. | Plant disease detection using machine learning | |
US10769432B2 (en) | Automated parameterization image pattern recognition method | |
CN113761259A (zh) | 一种图像处理方法、装置以及计算机设备 | |
Ghamisi et al. | A novel evolutionary swarm fuzzy clustering approach for hyperspectral imagery | |
CN111553240A (zh) | 一种玉米病害病情分级方法、系统和计算机设备 | |
Angelin et al. | Outlier Detection using Clustering Techniques–K-means and K-median | |
Sabri et al. | Nutrient deficiency detection in maize (Zea mays L.) leaves using image processing | |
Praveen et al. | To detect plant disease identification on leaf using machine learning algorithms | |
Tan et al. | Rapid fine-grained classification of butterflies based on FCM-KM and mask R-CNN fusion | |
CN112949517A (zh) | 基于深度迁移学习的植物气孔密度和开度识别方法及系统 | |
Borman et al. | Classification of Medicinal Wild Plants Using Radial Basis Function Neural Network with Least Mean Square | |
Rethik et al. | Attention Based Mapping for Plants Leaf to Classify Diseases using Vision Transformer | |
CN110175631A (zh) | 一种基于共同学习子空间结构和聚类指示矩阵的多视图聚类方法 | |
CN108256008A (zh) | 运用l1范数及余弦定理在均匀分布中求最优值的方法 | |
CN117611918A (zh) | 基于层次神经网络的海洋生物分类方法 | |
Riomoros et al. | Automatic image segmentation of greenness in crop fields | |
CN109409394A (zh) | 一种基于半监督聚类的cop-kmeans方法与系统 | |
Raheem et al. | Optimal k-means clustering using artificial bee colony algorithm with variable food sources length. | |
Lai | Segmentation study on enterprise customers based on data mining technology | |
Tang et al. | Feature extraction and recognition based on machine vision application in lotus picking robot | |
Selvi et al. | Tomato Leaf Disease Detection using Image Processing | |
Chandrasekaran et al. | Detection of crops and their diseases using machine learning | |
Jun et al. | Evaluation on formation rate of Pleurotus eryngii primordium under different humidity conditions by computer vision | |
Liu | RETRACTED ARTICLE: Optical pattern recognition image preprocessing based on hybrid cluster intelligent algorithm |
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 |
Application publication date: 20180706 |
|
RJ01 | Rejection of invention patent application after publication |