《机器学习》阅读心得——九、聚类
来源:互联网 发布:知所然又知其所以然 编辑:程序博客网 时间:2024/05/22 10:43
9.1 聚类任务
在“无监督学习”中,训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律,为进一步的分析提供基础。这种学习任务中应用最广的是“聚类”。
聚类试图将数据集中的样本划分为若干个通常是不相交的子集,每个子集称为一个“簇”。通过这样的划分,每个簇可能对应于一些潜在的概念(类别)。聚类算法对这些概念是未知的,聚类仅能自动形成簇结构,簇所对应的概念需要由使用者来把握。聚类既能作为一个单独过程,用于找寻数据内在的分布结构,也可作为分类等其他学习任务的前驱过程。
下文讨论聚类的两个基本问题:性能度量和距离计算。
9.2 性能度量
聚类性能指标也称为“有效性指标”。直观上,好的聚类结果应当是同一簇的样本尽可能彼此相似,不同簇的样本尽可能不同。即,聚类结果的“簇内相似度”高且“簇间相似度”低。聚类性能指标有两类,一类是将聚类结果与某个“参考模型”进行比较,称为“外部指标”,一类是直接考察聚类结果而不利用任何参考模型,称为“内部指标”。
对数据集
由于每个样本对仅能出现在一个集合中,因此有
1、Jaccard系数(简称JC)
2、FM指数(简称FMI)
3、Rand指数(简称RI)
上述性能度量的结果值均在[0,1]区间,值越大越好。
考虑聚类结果的簇划分
其中,
1、DB指数(简称DBI)
2、Dunn指数(简称DI)
显然,DBI的值越小越好,DI的值越大越好
9.3 距离计算
对函数
p=2时,闵可夫斯基距离即欧氏距离
p=1时,闵可夫斯基距离即曼哈顿距离
在讨论距离计算时,重要的是属性上是否定义了“序”关系。能够直接计算距离的是有序属性,不能直接计算距离的是无序属性。闵可夫斯基距离可用于计算有序属性。
对无序属性可采用VDM,令
将闵可夫斯基距离和VDM距离结合可处理混合属性。假定有
通常我们是基于某种形式的距离来定义“相似度度量”,距离越大,相似度越小。但相似度度量的距离不一定满足距离度量的所有性质,比如直递性。这样的距离称为“非度量距离”。
9.4 原型聚类
原型聚类也被称为“基于原型的聚类”,这一类算法假设聚类结构能通过一组原型刻画,在现实聚类任务中很常用。通常,算法先对原型进行初始化,然后对原型进行迭代更新求解。下面是几种比较著名的原型聚类算法
9.4.1 k均值算法
给定样本集
其中
9.4.2 学习向量量化
与k均值算法类似,“学习向量量化”(Learning Vector Quantization)也是试图找到一组原型向量来刻画聚类结构。但与一般聚类算法不同,LVQ假设数据样本带有类别标记,学习过程利用这些监督信息来辅助聚类。
给定样本集
在学的一组原型向量
由此形成了对样本空间
9.4.3 高斯混合聚类
与K均值、LVQ用原型向量来刻画聚类结构不同,高斯混合(Mixture of Gaussian)聚类采用概率模型来表达聚类原型。多元高斯分布的定义是,对n维样本空间
其中
我们可定义高斯混合分布
该分布由k个高斯混合分布组成,每个混合成分对应一个高斯分布。从原型聚类的角度看,高斯混合聚类是采用概率模型(高斯分布)对原型进行刻画,簇划分则由原型对应后验概率确定。
9.5 密度聚类
密度聚类也被称为“基于密度的聚类”,这类算法假定聚类结构能通过样本分布的紧密程度确定。通常情况下,密度聚类算法从样本密度的角度来考察样本之间的可连接性,并基于可连接样本不断扩展聚类簇以获得最终的聚类结果。
DBSCAN是一种著名的密度聚类算法,它基于一组“领域”参数来刻画样本分布的紧密程度。给定数据集
1.
2. 核心对象:若
3. 密度直达:若
4. 密度可达:对
5. 密度相连:对
图1 DBSCAN定义的基本概念(MinPts=3): 实线是
基于这些概念,DBSCAN将簇定义为:由密度可达关系导出的最大的密度相连样本集合。在计算时,该算法随机选取数据集中的一个核心对象,生成聚类簇后,将簇中包含的核心对象从数据集中去除,再从更新后的数据集中随机选取一个核心对象来生成聚类簇,直到没有可用的核心对象。
9.6 层次聚类
层次聚类试图在不同层次对数据集进行划分,从而形成树形的聚类结构。数据集的划分可使用“自底向上”的聚合策略,也可以采用“自顶向下”的分拆策略。
AGNES是一种采用自底向上的聚合策略的层次聚类算法。它先将数据集中的每个样本都看做一个初始聚类簇,然后再算法运行的每一步中找出距离最近的两个聚类簇进行合并,该过程不断重复,直至达到预设的聚类簇个数。当聚类簇距离由最小距离/最大距离/平均距离计算时,AGNES算法被相应的称为“单连接”、“全连接”或“均连接”。
- 《机器学习》阅读心得——九、聚类
- 《机器学习》阅读心得——八、集成学习
- 《机器学习》阅读心得——四、决策树
- 《机器学习》阅读心得——五、神经网络
- 《机器学习》阅读心得——六、支持向量机
- 《机器学习》阅读心得——七、贝叶斯分类器
- 《机器学习》阅读心得——十、降维与度量学习
- 《机器学习》阅读心得——十一、特征选择和稀疏学习
- 《机器学习》阅读心得--一、绪论
- 《机器学习》阅读心得---三、线性模型
- 《机器学习》阅读心得--二、模型评估与选择
- 机器学习笔记(九)聚类
- 机器学习入门心得——书籍、课程推荐
- 《机器学习实战》笔记之九——树回归
- 机器学习基础(九)—— iterative optimization
- 机器学习(九)——EM算法
- 【九】机器学习之路——logistic回归
- 机器学习(九)—FP-growth算法
- AI和大数据如何给企业带来价值
- 用python实现排列组合
- Ubuntu 16.04安装MySQL(5.7.18)
- angularjs实现双击span标签,将span标签变成input标签
- Hibernate里如何增删查改?
- 《机器学习》阅读心得——九、聚类
- 关于Javascript定时器的使用
- 轻松理解Java垃圾回收
- 浅谈web网站架构演变过程
- 快速排序算法
- scala之控制结构和函数
- base64加密原理
- jQuery--过滤选择器实现隔行变色-表单选择器实现全选或全不选
- Android代码设置APN