2017-06-23
机器学习-聚类
• 分类:
ml
• 标签:
ml
Clustering
定义
聚类属于无监督学习,以往的回归、朴素贝叶斯、SVM等都是有类别标签y的,也就是说样例中已经给出了样例的分类。
聚类与分类
- 聚类分析中的“类”(cluster)和分类的“类”(class)是不同的,对cluster更加准确的翻译应该是“簇”。聚类的任务是把所有的实例分配到若干的簇,使得同一个簇的实例聚集在一个簇中心的周围,它们之间距离的比较近;而不同簇实例之间的距离比较远。对于由数值型属性刻画的实例来说,这个距离通常指欧氏距离
- 两个算法应该都属于机器学习范围,用途非常广,包括机器视觉,数据挖掘等。分类是有监督的学习,需要事先标记样本,而聚类是无监督学习,不需要经验数据,但两者都是为了归类问题
Clustering Algorithms分类
- Partitioning approach:
- 建立数据的不同分割,然后用相同标准评价聚类结果。(比如最小化平方误差和)
- 典型算法:K-Means, K-Medoids
- Model-based:
- 对于每个类假定一个分布模型,试图找到每个类最好的模型
- 典型算法:GMM(混合高斯)
- Dimensionality Reduction Approach:
- 先降维,再聚类
- 典型算法:Spectral clustering,Ncut
k-means
样本点满足高斯分布
如何选择k值?
- 按需选择
- 观察法
- 手肘法
- Gap Statistics方法
DBSCAN
两个阈值的选择
- EPS
- MINPTS
-
CFSFDP
Clustering by fast search and find of density peaks—密度中心聚类算法
“Clustering by fast search and find of density peaks”是在2014年《Science》期刊上发表的一篇论文,这篇文章提出一种新型的基于密度的聚类算法。这个新聚类算法的核心思想在于对聚类中心的刻画上。
算法优点
- 该聚类算法可以得到非球形的聚类结果,可以很好地描述数据分布,同时在算法复杂度上也比一般的K-means算法的复杂度低。
- 同时此算法的只考虑点与点之间的距离,因此不需要将点映射到一个向量空间中。
算法缺点
- 需要事先计算好所有点与点之间的距离。如果样本太大则整个距离矩阵的内存开销特别大,因此如果只需要得到最终聚类中心,则可以考虑牺牲速度的方式计算每一个样本点的和,避免直接加载距离矩阵。
- 文中提到聚类中心可以自动确定,但是从作者提供的示例代码看来,其判定过程还是需要人为地干预选择
聚类算法应用的领域
- 用户画像——企业发掘优质客户
- 网站的推荐系统
- 社区发现
- 计算机集群分析(在大型集群中找到可能有问题的服务器)
- 航天数据的分析(告诉我们星系的组成情况)
参考
- http://blog.csdn.net/abcjennifer/article/details/8170687
- http://people.sissa.it/~laio/Research/Res_clustering.php
- http://www.cnblogs.com/peghoty/p/3945653.html
- http://www.cnblogs.com/taokongcn/p/4034348.html
- http://sofasofa.io/forum_main_post.php?postid=1000282#
dzzxjl