sklearn学习之K近邻算法

这篇博客详细介绍了sklearn库中的K近邻(KNN)算法,包括分类和回归两个方面。KNN算法的关键参数如k值选择、距离度量、权重分配以及算法实现方式等都进行了阐述。在分类中,讨论了'uniform'和'distance'两种权重策略,以及不同的距离度量方法。在回归中,KNN同样适用,参数设置与分类类似。博客还提到了算法的效率优化,如通过leaf_size调整树结构和利用'n_jobs'进行并行计算。

K近邻法有三个要素:k值选择,距离度量,分类决策规则
KNN分类
class sklearn.neighbors.KNeighborsClassifier(n_neighbors=5,weights=’uniform’,
algorithm=’auto’,leaf_size=30,p=2,mertic=’minkowski’,
mertic_params=None,n_jobs=1,**kwargs)
具体参数含义如下:
n_neighbors:一个整数,指定k值
weights:一个字符串或者可调用对象,指定投票权重类型。
如果为’uniform’:本节点的所有邻居节点投票权重相同
如果为’distance’:本节点所有邻居节点的投票权重与距离成反比
[callable]:一个可调用对象,传入距离的数组,返回同样形状的权重数组
algorithm:一个字符串,指定计算最近邻的算法
‘ball_tree’:使用BallTree算法
‘kd_tree’:使用KdTree算法
‘brute’:使用暴力搜索法
‘auto’:自动选择最合适的算法
leaf_size:一个整数,指定BallTree或者KdTree叶节点的规模,它影响树的构建和查询速度
mertic:一个字符串,指定距离的度量。默认为’minkowski’
p:整数值,指定在’Minkowski’度量的指数,为1,则代表曼哈顿距离,为2代表欧式距离
n_jobs:并行性。若为-1,则将派发到所有CPU上
KNN回归
class sklearn.neighbor.KNeighborsRegresssor(n_neighbors=5,weights=’uniform’,
algorithm=’auto’,leaf_size=30,p=2,mertic=’minkowski’,
mertic_params=None,n_jobs=1,**kwargs)
具体参数含义如下:
n_neighbors:一个整数,指定k值
weights:一个字符串或者可调用对象,指定投票权重类型。
如果为’uniform’:本节点的所有邻居节点投票权重相同
如果为’distance’:本节点所有邻居节点的投票权重与距离成反比
[callable]:一个可调用对象,传入距离的数组,返回同样形状的权重数组
algorithm:一个字符串,指定计算最近邻的算法
‘ball_tree’:使用BallTree算法
‘kd_tree’:使用KdTree算法
‘brute’:使用暴力搜索法
‘auto’:自动选择最合适的算法
leaf_size:一个整数,指定BallTree或者KdTree叶节点的规模,它影响树的构建和查询速度
mertic:一个字符串,指定距离的度量。默认为’minkowski’
p:整数值,指定在’Minkowski’度量的指数,为1,则代表曼哈顿距离,为2代表欧式距离
n_jobs:并行性。若为-1,则

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值