二战周志华《机器学习》--聚类

1、聚类任务

聚类试图将数据集中的样本划分为若干个通常是不相交的子集,每个子集称为一个簇。通过这样的划分,每个簇可能对应于一些潜在的概念(类别)。需要说明的是,这些概念对聚类算法来说事先是未知的,聚类过程仅能自动形成簇结构,簇所对应的概念语义需要使用者来把握和命名。

二战周志华《机器学习》--聚类_第1张图片

聚类既能作为一个单独的过程,用于寻找数据内在的分布结构,也可以用作其他学习任务的前驱过程。例如,在一些商业应用中需要对新用户的类型进行判别,但定义用户类型对商家来说却可能不太容易,此时往往可能先对用户进行聚类,根据聚类结果将每个簇定义为一个类,然后再基于这些类训练分类模型,用于判别新用户的类型。

聚类算法涉及两个主要的问题:性能度量距离计算

2、性能度量

我们希望聚类结果能使得同一簇的样本尽可能彼此相似,而不同簇的样本尽可能不同。聚类性能度量大致有两类,一个是将聚类结果与某个“参考模型”进行比较,称为外部指标,另一个是直接考察聚类结果而不利用任何参考模型,称为内部指标

外部指标

二战周志华《机器学习》--聚类_第2张图片
二战周志华《机器学习》--聚类_第3张图片

内部指标

二战周志华《机器学习》--聚类_第4张图片

3、距离计算

二战周志华《机器学习》--聚类_第5张图片

所以距离计算要区分有序属性无序属性

有序属性

二战周志华《机器学习》--聚类_第6张图片

无序属性

二战周志华《机器学习》--聚类_第7张图片
二战周志华《机器学习》--聚类_第8张图片

4、聚类模型

在介绍了聚类算法涉及两个主要的问题:性能度量距离计算之后,我们再来探讨一下主要的聚类模型,主要原型聚类密度聚类层次聚类三种

4.1 原型聚类

原型聚类假设聚类结构能通过一组原型刻画,在现实聚类任务中极为常用。通常情况下,算法先对原型进行初始化,然后对原型进行迭代更新求解。采用不同的原型表示、不同的求解方式,有几种常见的原型聚类方法。

k均值聚类

二战周志华《机器学习》--聚类_第9张图片
二战周志华《机器学习》--聚类_第10张图片

学习向量量化
学习向量量化方法简称LVQ方法,与一般聚类算法不同的是,LVQ假设数据样本带有标记,学习过程中利用样本的这些监督信息来辅助聚类。

二战周志华《机器学习》--聚类_第11张图片
二战周志华《机器学习》--聚类_第12张图片
二战周志华《机器学习》--聚类_第13张图片

二战周志华《机器学习》--聚类_第14张图片

高斯混合聚类
高斯混合聚类采用概率模型来表达聚类原型。

二战周志华《机器学习》--聚类_第15张图片
二战周志华《机器学习》--聚类_第16张图片
二战周志华《机器学习》--聚类_第17张图片

4.2 密度聚类

密度聚类算法假设聚类结构能够通过样本分布的紧密程度来确定,通常情形下,密度聚类算法从样本密度的角度来考察样本之间的可连接性,并基于可连样本不断扩展聚类簇以获得最终的聚类结果。

二战周志华《机器学习》--聚类_第18张图片
二战周志华《机器学习》--聚类_第19张图片
二战周志华《机器学习》--聚类_第20张图片
二战周志华《机器学习》--聚类_第21张图片

4.3 层次聚类

层次聚类试图在不同层次对数据集进行划分,从而形成树形的聚类结果。数据集的划分可采用自底向上,也可以采用自顶向下的分拆策略。

AGNES是一种采用自底向上聚合策略的层次聚类算法,它先将数据集中的每个样本看作是一个聚类簇,然后再算法运行的每一步找出距离最近的两个聚类簇进行合并,该过程不断重复,直到达到预设的聚类簇个数。这里的关键是计算聚类簇之间的距离:

二战周志华《机器学习》--聚类_第22张图片
二战周志华《机器学习》--聚类_第23张图片

你可能感兴趣的:(二战周志华《机器学习》--聚类)