k means为什么是局部最优算法中属于局部处理的是

这里将介绍无监督学习中的聚类算法中属于局部处理的是这将是一个激动人心的时刻,因为这是我们学习的第一个非监督学习算法中属于局部处理的是我们将要让计算机学习无标签数据,而不是此前的标签数据.那么什么是无监督学习呢

首先,拿监督学习来进行比较这是一个典型的监督学习的例子,有一个带标签的训练集目标是找到一条能够区分正样本和负样本的决策边界,如下图:

在一个典型的监督学习中我们有一个有标签嘚训练集,我们的目标是找到能够区分正样本和负样本的决策边界在这里的监督学习中,我们有一系列标签我们需要据此拟合一个假設函数

与监督学习不同的是在非监督学习中,我们的数据没有附带任何标签我们拿到的数据就是这样的:

在这里我们有一系列点,卻没有标签

因此,我们的训练集可以写成只有x^(1),x^(2)…..一直到x^(m)我们没有任何标签y。

因此图上画的这些点没有标签信息。也就是说在非监督学习中,我们需要将一系列无标签的训练数据输入到一个算法中属于局部处理的是中,然后我们告诉这个算法中属于局部处理的是赽去为我们找找这个数据的内在结构给定数据。

我们可能需要某种算法中属于局部处理的是帮助我们寻找一种结构图上的数据看起来可鉯分成两个分开的点集(称为簇),一个能够找到我圈出的这些点集的算法中属于局部处理的是就被称为聚类算法中属于局部处理的是。

这将是第一个非监督学习算法中属于局部处理的是当然,此后还将提到其他类型的非监督学习算法中属于局部处理的是它们可以为峩们找到其他类型的结构或者其他的一些模式,而不只是簇

我们将先介绍聚类算法中属于局部处理的是。此后我们将陆续介绍其他算法中属于局部处理的是。那么聚类算法中属于局部处理的是一般用来做什么呢

1.市场分割。也许你在数据库中存储了许多客户的信息而伱希望将他们分成不同的客户群,这样你可以对不同类型的客户分别销售产品或者分别提供更适合的服务

2.社交网络分析:事实上有许多研究人员正在研究这样一些内容,他们关注一群人关注社交网络,例如FacebookGoogle+,或者是其他的一些信息比如说:你经常跟哪些人联系,而這些人又经常给哪些人发邮件由此找到关系密切的人群。因此这可能需要另一个聚类算法中属于局部处理的是,你希望用它发现社交網络中关系密切的朋友

3.使用聚类算法中属于局部处理的是来更好的组织计算机集群,或者更好的管理数据中心因为如果你知道数据中惢中,那些计算机经常协作工作那么,你可以重新分配资源重新布局网络。由此优化数据中心优化数据通信。

4.研究如何利用聚类算法中属于局部处理的是了解星系的形成然后用这个知识,了解一些天文学上的细节问题

聚类问题中,会给定一组未加标签的数据集希望有一个算法中属于局部处理的是能够自动地将这些数据分成有紧密关系的子集或簇。K-Means算法中属于局部处理的是现在是最火热也是最為广泛应用的聚类算法中属于局部处理的是这里将介绍K-Means算法中属于局部处理的是的定义及原理。

(一)K-均值算法中属于局部处理的是原理

假設有一个无标签数据集如下图所示:

现在想将其分为两个簇使用K-Means算法中属于局部处理的是来进行操作,操作步骤:

1.首先随机生成两个点这两点叫做聚类中心

K-Means算法中属于局部处理的是是一个迭代算法中属于局部处理的是它会做两件事,第一个是簇分配第二个是移动聚类中心。

2.簇分配K-Means算法中属于局部处理的是中每次内循环的第一步要进行簇分配也就是说,遍历每个样本点根据每个样本与红色聚類中心更近还是蓝色中心更近来将每个样本点分配个两个聚类中心之一。具体的说就是讲靠近蓝色聚类中心的点染成蓝色,靠近红色聚類中心的点染成红色

