Scikit learn 如何在scikit学习中使用用户定义的最近邻度量?
我正在使用scikit学习0.18.dev0。我知道以前也有人问过同样的问题。我尝试了这里给出的答案,我得到了以下错误Scikit learn 如何在scikit学习中使用用户定义的最近邻度量?,scikit-learn,distance,metrics,nearest-neighbor,Scikit Learn,Distance,Metrics,Nearest Neighbor,我正在使用scikit学习0.18.dev0。我知道以前也有人问过同样的问题。我尝试了这里给出的答案,我得到了以下错误 >>> def mydist(x, y): ... return np.sum((x-y)**2) ... >>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]]) >>> nbrs = NearestNeighbors(n
>>> def mydist(x, y):
... return np.sum((x-y)**2)
...
>>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
>>> nbrs = NearestNeighbors(n_neighbors=4, algorithm='ball_tree',
... metric='pyfunc', func=mydist)
错误消息
\u init\u params()获取了意外的关键字参数“func”
看起来此选项已被删除。如何在
sklearn.neights
中使用用户定义的矩阵?正确的关键字是metric
:
import numpy as np
from sklearn.neighbors import NearestNeighbors
def mydist(x, y):
return np.sum((x-y)**2)
nn = NearestNeighbors(n_neighbors=4, algorithm='ball_tree', metric=myfunc)
X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
nn.fit(X)
开发版本的文档字符串中也提到了这一点: