珠海网站制作推广益阳市赫山区建设局网站
 一、 K- 近邻算法 (KNN) 概念 
 
 1.1 K- 近邻算法 (KNN) 概念  
 
 K Nearest Neighbor 算法⼜叫 KNN 算法,这个算法是机器学习⾥⾯⼀个⽐较经典的算法, 总体来说 KNN 算法是相对⽐ 较容易理解的算法  
 
 定义 : 如果⼀个样本在特征空间中的k 个最相似 ( 即特征空间中最邻近 ) 的样本中的⼤多数属于某⼀个类别 ,则该样本也属于这个类别。  
 
 来源: KNN 算法最早是由 Cover 和 Hart 提出的⼀种分类算法  
 
 距离公式 :两个样本的距离可以通过如下公式计算,⼜叫欧式距离 
 
 
 1.2 KNN 算法流程总结  
  1 )计算已知类别数据集中的点与当前点之间的距离  
  2 )按距离递增次序排序  
  3 )选取与当前点距离最⼩的 k 个点  
  4 )统计前 k 个点所在的类别出现的频率  
  5 )返回前 k 个点出现频率最⾼的类别作为当前点的预测分类 
   二、K- 近邻算法api初步使⽤ 
  2.1 机器学习流程: 
  1. 获取数据集  
  2. 数据基本处理  
  3. 特征⼯程  
  4. 机器学习  
  5. 模型评估 
   2.2 K- 近邻算法 API  
  sklearn.neighbors.KNeighborsClassifier(n_neighbors=5)  
  n_neighbors : int, 可选(默认 = 5 ), k_neighbors 查询默认使⽤的邻居数  
 from sklearn.neighbors import KNeighborsClassifier#1.构造数据
x = [[1],[2],[10],[20]]
y = [0,0,1,1]
#2.训练模型
#2.1 实例化一个估计器对象
estimator = KNeighborsClassifier(n_neighbors=1)#2.2调用fit方法,进行训练
estimator.fit(x,y)
#3.数据预测
ret=estimator.predict([[0]])
print(ret)ret1=estimator.predict([[100]])
print(ret1)  2.4  ⼩结  
  sklearn 的优势  : ⽂档多, 且规范;包含的算法多;实现起来容易  
  knn 中的 api : sklearn.neighbors.KNeighborsClassifier(n_neighbors=5)  
 