聚类方法整理
标签(空格分隔): 算法学习
聚类算法大类
1. K-Mean
2. 层次聚类算法
3. SOM聚类算法
4. FCM聚类算法
-
K-Mean
通过每个簇的平均值,对K个簇的质心进行修正,不断迭代,直至聚类结果稳定。第一步,在D中随机地选择k个对象,每个对象代表一个簇的初始均值或中心。对剩下的每个对象,根据其与各个簇中心的欧式距离,将它分配到最相似的簇。
第二步,k-均值算法迭代地改善簇内变差。对于每个簇,它使用上次迭代分配到该簇的对象,计算新的均值。
第三步,使用更新后的均值作为新的簇中心,重新分配所有对象。
第四步,迭代继续,直到分配稳定,即本轮形成的簇与前一轮形成的簇相同。
缺点:不能保证k-均值方法收敛于全局最优解,并且它常常终止于一个局部最优解。结果可能依赖于初始簇中心的随机选择。实践中,为了得到好的结果,通常以不同的初始簇中心,多次运行k-均值算法。
复杂度:该算法的复杂度是O(nkt),其中n是对象总数,k是簇数,t是迭代次数。处理大数据集,该算法是相对可伸缩的和有效的。
改进点: 质心的修正方法,可根据需要灵活发挥,如使用众数() 层次聚类算法
根据层次分解的顺序是自底向上的还是自上向下的,层次聚类算法分为凝聚的层次聚类算法和分裂的层次聚类算法。
凝聚型层次聚类的策略是先将每个对象作为一个簇,然后合并这些原子簇为越来越大的簇,直到所有对象都在一个簇中,或者某个终结条件被满足。绝大多数层次聚类属于凝聚型层次聚类,它们只是在簇间相似度的定义上有所不同。四种广泛采用的簇间距离度量方法如下: