首页 > 代码库 > K-means、KNN学习笔记
K-means、KNN学习笔记
1.K-means:聚类算法,无监督
输入:k, data[n];
(1) 选择k个初始中心点,例如c[0]=data[0],…c[k-1]=data[k-1];
(2) 对于data[0]….data[n], 分别与c[0]…c[k-1]比较,假定与c[i]差值最少,就标记为i;
(3) 对于所有标记为i点,重新计算c[i]={ 所有标记为i的data[j]之和}/标记为i的个数;
(4) 重复(2)(3),直到所有c[i]值的变化小于给定阈值。
优点:简单,速度快;
缺点:聚类结果与初始中心选取有关,必须提供聚类数目(k值),通常做法是,用不同K值多次聚类,取最优结果。
2.Knn:分类算法,有监督
计算步骤如下:
1)给定测试对象,计算它与训练集中的每个对象的距离
2)圈定距离最近的k个训练对象,作为测试对象的近邻
3)根据这k个近邻归属的主要类别,来对测试对象分类
1)给定测试对象,计算它与训练集中的每个对象的距离
2)圈定距离最近的k个训练对象,作为测试对象的近邻
3)根据这k个近邻归属的主要类别,来对测试对象分类
优点:简单,无需估计参数,无需训练
缺点:计算量大,内存开销大
K-means、KNN学习笔记
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。