源码
def __init__(self, n_neighbors=5, radius=1.0,
algorithm='auto', leaf_size=30, metric='minkowski',
p=2, metric_params=None, n_jobs=None, **kwargs):
super().__init__(
n_neighbors=n_neighbors,
radius=radius,
algorithm=algorithm,
leaf_size=leaf_size, metric=metric, p=p,
metric_params=metric_params, n_jobs=n_jobs, **kwargs)
参数
n_neighbors:整数,可选(默认值为5),用k_neighbors查找的近邻数。
radius:浮点数,可选(默认值为1.0)
algorithm:{‘auto’,’ball_tree’,’kd_tree’,’brute’},可选
算法用来计算临近的值:‘auto’会基于fit方法来决定大部分相似情况下合适的算法。
‘ball_tree’会用BallTree,
’kd_tree’会用KDtree,
’brute’会用burte-force来搜寻。
NoTe:如果fit用在稀疏(矩阵)的输入上,那么将会覆盖参数的设置,而使用brute force.
leaf_size:整数,可选(默认值为30) Leaf size是针对BallTree 和 KDTree的。
它将会影响构建模型和搜寻的速度,以及存储的树的内存。可选值将决定该问题的类型。
p:整数,可选(默认值为2)。是.pairwise_distance里的闵可夫斯基度量参数,当
p=1时, 使用曼哈顿距离。当p=2时,使用的是欧氏距离。对于任意的p,使用闵可夫斯基距离。
metric:字符或者调用,默认值为‘minkowski’
metric用来计算距离。scikit-learn或者中的任何距离都可以被使用。
如果距离是可选函数,每一对实例都会返回相应的记录值。(无法计算矩阵间的距离。)
metric_params:字典,可选(默认值为1)
关于距离公式中其他的关键值讨论。
n_jobs:int,可选(默认值为1) 表示搜寻近邻值时并行作业的数量
。如果为-1,那么并行数量则会被设定为CPU的内核数。 (只针对k_neighbors 和kneighbors_graph方法)
方法
fit(x,[y]) 用X作为训练集拟合模型
get_params([deep]) 得到相应估计的参数
kneighbors([X,n_neighbors,return_distance]) 找出k个临近点
kneighbors_graph([X,n_neighbors,mode]) 计算X中k个临近点(列表)对应的权重
radius_neighbors_graph([X,radius,mode]) 计算X中临近点(列表)对应的权重
radius_neighbors([X,radius,return_distance]) 找出半径内的k个临近点
set_params(**params) 设置当前估计的参数
参考链接:/qq_35793943/article/details/53981691
官方文档:/docs/0.21.3/