3.移动聚类中心K-Means算法中属于局部处理的是中每次内循环的第二步要移动聚类中心要做是找到所有蓝点并计算出它們的均值然后把蓝色聚类中心移到那里,红色聚类中心也是一样的操作

4.然后接着继续做簇分配和移动聚类中心迭代多次之后就会唍成最终的两个点集的聚类,这就可以说K-Means算法中属于局部处理的是已经聚合了

(二)K-均值算法中属于局部处理的是实现思路

K是聚簇中心个数,苐二个输入时训练集.

其中我们对应样本X^(i)时一个n维向量,默认丢弃x_0=1

第二步:簇分配,遍历m个样本,判断每个样本到底距离哪一个聚簇中心更近,将其染荿对应颜色(编号)

第三步:更新各个聚簇中心坐标,等于这个簇中所有点的均值

补充:对于一个没有点的聚簇中心,我们可以直接移除(例如我们设置K=3,洏实际只有2个簇,则最后会移除掉一个)

(三) K-均值算法中属于局部处理的是,解决分离不佳的簇

目前为止,K-Means算法中属于局部处理的是都基于像下图Φ这样的数据集它们很明显是可以分成3个簇的数据。

但在实际中K-Means算法中属于局部处理的是也会用于下图中这样的数据集,看起并不能佷好地分成几个簇

实际例子中,要根据顾客的身高体重来设计T-恤的尺寸小号、中号、大号,那么3中尺码又该设计多大有一个方法就昰对上图中的数据集执行K-Means算法中属于局部处理的是,算法中属于局部处理的是可能会将数据分成下图中的3个簇

所以尽管数据集不是很明顯的能分成3个簇,K-Means算法中属于局部处理的是还是能将这些数据分为3个簇这类似于市场细分的案例。

类似于之前提到的线性回归、逻辑回歸等算法中属于局部处理的是K-Means算法中属于局部处理的是也有一个优化目标函数或者用于最小化的代价函数,这里将探讨这个优化目标函數是什么

这里的学习主要有两方面的原因:

1.了解什么是K均值的优化目标函数,这将能帮助我们调试学习算法中属于局部处理的是确保K均值算法中属于局部处理的是是在正确运行中
2.我们该怎样运用这个来帮助K均值找到更好的簇,并且避免局部最优解

(一)3组变量进行跟蹤

执行K-Means算法中属于局部处理的是时,将会对3组变量进行跟踪 

1.它表示的是当前样本所属的那个簇的索引或序号 

3.它表示所属的那个簇的聚类Φ心 

这个代价函数有时也叫失真代价函数或者K-Means算法中属于局部处理的是的失真。

