zoukankan      html  css  js  c++  java
  • KNN和K-means的区别

    knn

    算法思路:
    如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。

    k近邻模型的三个基本要素:

    1. k值的选择:k值的选择会对结果产生重大影响。较小的k值可以减少近似误差,但是会增加估计误差;较大的k值可以减小估计误差,但是会增加近似误差。一般而言,通常采用交叉验证法来选取最优的k值。
    2. 距离度量:距离反映了特征空间中两个实例的相似程度。可以采用欧氏距离、曼哈顿距离等。
    3. 分类决策规则:往往采用多数表决。

    k-means

    算法步骤:
    1. 从n个数据中随机选择 k 个对象作为初始聚类中心;
    2. 根据每个聚类对象的均值(中心对象),计算每个数据点与这些中心对象的距离;并根据最小距离准则,重新对数据进行划分;
    3. 重新计算每个有变化的聚类簇的均值,选择与均值距离最小的数据作为中心对象;
    4. 循环步骤2和3,直到每个聚类簇不再发生变化为止。

    k-means方法的基本要素:

        1. k值的选择:也就是类别的确定,与K近邻中k值的确定方法类似。
        2. 距离度量:可以采用欧氏距离、曼哈顿距离等。
    KNN K-Means
    1.KNN是分类算法 

    2.监督学习 

    3.喂给它的数据集是带label的数据,已经是完全正确的数据

    1.K-Means是聚类算法 

    2.非监督学习 

    3.喂给它的数据集是无label的数据,是杂乱无章的,经过聚类后才变得有点顺序,先无序,后有序

    没有明显的前期训练过程,属于memory-based learning 有明显的前期训练过程
    K的含义:来了一个样本x,要给它分类,即求出它的y,就从数据集中,在x附近找离它最近的K个数据点,这K个数据点,类别c占的个数最多,就把x的label设为c K的含义:K是人工固定好的数字,假设数据集合可以分为K个簇,由于是依靠人工定好,需要一点先验知识
  • 相关阅读:
    java环境变量的配置
    usb转串口驱动时会出现“文件的哈希值不在指定的目录”这样的提示
    虚拟机安装tools for Ubuntu
    ubuntu 修改root密码
    旺旺自动回复
    android 启动流程
    ASCII 码表
    电脑中快速查找东西
    appengine 云计算。 部署web网络。
    openssl-0.9.8k_WIN32(RSA密钥生成工具
  • 原文地址:https://www.cnblogs.com/roscangjie/p/11406863.html
Copyright © 2011-2022 走看看