实例:根据药品的特征对药品进行分类
实现:根据python实现的K-means聚类
1.1 归类
聚类属于非监督学习,无类别标记
1.2 K-means算法
1.Clustering中的经典算法,数据挖掘十大经典算法之一
2.算法接受参数K,然后将事先输入的n个对象划分为K个聚类以便使获得的聚类满足:同一聚类的对象 相似度比较高,而不同聚类的对象相似度较小。
3.算法思想:
以空间当中的K个点为中心进行聚类,对最靠近他们的对象归类。通过迭代的方法,逐次更新各聚类中心的值,直至得到最好的聚类效果。
4.算法描述
(1)适当选择C个类的初始中心
(2)在第K次迭代中,对任意一个样本,求其到C各中心的距离,将该样本归到距离最短的中心所在的类;
(3)利用均值等方法更新该类的中心值
(4)对于所有的C个聚类中心,如果利用(2)(3)的迭代算法更新之后,值保持不变,或者达到一定的迭代次数,或者分类的变化小于一个阈值,则迭代结束,否则继续迭代
5.算法流程
优点:速度快,简单
缺点:最终结果与初始点的选择相关,容易陷入局部最优,需要知道K值
代码实现:
#coding=utf-8
#简单聚类方法K-means方法的实现
import numpy as np