第一步簇分配的步骤中其实就是在最小化代价函数J。(汾配点不动聚簇中心

第二步移动聚类中心的步骤中,其实就是选择μ值来最小化代价函数J(只移动聚簇中心

将讨论如何初始化K-Means算法Φ属于局部处理的是,更重要的是探讨如何使算法中属于局部处理的是避开局部最优

(一)随机初始化聚簇中心

那么如何初始化聚类中惢,这里有几种不同的方法可以用来随机初始化聚类中心通常用下面的这种方法:

1)应该把聚类中心的数值K设置为比训练样本数量m小嘚值;

(2)随机挑选K个训练样本

(3)设定μ1,...,μk,让它们等于这K个样本

这就是一个随机初始化聚类中心的方法,通过上面的两幅图可能会猜到K-Means算法中属于局部处理的是最终可能会收敛得到不同的结果,这取决于聚类的初始化状态---具体而言K-均值算法中属于局部处理的是鈳能会落在局部最优

如果我们对上面训练集,随机初始化较好那么我们就很容易获得3个不错的簇:

但是如果随机初始化得到的结果并不恏,就可能会得到不同的局部最优值:

实际上上述右图中的红色聚类只捕捉到了一个无标签的样本,而局部最优这个术语指的是代价函數J的局部最优

因此,如果想让找到最优可能的聚类可以尝试多次随机初始化,以此来保证能够得到一个足够好的结果下面是多次随機初始化的具体做法:

最后要做的是,在所有的100种分类数据的方法中选取代价最小的一个也就是代价函数J最小的事实证明,在聚类数K较尛的情况下(2~10个)使用多次随机初始化会有较大的影响,而如果K很大的情况多次随机初始化可能并不会有太大效果。

将探讨K-Means算法中属於局部处理的是如何去选择聚类数量或者说是如何选择参数K的值

选择聚类数量并不容易,因为通常在数据集中有几个聚类是不清楚的看下面这样的数据集,有时候会觉得有4个聚类有时会觉得只有2个聚类。

正是因为这样的原因用一个自动化的算法中属于局部处理的是來选择聚类数量是很困难的。

当讨论选择聚类方法时可能会谈到肘部法则这个方法,在肘部法则中要做的是改变K也就是聚类总数。

先鼡一个类来聚类这就意味着所有的数据都会分到一个类里,然后计算代价函数J

用更多的类执行K-Means算法中属于局部处理的是可能就会得到哽小的J值,从下图中可以看到在K=3处有个突出来的部分把这就叫作“肘部法则”。

当应用“肘部法则”时遇到类似上图,这将是一种用來选择聚类个数的合理方法但是“肘部法则”并不常用的原因是在实际运用到聚类问题上时,往往最后会得到一条看上去相当模糊的曲線如下图:

观察上图,看不到某个突出的点看上去J值是连续下降的,所以这样并不能确定拐点合适的位置这种情况下用“肘部法则”来选择聚类数目是很困难的

(二)另外一种选择K值的思路:决定聚类数量更好的方式是看哪个聚类数量能更好地适应后续的目的(看需求)

思考如果有5个分类,T恤能否更好地满足顾客的需求可以卖出多少T恤?客户是否会感到满意所以考虑到后续的发展,就可以帮助你来选择是3种尺码好一些还是用5种尺码更适合

大部分时候聚类数量K仍然是通过手动、人工输入或者经验来决定的,一种可以尝试方式昰“肘部法则”但不能期望它每次都有效果,选择聚类数量更好的思路是问自己运行K-Means算法中属于局部处理的是的目的是什么然后再决萣聚类数量K取多少更好地服务于后续的目的。

}

聚类分析用于对未知类别的样本進行划分将它们按照一定的规则划分成若干个类族,把相似(距高相近)的样本聚在同一个类簇中 把不相似的样本分为不同类簇,从而揭礻样本之间内在的性质以及相互之间的联系规律

聚类算法中属于局部处理的是将未标记的样本自动划分为多个类簇但不会提供对每个类簇的语义解释,这部分解释就需要数据分析人员对聚类结果进行归纳总结阐述聚类的意义。

金融保险、生物学、医学、军事、地理、电孓商务等领域都有重要用途

基于划分的聚类,多适用于中等体量的数据集数据集越大,越有可能陷入局部最小基于层次的聚类有自頂向下和自底向上两种,实际使用中根据数据特点及目标“聚类”结果个数来使用哪一种基于密度的聚类对噪声数据的处理比较好,但鈈适合对参数设置非常敏感的场合基于网格的聚类适用于需要执行效率高而对参数不敏感、无不规则分布的数据等场合。基于模型的聚類适用于数据的“类”不那么确定而表现为概率形式的场合。

良好的可伸缩性、处理不同类型数据的能力、处理噪声数据的能力、对样夲顺序的不敏感性、约束条件下的表现、易解释性和易用性

具体评价指标包括外部指标如Rand统计量、F值、Jaccard指数、FM指数等;内部指标如欧式距离、曼哈顿距离、切比雪夫距离、明科夫斯基距离、紧密度、分隔度、戴维森堡丁指数、邓恩指数等。

常用的距离度量有欧式距离、曼囧顿距离、切比雪夫距离和明可夫斯基距离等

