当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn RadiusNeighborsTransformer用法及代码示例


本文简要介绍python语言中 sklearn.neighbors.RadiusNeighborsTransformer 的用法。

用法:

class sklearn.neighbors.RadiusNeighborsTransformer(*, mode='distance', radius=1.0, algorithm='auto', leaf_size=30, metric='minkowski', p=2, metric_params=None, n_jobs=1)

将 X 转换为比半径更近的邻居的(加权)图。

转换后的数据是由 radius_neighbors_graph 返回的稀疏图。

在用户指南中阅读更多信息。

参数

mode{‘distance’, ‘connectivity’},默认='距离'

返回矩阵的类型:‘connectivity’ 将返回具有 1 和 0 的连接矩阵,‘distance’ 将根据给定度量返回邻居之间的距离。

radius浮点数,默认=1.0

变换后的稀疏图中的邻域半径。

algorithm{‘auto’, ‘ball_tree’,‘kd_tree’, ‘brute’},默认='自动'

用于计算最近邻的算法:

  • ‘ball_tree’ 将使用 BallTree
  • ‘kd_tree’ 将使用 KDTree
  • ‘brute’ 将使用蛮力搜索。
  • ‘auto’ 将尝试根据传递给 fit 方法的值来决定最合适的算法。

注意:拟合稀疏输入将使用蛮力覆盖此参数的设置。

leaf_size整数,默认=30

叶大小传递给BallTree 或 KDTree。这会影响构建和查询的速度,以及存储树所需的内存。最佳值取决于问题的性质。

metricstr 或可调用,默认='minkowski'

用于距离计算的度量。可以使用来自 scikit-learn 或 scipy.spatial.distance 的任何度量。

如果 metric 是一个可调用函数,则在每对实例(行)上调用它并记录结果值。可调用对象应将两个数组作为输入并返回一个值,指示它们之间的距离。这适用于 Scipy 的指标,但效率低于将指标名称作为字符串传递。

不支持距离矩阵。

指标的有效值为:

  • 来自scikit-learn:[‘cityblock’, ‘cosine’, ‘euclidean’,‘l1’, ‘l2’,‘manhattan’]
  • 来自 scipy.spatial.distance: [‘braycurtis’, ‘canberra’, ‘chebyshev’, ‘correlation’, ‘dice’, ‘hamming’, ‘jaccard’, ‘kulsinski’, ‘mahalanobis’, ‘minkowski’, ‘rogerstanimoto’, ‘russellrao’, ‘seuclidean’, ‘sokalmichener’, ‘sokalsneath’, ‘sqeuclidean’, ‘yule’]

有关这些指标的详细信息,请参阅scipy.spatial.distance 的文档。

p整数,默认=2

来自 sklearn.metrics.pairwise.pairwise_distances 的 Minkowski 度量的参数。当 p = 1 时,这相当于使用 manhattan_distance (l1),而对于 p = 2,则使用 euclidean_distance (l2)。对于任意 p,使用 minkowski_distance (l_p)。

metric_params字典,默认=无

度量函数的附加关键字参数。

n_jobs整数,默认=1

为邻居搜索运行的并行作业数。如果 -1 ,则作业数设置为 CPU 内核数。

属性

effective_metric_str 或可调用

使用的距离度量。它将与 metric 参数或其同义词相同,例如‘euclidean’ 如果 metric 参数设置为 ‘minkowski’ 并且 p 参数设置为 2。

effective_metric_params_dict

度量函数的附加关键字参数。大多数指标与metric_params 参数相同,但如果effective_metric_ 属性设置为‘minkowski’,也可能包含p 参数值。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

n_samples_fit_int

拟合数据中的样本数。

例子

>>> import numpy as np
>>> from sklearn.datasets import load_wine
>>> from sklearn.cluster import DBSCAN
>>> from sklearn.neighbors import RadiusNeighborsTransformer
>>> from sklearn.pipeline import make_pipeline
>>> X, _ = load_wine(return_X_y=True)
>>> estimator = make_pipeline(
...     RadiusNeighborsTransformer(radius=42.0, mode='distance'),
...     DBSCAN(eps=25.0, metric='precomputed'))
>>> X_clustered = estimator.fit_predict(X)
>>> clusters, counts = np.unique(X_clustered, return_counts=True)
>>> print(counts)
[ 29  15 111  11  12]

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.neighbors.RadiusNeighborsTransformer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。