K近邻算法(kNN)如何实现并行计算?

  统计/机器学习 监督式学习 Python    浏览次数:568        分享
0

我在用sklearn.neighbors.KNeighborsClassifier,发现可以设置n_jobs,这是并行计算的参量。

那么kNN是怎么实现并行计算的呢?

 

一棵海草   2018-09-16 06:40



   2个回答 
4

我理解是sklearn只用了比较低级的kNN并行计算。在fit数据时(比如建立kdtree),并没有用到并行计算。只在predict()时才会用多个CPU去找。


至于用Map recude的kNN可以看   http://www.cs.utah.edu/~lifeifei/knnj/

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2018-09-19 11:11

3

可以利用类似于Map Reduce的思想:把训练集分成很多小块,求测试样本和每个小块里的样本的距离,然后再把结果汇总。

SofaSofa数据科学社区DS面试题库 DS面经

u_u   2018-09-19 09:11



  相关主题

python里如何实现线性判别分析(LDA)?   1回答

FM算法(因子分解机)有专门的算法框架吗?   1回答

MLR分片模型是什么模型?   0回答

欠采样后概率还原问题   2回答

k-NN的k取1会怎么样   4回答

adaboost里的learning rate是什么意思?   1回答

kNN的k=1为什么训练误差为0?   4回答

为什么LR要用Sigmoid函数?   7回答

为什么说knn是惰性算法   1回答

KNN中K值的选择   5回答

线性可分是什么意思?   1回答

关于方差和偏差和噪声   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!