我是靠谱客的博主 默默芒果,最近开发中收集的这篇文章主要介绍机器学习算法笔记之K近邻算法(KNeighborsClassifier)介绍: sklearn.neighbors.KNeighborsClassifier小试牛刀:,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
介绍:
在sklearn库中,KNeighborsClassifier是实现K近邻算法的一个类,一般都使用欧式距离进行测量。
这个类的结构如下:
sklearn.neighbors
.KNeighborsClassifier
-
class
sklearn.neighbors.
KNeighborsClassifier
(
n_neighbors=5,
weights=’uniform’,
algorithm=’auto’,
leaf_size=30,
p=2,
metric=’minkowski’,
metric_params=None,
n_jobs=1,
**kwargs
)
在官方文档中,每个参数的含义:
n_neighbors:就是选取最近的点的个数:k
leaf_size:这个是构造树的大小,值一般选取默认值即可,太大会影响速度。
n_jobs :默认值1,选取-1占据CPU比重会减小,但运行速度也会变慢,所有的core都会运行。
这个类中的方法,在文档中的说明:
小试牛刀:
导库:
-
import numpy
-
from sklearn.neighbors
import KNeighborsClassifier
as kNN
构造训练集和对应的标签:
-
trainmat = numpy.array([[
1,
2,
3],[
2,
3,
5],[
55,
33,
66],[
55,
33,
66]])
-
label = numpy.array([
0,
0,
1,
1])
实例化分类器,并训练数据:
-
neigh = kNN(n_neighbors=
3, algorithm=
'auto', weights=
'distance', n_jobs=
1)
-
neigh.fit(trainmat,label)
训练完后会看到分类器的参数:
然后写一个测试数组:
testmat = numpy.array([2,3,4],[55,33,66])
我们使用三个最长用的方法,来看一下分类的结果:
结果很乐观,测试数组testmat中的两组值分别属于标签0和1的概率是0.99275805和1。
最后
以上就是默默芒果为你收集整理的机器学习算法笔记之K近邻算法(KNeighborsClassifier)介绍: sklearn.neighbors.KNeighborsClassifier小试牛刀:的全部内容,希望文章能够帮你解决机器学习算法笔记之K近邻算法(KNeighborsClassifier)介绍: sklearn.neighbors.KNeighborsClassifier小试牛刀:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复