1 K-means,k均值算法来实现聚类
K-means是一个将数据集分成 K 个类(簇)的聚类算法,类内距离中心点最小,类间中心点距离最大。
1)先随机选取k个中心点
2)遍历所有数据,将每个数据划分到最近的中心点,然后计算每个聚类的平均值(means)作为新的中心点,重复此步骤
直到这k个中线点不再变化。
缺陷:k个初始化的质心的位置选择对最后的聚类结果和运行时间都有很大的影响,不应该随机选择k个点
K-means++算法优化K-means
1)在初始化时不是随机选择,而是使初始的k点之间的相互距离要尽可能的远。
2)遍历所有数据,将每个数据划分到最近的中心点,然后计算每个聚类的平均值(means)作为新的中心点,重复此步骤
直到这k个中线点不再变化。
2 KNN k近邻算法实现分类
KNN(k Nearest Neighbor)k近邻是一种分类算法。计算新输入的样本与历史样本之间的距离,取离新样本最近的k个点,新样本的类别就是这k个点中占据多数的那类。
而在实际应用中,特征取值的单位大多不同,这种差异会导致计算出的距离有很大偏差。可以将数据等比例缩放到0-1区间进行标准化,然后再计算他们的距离值。
K-means聚类算法扩展,转载此篇博客
https://blog.csdn.net/github_36326955/article/details/54999612
KNN(k近邻)分类算法扩展,转载此篇博客
https://blog.csdn.net/czp11210/article/details/51161501