sklearn--NearestNeighbors(监督学习)

源码

    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)。是sklearn.metrics.pairwise.pairwise_distance里的闵可夫斯基度量参数,当
p=1时, 使用曼哈顿距离。当p=2时,使用的是欧氏距离。对于任意的p,使用闵可夫斯基距离。

metric:字符或者调用,默认值为‘minkowski’
metric用来计算距离。scikit-learn或者scipy.spatial.distance中的任何距离都可以被使用。
如果距离是可选函数,每一对实例都会返回相应的记录值。(无法计算矩阵间的距离。)

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) 设置当前估计的参数

参考链接:https://blog.csdn.net/qq_35793943/article/details/53981691
官方文档:https://sklearn.apachecn.org/docs/0.21.3/7.html

你可能感兴趣的:(机器学习算法)