码迷,mamicode.com
首页 > 编程语言 > 详细

KNN- K最邻近算法

时间:2020-01-20 23:09:34      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:两种   算法   重复   inf   code   频率   info   距离   src   

KNN分类算法:一个样本i与距离样本i最近的k个样本归属于同一类,如果k个样本属于不同的分类,则样本i属于k个中大多数样本所属的那一类

①距离的定义:分为两种

第一种距离 L1:曼哈顿距离

技术图片

 

 

第二种距离 L2:欧氏距离

技术图片

 

技术图片

 

 

 

 

②K:k=1时,退化为最邻近算法;应存在一个k使得算法整体最优

技术图片

 

 

 

③算法过程:

  • step.1---初始化距离为最大值
  • step.2---计算未知样本和每个训练样本的距离dist
  • step.3---得到目前K个最邻近样本中的最大距离maxdist
  • step.4---如果dist小于maxdist, 则将训练样本作为K-最近邻样本
  • step.5---重复步骤2,3,4,直到未知样本和所有训练样本的距离都算完
  • step.6---统计K-最近邻样本中每个类标号出现的次数
  • step.7---出现频率最大的类标号最为未知样本的类标号

 

④代码:

技术图片

KNN- K最邻近算法

标签:两种   算法   重复   inf   code   频率   info   距离   src   

原文地址:https://www.cnblogs.com/shiliuxinya/p/12219361.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!