今儿想和大家聊聊关于聚类的问题?。。。?
在这之前咱们已经聊过 各个算法的优缺点的总结,以及8个回归类算法、7个正则化算法的总结、5 个集成算法模型、svm算法的全部总结、距离算法总结?。?
感兴趣的可以翻到之前看看~
大部分人对聚类的认识可以归纳为以下几个方面:
- 数据分组:许多人将聚类视为将数据划分为不同的组或簇,使得同一组内的数据点更加相似或相关 。这种观点认为聚类是一种无监督学习技术,用于发现数据中的内在结构和模式 。
- 相似性度量:通常认为聚类算法通过计算数据点之间的相似性或距离来确定它们是否属于同一簇 。相似性度量可以基于欧氏距离、余弦相似度等方法 。
- 发现未知群体:聚类被视为一种工具,用于发现现有数据中隐藏的未知群体 。通过聚类分析,可以发现数据集中的潜在模式、群体或类别,从而帮助了解数据的特征和结构 。
- 应用领域:人们普遍认为聚类广泛应用于各个领域,如市场细分、客户分析、图像分割、推荐系统等 。聚类可以帮助理解和利用大规模数据集,探索数据中的关联性和趋势 。
今天就来详细说说常见的几种:
- K均值聚类
- 层次聚类
- 密度聚类
- 谱聚类
- EM聚类
- 模糊聚类
K均值聚类K均值聚类是一种常用的无监督学习算法 , 用于将数据点划分为不同的簇,使得同一簇内的数据点彼此相似度较高,不同簇之间的数据点相似度较低 。
这个算法的目标是将数据点分为K个簇 , 其中K是用户定义的参数 。K均值聚类的原理相对简单,主要思想是通过迭代寻找K个簇的中心点,将每个数据点分配给距离其最近的中心点,然后更新中心点的位置 , 直到满足停止条件为止 。
原理介绍1、选择要分成的簇的数量K 。
2、随机初始化K个中心点,这些中心点可以是从数据集中随机选择的数据点 。
3、重复以下过程,直到满足停止条件:
- 将每个数据点分配到距离其最近的中心点所属的簇 。
- 对每个簇 , 计算所有数据点的平均值,并将其作为新的中心点 。
- 中心点不再改变或改变非常小 。
- 数据点不再改变其所属簇 。
- 距离度量(一般使用欧氏距离):
对于两个数据点X和Y,它们之间的欧氏距离可以表示为:
推荐阅读
- KNN K-最近邻算法
- 一文学会队列入门:Python数据结构与算法
- 栈的实现:Python数据结构与算法
- 明日小满!遇到这6种食材,千万别手软,营养全面,舒服过夏天
- 月婵建模全面崩盘胸口布料移位,发型五官乱飞,漫迷:好大的邪恶
- 人工智能三要素 人工智能三要素算法算力数据
- 常见的负载均衡算法
- AI算法的'可解释性':理解神秘的算法,让你成为算法达人
- 优化Java代码效率和算法设计,提升性能
- 过敏知多少:全面了解过敏知识,轻松应对敏感体质