k邻近简单的理解一下就是,给定一部分带标签样本和一个未知标签样本,将未知标签样本和带标签样本一一比较求距离,然后根据最近k个样本来决定未知标签样本的类别。
李航统计学习方法-K邻近法
如上图:确定圆圈的类别,如K=3,则为三角;若K=5,则为正方形。

那么怎么求距离?选择何种求距离算法。
书中给出了Lp距离的求解:
李航统计学习方法-K邻近法

除了距离度量外,K邻近法的K值如何选取也很重要,书中介绍如下:
李航统计学习方法-K邻近法

K值较小,模型较复杂,易过拟合;K值较大,模型简单。

按照开始我说了,用未知样本和已知样本一一对比方法,在样本数很大时,会花费很多很多时间,有没有一种策略,来加速这种对比呢:下面就要将书中提到的KD树。
构建平衡KD树:
李航统计学习方法-K邻近法

KD树搜索:
李航统计学习方法-K邻近法

除了KD树这种方式还有其他的加速方式:先要详细了解的见:
http://www.cnblogs.com/v-July-v/archive/2012/11/20/3125419.html
上述链接详细讲解了knn算法中的距离度量和k邻近优化方法。
理论永远都在纸上,怎么用才是关键,python代码链接奉上:
http://blog.csdn.net/wds2006sdo/article/details/51933044

相关文章:

  • 2021-12-08
  • 2021-05-18
  • 2021-04-25
  • 2021-12-20
  • 2021-06-14
  • 2021-09-24
  • 2021-09-10
  • 2022-12-23
猜你喜欢
  • 2021-06-13
  • 2021-05-19
  • 2021-04-09
  • 2022-12-23
  • 2021-09-22
  • 2021-07-09
  • 2022-12-23
相关资源
相似解决方案