将一群物理对象或者抽象对象的划分成相似的对象类的过程。其中类簇是数据对象的集合,在类簇中所有的对象都彼此相似,而类簇与类簇之间的对象是彼此相异。
聚类除了可以用于数据分割(data segmentation),也可以用于离群点检测(outlier
detection),所谓的离群点指的是与“普通”点相对应的“异常”点,而这些“异常”点往往值的注意。
很多人在学习聚类之初,容易将聚类和分类搞混淆。其实聚类属于无监督学习范畴(unsupervised
learning),也可称作观察式学习过程,与分类不同,聚类并不依赖已有既定的先验知识。举个例子,我们成年后,很清楚世界是由男人和女人组成的,所
以我们在建厕所的时候,会把厕所分为男厕所和女厕所,这就是“分类”;而当我们刚生下来,我们并不知道什么是男人,什么是女人,通过后天对生活的观察,我
们发现有一类人他们有胡子,而有一类人她们头发比较长(当然,我的这个举例已经显然不符合当今世界的发展了,你们明白就行),于是我们就把有胡子的人分为
一类人,把长头发的分为另一类人,然后“研究”发现,原来有胡子的叫男人,有长头发的叫女人,这个过程就是“聚类”。
数据挖掘对聚类的典型要求如下:
1) 可伸缩性:当聚类对象由几百上升到几百万,我们希望最后的聚类结果的准确度能一致。
2)
处理不同类型属性的能力:有些聚类算法,其处理对象的属性的数据类型只能为数值类型,但是实际应用场景中,我们往往会遇到其他类型的数据,比如二元数据,
分类数据等等。当然,在处理过程我们是可以将这些其他类型的数据预处理成数值型数据的,但是在聚类效率上或者聚类准确度上往往会有折损
3)
发现任意形状的类簇:因为许多聚类算法是用距离(eg:欧几里得距离或者曼哈顿距离)来量化对象之间的相似度的,基于这种方式,我们往往只能发现相似尺寸和密度的球状类簇或者成为凸形类簇。但是,类簇的形状可能是任意的。
4)
对聚类算法初始化参数的知识需求的最小化:很多算法在分析过程中需要用户提供一定的初始参数,比如期望的类簇个数,类簇初始质点的设定。聚类结果对这些参数是十分敏感的。这不仅加重了用户的负担,也非常影响聚类结果的准确性
5)
处理噪声数据的能力:所谓的噪声数据,可以理解为影响聚类结果的干扰数据,这些噪声数据的存在会造成聚类结果的畸变,最终导致低质量的聚类。
6)
增量聚类和对输入次序的不敏感:一些聚类算法不能将新加入的数据插入到已有的聚类结果;输入次序的敏感是指,对于给定的数据对象集合,以不同的次序提供输入对象时,最终产生的聚类结果的差异会比较大。
7)
高维性:有些算法只适合处理2维或者3维的数据,而对高维数据的处理能力很弱,因为在高维空间中数据分布可能十分稀疏,而且高度倾斜。
8)
基于约束的聚类:现实应用中可能需要在各种条件下进行聚类。因为同一个聚类算法,在不同的应用场景中所带来的聚类结果也是各异的,因此找到满足特定约束的具有良好聚类特性的数据分组是十分有挑战性的。
9)
可解释性和可用性:我们希望得到的聚类结果都能用特定的语义、知识进行解释,和实际的应用场景相联系。
聚类过程
当我们知道聚类是什么时,我们下一步想知道的应该是怎么进行聚类。这一点,教材上做了详细介绍,补充一点自己理解:
1
)特征选择
(feature
selection)
:就像其他分类任务一样,特征往往是一切活动的基础,如何选取特征来尽可能的表达需要分类的信息是一个重要问题。表达性强的特征将很影响聚类效果。这点在以后的实验中我会展示。
2)近邻测度
(proximity measure):当选定了实例向量的特征表达后,如何判断两个实例向量相似呢?这个问题是非常关键的一个问题,在聚类过程中也有着决定性的意义,因为聚类本质在区分相似与不相似,而近邻测度就是对这种相似性的一种定义。
3)聚类准则
(clustering criterion):定义了相似性还不够,结合近邻测度,如何判断相似才是关键。直观理解聚类准则这个概念就是何时聚类,何时不聚类的聚类条件。当我们使用聚类算法进行计算时,如何聚类是算法关心的,而聚与否需要一个标准,聚类准则就是这个标准。(话说标准这东西一拿出来,够吓人了吧
^_^)
4)聚类算法
(clustering algorithm):这个东西不用细说了吧,整个学习的重中之重,核心的东西这里不讲,以后会细说,简单开个头——利用近邻测度和聚类准则开始聚类的过程。
5)结果验证
(validation of the
results):其实对于
PR的作者提出这个过程也放到聚类任务流程中,我觉得有点冗余,因为对于验证算法的正确性这事应该放到算法层面吧,可以把
4)和
5)结合至一层。因为算法正确和有穷的验证本身就是算法的特性嘛。(谁设计了一个算法不得证明啊)
6)
(interpretation of the
results):中文版的
PR上翻译为结果判定,而我感觉字面意思就是结果解释。(聚类最终会将数据集分成若干个类,做事前要有原则,做事后要有解释,这个就是解释了。自圆其说可能是比较好的了
^_^)
分享到:
相关推荐
聚类分析,kmeans聚类分析,输出聚类坐标点。matlab2021a测试仿真。
基于k-means聚类分析房价问题(昆明房价)(源码+实验报告)。其中包含爬虫、聚类分析、数据可视化等源码,以及实验报告。采用python进行编程,对链家网资源进行爬取和分析
matlab模糊聚类分析(算法源码) matlab模糊聚类分析(算法源码) matlab模糊聚类分析(算法源码) matlab模糊聚类分析(算法源码) matlab模糊聚类分析(算法源码) matlab模糊聚类分析(算法源码) matlab模糊聚类...
聚类分析程序 包括系统聚类 样品系统聚类 变量系统聚类 K均值聚类 模糊C均值聚类
聚类分析,基于kmeans聚类分析并输出收敛图,matlab2021a仿真,输出聚类点,聚类收敛图。
聚类分析常用的人工数据集,包括:UCI:wine、Iris、yeast,还有4k2_far、leuk72_3k等数据集。它们在聚类分析、数据挖掘、机器学习、模式识别领域经常用到。
聚类分析方法 将定量调查或者其他消费者数据进行聚类分析,再通过交叉分析描述细分市场轮廓是我们常用的方法。 聚类分析可以作为其他多元统计分析的预备过程,先聚类,然后再利用判别分析进一步研究各个群体之间的...
基于项目提供的汽车相关数据,通过聚类分析的方法实现汽车产品聚类,以构建汽车产品画像、分析产品定位、完成汽车竞品分析等要求。 2. 项目数据 项目提供的汽车数据包括26个字段共205条数据,数据文件为“car_price...
以经济效益数据为例,用聚类分析法对各省市作分类(见spssex-4/全国各省市经济效益数据) 以城镇居民消费资料为例,用聚类分析法对各省市作分类(见spssex-4/城镇居民消费支出资料) Spss中的聚类功能常用的有两种...
聚类分析法,matlab例程,可分析,可参考
spss——聚类分析 spss——聚类分析 spss——聚类分析
主成分分析、因子分析、聚类分析是三种比较有价值的多元统计方法, 但同时也是在使用过程中容易误用或混淆的几种方法。 本文从基本思想、数据的标准化、应用上的优缺点等方面, 详细地探讨了三者的异同, 并且举例说明...
聚类分析 SPSS 好资源,自己顶 好资源,自己顶 好资源,自己顶
SPSS教程-聚类分析-附实例操作 SPSS教程-聚类分析-附实例操作 SPSS教程-聚类分析-附实例操作 SPSS教程-聚类分析-附实例操作
聚类分析与判别分析spass聚类分析与判别分析
内容指导: 1、基础的聚类方法:kmeans和等级聚类 ...4、一个聚类变量选择的框架 5、对50年来kmeans聚类算法的非常好的综述。(提到能够解决各种问题的很多方法,参考文献很多,但是没有具体讲方法的步骤。)
主成分分析、聚类分析、因子分析的基本思想与优缺点.doc
SIMCA(簇类的独立软模式方法)-MATLAB代码 聚类分析包括举例。
图像处理 图像分析 聚类分析 模糊聚类 遗传算法聚类;图像处理 图像分析 聚类分析 模糊聚类 遗传算法聚类
k - means聚类分析算法Python实现,并以鸢尾花数据集为例进行聚类演示