编程语言
首页 > 编程语言> > python-是否有一种方法可以选择使用用户定义的距离量度来在scikits中选择k个最近的邻居?

python-是否有一种方法可以选择使用用户定义的距离量度来在scikits中选择k个最近的邻居?

作者:互联网

我必须使用余弦相似性度量标准和一些其他用户定义的度量标准,将K最近邻用于一组向量.如何通过使用scikits学习来实现?我找到了sklearn.neighbors.KNeighborsClassifier,但是我无法找出用户定义指标的任何选项.我当前正在使用最新版本的scikits学习0.11.

解决方法:

尚无法(尚未?)将预先计算或延迟计算的用户定义距离函数传递给kNN模型.

但是,在master分支中,现在可以对p-Minkowsky距离使用任意p:

https://github.com/scikit-learn/scikit-learn/pull/742

可以为蛮力方法传递任意的用户定义的距离函数是很容易的,但是对于低维度数据来说,球树的实现方式很难适应一般情况.

同样对于稀疏的正数据和余弦相似度,倒排索引将是更好的数据结构,请参见:http://metaoptimize.com/qa/questions/9691/efficient-nearest-neighbors-in-a-very-sparse-settings

标签:scikit-learn,machine-learning,scikits,python
来源: https://codeday.me/bug/20191201/2081132.html