我是靠谱客的博主 心灵美裙子,最近开发中收集的这篇文章主要介绍机器学习教程之-近邻法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

from sklearn.neighbors import NearestNeighbors
import numpy as np
# X为6个点的数据
X = np.array([[3, 2], [-2, -1], [-1, -1], [1, 1], [2, 1], [3, 2]])
# 以 X[i] 为参考点,找(n_neighbors - 1)个与之最近的点
nbrs = NearestNeighbors(n_neighbors = 3 , algorithm = 'ball_tree').fit(X)
# 返回值 indices 第0列元素为参考点的索引,后面是(n_neighbors - 1)个与之最近的点的索引
# 返回值 distances 第0列元素为与自身的距离,后面是(n_neighbors - 1)个与之最近的点与参考点的距离
distances, indices = nbrs.kneighbors(X)
indices
array([[0, 5, 4],
       [1, 2, 3],
       [2, 1, 3],
       [3, 4, 0],
       [4, 3, 0],
       [0, 5, 4]], dtype=int64)
distances
array([[ 0.        ,  0.        ,  1.41421356],
       [ 0.        ,  1.        ,  3.60555128],
       [ 0.        ,  1.        ,  2.82842712],
       [ 0.        ,  1.        ,  2.23606798],
       [ 0.        ,  1.        ,  1.41421356],
       [ 0.        ,  0.        ,  1.41421356]])
#输出的是求解n个最近邻点后的矩阵图,1表示是最近点,0表示不是最近点
print (nbrs.kneighbors_graph(X).toarray())
[[ 1.  0.  0.  0.  1.  1.]
 [ 0.  1.  1.  1.  0.  0.]
 [ 0.  1.  1.  1.  0.  0.]
 [ 1.  0.  0.  1.  1.  0.]
 [ 1.  0.  0.  1.  1.  0.]
 [ 1.  0.  0.  0.  1.  1.]]

最后

以上就是心灵美裙子为你收集整理的机器学习教程之-近邻法的全部内容,希望文章能够帮你解决机器学习教程之-近邻法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部