小编Har*_*ini的帖子

在Scikit-Learn KNN中调整leaf_size以减少时间消耗

我试图实现KNN进行手写字符识别,结果发现执行代码要花费很多时间。当将参数leaf_size添加为值400时,我观察到代码执行所需的时间大大减少了。

原始代码:

knn = KNeighborsClassifier(n_neighbors=3)
Run Code Online (Sandbox Code Playgroud)

新代码:

knn = KNeighborsClassifier(n_neighbors=3,leaf_size=400)
Run Code Online (Sandbox Code Playgroud)

我读了很少的有关KDtree / Balltree的leaf_size参数的文档和文章,但是找不到有关如何安全调整此参数而又没有任何准确性和信息丢失的足够好的参考。

如果有人可以就上述问题分享一些见解,那将是非常友善的。

我提到的相关文章:
1.)http://scikit-learn.org/stable/modules/genic/sklearn.neighbors.KDTree.html
2.)https://jakevdp.github.io/blog/2013/04 / 29 / benchmarking-nearest-neighbor-searches-in-python /
3.)http://scikit-learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsClassifier.html

machine-learning kdtree knn scikit-learn sklearn-pandas

6
推荐指数
1
解决办法
2367
查看次数