KNN是一种基本分类与回归方法,本篇只总结分类问题中的KNN。

  • 输入:样本的特征向量,对应于特征空间中的点
  • 输出:样本的类别,可取多类
  • 算法思想:给定一个样本类别已知的训练数据集,对于新样本,根据其K个最近邻训练样本的类别,通过多数表决等方式进行类别预测。(不具有显式的学习过程) 实际是利用训练数据集对特征向量空间划分,并将其作为其分类的“模型”
  • 三个基本要素(当三个要素确定后,结果唯一确定):
  1. K值的选择(交叉验证法):K太小,整体模型会变得复杂,易过拟合;K太大,模型太简单。
  2. 距离度量(常用欧氏距离、常用Lp、曼哈顿距离、Minkowski):特征空间中两个样本的距离是两个样本相似程度的反映
  3. 分类决策规则【多数表决规则,(加权)投票法】; 回归问题【(加权)平均法】
  • kd树(kd tree)
  1. 存储K维空间数据的结构,以便快速检索
  2. 二叉树,表示对k维空间的一个划分,每个结点对应于k维空间划分中的一个超矩形区域
  3. 更适用于训练样本远大于空间维数时的K近邻搜索,当空间维数接近训练样本数时,效率迅速下降,几乎接近线性扫描
  4. N为训练样本数时,复杂度O(logN)

最新文章

  1. Java To CSharp源代码转换
  2. iOS交互WebService(cxf框架)
  3. Deploying an Internet Information Services-Hosted WCF Service
  4. css3延时动画
  5. Together
  6. Ubuntu10.0.4安装NDK
  7. 机器学习实战 - 读书笔记(13) - 利用PCA来简化数据
  8. URAL 1936 Roshambo 题解
  9. WPF布局的6种面板
  10. TCP/IP TIME_WAIT状态原理
  11. 序列化对象C++对象的JSON序列化与反序列化探索
  12. Projected Coordinate Systems
  13. Built-in Functions学习
  14. 表单元素的submit()方法和onsubmit事件(转)
  15. 基于visual Studio2013解决C语言竞赛题之1092链表转换
  16. android-sdk-windows下载版
  17. Android 状态栏通知Notification、NotificationManager详解
  18. java的设计模式 - 单例模式
  19. node配置环境变量
  20. ssh无密码登录多台机器,并让所有远程机执行相同命令

热门文章

  1. Qt 学习之路 2(19):事件的接受与忽略(当重写事件回调函数时,时刻注意是否需要通过调用父类的同名函数来确保原有实现仍能进行!有好几个例子。为什么要这么做?而不是自己去手动调用这两个函数呢?因为我们无法确认父类中的这个处理函数有没有额外的操作)
  2. apache配置访问限制
  3. jquery中注意点
  4. 在 Vim 中优雅地查找和替换 vi【转】
  5. 强类型DataSet (2011-12-30 23:16:59)转载▼ 标签: 杂谈 分类: Asp.Net练习笔记 http://blog.sina.com.cn/s/blog_9d90c4140101214w.html
  6. pandas 学习 —— 逻辑表达式与布尔索引
  7. Ubuntu redmine 安装
  8. 常见电商项目的数据库表设计(MySQL版)
  9. 微型ORM:PetaPoco 学习资料整理
  10. bzoj 2528: [Poi2011]Periodicity【kmp+构造】