k近邻图#
- sklearn.neighbors.kneighbors_graph(X, n_neighbors, *, mode='connectivity', metric='minkowski', p=2, metric_params=None, include_self=False, n_jobs=None)[source]#
- 计算X中点的k近邻的(加权)图。 - 更多信息请参见用户指南。 - 参数:
- X形状为 (n_samples, n_features) 的 {array-like, sparse matrix}
- 样本数据。 
- n_neighborsint
- 每个样本的邻居数量。 
- mode{'connectivity', 'distance'}, default='connectivity'
- 返回矩阵的类型:'connectivity' 将返回包含 1 和 0 的连接矩阵,而 'distance' 将根据给定的度量返回邻居之间的距离。 
- metricstr, default='minkowski'
- 用于距离计算的度量。默认为“minkowski”,当 p = 2 时,结果为标准欧几里德距离。有关有效的度量值,请参阅 scipy.spatial.distance 的文档以及 - distance_metrics中列出的度量。
- pfloat, default=2
- Minkowski 度量的幂参数。当 p = 1 时,这等效于使用 manhattan_distance (l1),当 p = 2 时等效于 euclidean_distance (l2)。对于任意 p,使用 minkowski_distance (l_p)。此参数应为正数。 
- metric_paramsdict, default=None
- 度量函数的其他关键字参数。 
- include_selfbool 或 'auto', default=False
- 是否将每个样本标记为其自身的第一个最近邻。如果为 'auto',则对于 mode='connectivity' 使用 True,对于 mode='distance' 使用 False。 
- n_jobsint, default=None
- 用于邻居搜索的并行作业数。 - None表示 1,除非在- joblib.parallel_backend上下文中。- -1表示使用所有处理器。有关更多详细信息,请参见 词汇表。
 
- 返回:
- A形状为 (n_samples, n_samples) 的稀疏矩阵
- 图,其中 A[i, j] 被赋予连接 i 和 j 的边的权重。矩阵采用 CSR 格式。 
 
 - 另请参见 - 半径近邻图
- 计算 X 中点的邻居的(加权)图。 
 - 示例 - >>> X = [[0], [3], [1]] >>> from sklearn.neighbors import kneighbors_graph >>> A = kneighbors_graph(X, 2, mode='connectivity', include_self=True) >>> A.toarray() array([[1., 0., 1.], [0., 1., 1.], [1., 0., 1.]]) 
 
     
 
