聚类算法是无监督学习里的“分类大师”,它的任务是把数据分成不同的组,每个组里的数据点都很相似,而不同组之间的数据点则不太一样。想象一下,你有一堆照片,里面有各种各样的动物,你希望计算机能帮你把这些照片分成“猫的照片”和“狗的照片”。这就是聚类算法的任务。听起来是不是很酷?
1. 聚类算法:让计算机自己分组
聚类算法就像是给计算机一堆没有标签的数据,然后让计算机自己去发现这些数据里有哪些“同类项”。比如,你有一堆客户数据,你想知道这些客户可以分成哪些不同的群体,比如“爱买书的人”和“爱买电子产品的人”。聚类算法就能帮你做到这一点。
聚类算法有很多种,今天我们主要介绍三种常用的聚类算法:k均值聚类、凝聚聚类和DBSCAN。
2. k均值聚类:最简单的聚类算法
k均值聚类是聚类算法里的“入门款”,它非常简单,但也很实用。想象一下,你有一堆点,你想把这些点分成k个组。k均值聚类会先随机选择k个点作为“簇中心”,然后把每个点分配到离它最近的簇中心。接着,它会重新计算每个簇的中心,再把点重新分配到最近的簇中心。这个过程会一直重复,直到簇中心不再变化。
例如你有一堆二维数据点,你想把这些点分成3个组。
import numpy as np
import matplotlib.pyplot as plt
fr
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