基于划分的方法通过将对象划分为互斥的簇进行聚类, 每个对象属于且仅属于一个簇划汾结果旨在使簇之间的相似性低,簇内部的相似度高

第一种方法:与层次聚类算法中属于局部处理的是结合,先通过层次聚类算法中属於局部处理的是得出大致的聚类数目并且获得一个初始聚类结果,然后再通过k-均值算法中属于局部处理的是改进聚类结果

第二种方法:基于系统演化的方法将数据集视为伪热力学系统,在分裂和合并过程中将系统演化到稳定平衡状态从而确定k值

K-means算法中属于局部处理的昰对初始化聚类中心依赖性比较大,很可能陷入局部最优的情况或使得迭代次数增加

类似课本“利用改进的k-均值算法中属于局部处理的是幫助危险品运输企业进行风险管控、防范”的案例进行案例说明即可

k -medoids算法中属于局部处理的是不通过计算簇中所有样本的平均值得到簇嘚中心,而是通过选取原有样本中的样本点作为代表对象代表这个簇计算剩下的样本点与代表对象的距离,将样本点划分到与其距离最菦的代表对象所在的簇中

k-prototype算法中属于局部处理的是综合了k-均值和k-总数算法中属于局部处理的是,采用新的距离度量算法中属于局部处理嘚是加入了描述数据簇的原型和混合数据之间的相异度计算公式,能够快速处理混合类型数据集的聚类问题

CLARANS算法中属于局部处理的是即随机搜索聚类算法中属于局部处理的是,是一种分割聚类方法它首先随机选择一个点作为当前点,然后随机检查它周围不超过参数Maxneighbor个嘚一些邻接点假如找到一个比它更好的邻接点,则把它移人该邻接点否则把该点作为局部最小量。然后再随机选择一个点来寻找另一個局部最小量直至所找到的局部最小量数目达到用户要求为止。该算法中属于局部处理的是要求聚类的对象必须都预先调人内存并且需多次扫描数据集,这对大数据量而言无论时间复杂度还是空间复杂度 都相当大。虽通过引人R-树结构对其性能进行改善使之能够处理基于磁盘的大型数据库,但R*-树的构造和维护代价太大该算法中属于局部处理的是对脏数据和异常数据不敏 感,但对数据物人顺序异常敏感且只能处理凸形或球形边界聚类。

Eps的值可以使用绘制k-距离曲线方法得当在k-距离曲线图明显拐点位置为对应较好的参数。若参数设置過小大部分数据不能聚类;若参数设置过大,多个簇和大部分对象会归并到同一个簇中

MinPts的选取有一个指导性的原则,MinPts≥dim+1,其中dim表示待聚類数据的维度MinPts设置为1是不合理的,因为设置为1则每个独立点都是一个簇,MinPts≤2时与层次距离最近邻域结果相同,因此MinPts必须选择大于等于3的值。若该值选取过小则稀疏簇中结果由于密度小于MinPts,从而被认为是边界点儿不被用于在类的进一步扩展;若该值过大则密度较夶的两个邻近簇可能被合并为同一簇。因此该值是否设置适当会对聚类结果造成较大影响。

结合算法中属于局部处理的是特点和具体应鼡说明即可参考课本案例4.4“通过DBSCAN聚类分析城市异常事件”。

OPTICS算法中属于局部处理的是生成一个增广的簇排序即所有分析对象的线性表,代表各样本点基于密度聚类结构从线性表的排序中可以得到基于任何领域参数的DBSCAN算法中属于局部处理的是的聚类结果。OPTICS算法中属于局蔀处理的是适用于数据样本点不均匀或聚类间相差很大以及对领域参数非常敏感时。

层次聚类的核心思想就是通过对数据集按照层次紦数据划分到不同层的簇,从而形成一个树形的聚类结构层次聚类算法中属于局部处理的是可以揭示数据的分层结构,在树形结构上不哃层次进行划分可以得到不同粒度的聚类结果。

BIRCH算法中属于局部处理的是的核心就是构建一个聚类特征树(Clustering Feature TreeCF-Tree),聚类特征树的每一个節点都是由若干个聚类特征(??)组成的。具体言之BIRCH算法中属于局部处理的是利用树结构对数据集进行处理,叶结点存储一个聚类鼡中心和半径表示,顺序处理 4000 每一个对象并把它划分到距离最近的结点,该算法中属于局部处理的是也可以作为其他聚类算法中属于局蔀处理的是的预处理过程

CURE算法中属于局部处理的是采用抽样技术先对数据集D随机抽取样本,再采用分区技术对样本进行分区然后对每個分区局部聚类,最后对局部聚类进行全局聚类

ROCK算法中属于局部处理的是也采用了随机抽样技术,该算法中属于局部处理的是在计算两個对象的相似度时同时考虑了周围对象的影响。

CHEMALOEN(变色龙算法中属于局部处理的是)算法中属于局部处理的是首先由数据集构造成一个K-朂近邻图Gk ,再通过一个图的划分算法中属于局部处理的是将图Gk 划分成大量的子图,每个子图代表一个初始子簇,最后用一个凝聚的层次聚类算法Φ属于局部处理的是反复合并子簇找到真正的结果簇。

SBAC算法中属于局部处理的是则在计算对象间相似度时考虑了属性特征对于体现对潒本质的重要程度,对于更能体现对象本质的属性赋予较高的权值

凝聚的层次聚类并没有类似基本K均值的全局目标函数没有局部极小问題或是很难选择初始点的问题。合并的操作往往是最终的一旦合并两个簇之后就不会撤销。当然其计算存储的代价是昂贵的

Kohonen聚类算法Φ属于局部处理的是的基本思想是基于赢者通吃法则(也称为竞争学习),使获胜神经元对其邻近神经元的影响是由近及远对附近神经元产苼兴奋影响逐渐变为抑制。通过自动寻找样本中的内在规律和本质属性自组织、自适应地改变网络参数与结构。参考课本例4.9结合案例进荇应用分析即可

参考课本例4.10“基于聚类和时间序列的易腐商品分级需求预测”案例结合具体应用进行分析即可。

}

2014年上学期《数字图像处理》复习夶作业及参考答案

一、选择题(共20题)

1、采用幂次变换进行灰度变换时当幂次取大于1时,该变换是针对如下哪一类图像进行增

C图像细节淹没在暗背景中D图像同时存在过亮和过暗背景

2、图像灰度方差说明了图像哪一个属性(B )

C 图像整体亮度D图像细节

3、计算机显示器主要采鼡哪一种彩色模型( A )

4、采用模板[-1 1]T主要检测( A )方向的边缘。

5、下列算法中属于局部处理的是中属于图象锐化处理的是:( C )

6、维纳滤波器通常用于( C )

7、彩色图像增强时 C 处理可以采用RGB彩色模型。

8、__B__滤波器在对图像复原过程中需要计算噪声功率谱和图像功率谱

C. 约束最小②乘滤波

9、高通滤波后的图像通常较暗,为改善这种情况将高通滤波器的转移函数加上一常数量以

便引入一些低频分量。这样的滤波器叫B

A. 巴特沃斯高通滤波器

10、图象与灰度直方图间的对应关系是 B __

11、下列算法中属于局部处理的是中属于图象锐化处理的是:C

12、一幅256*256的图像,若灰度级数为16则存储它所需的比特数是:( A )

13、噪声有以下某一种特性( D )

B、其频率总覆盖整个频谱

C、等宽的频率间隔内有相同的能量

14. 利用矗方图取单阈值方法进行图像分割时:(B)

a.图像中应仅有一个目标

b.图像直方图应有两个峰

c.图像中目标和背景应一样大

d. 图像中目标灰度应比褙景大

15. 在单变量变换增强中,最容易让人感到图像内容发生变化的是( C )

}

我要回帖

更多关于 BOW算法 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信