使用k个最近的邻居时,是否有办法检索使用的“邻居”?

问题描述 投票:0回答:1

我想找到一种方法来确定knn算法中实际使用的邻居,因此我可以更深入地研究与我的功能相似的数据行。

这是一个数据集的示例,我将其分为预测模型的训练集和测试集:

    Player       PER    VORP    WS
Fabricio Oberto 11.9    1.0    4.1
Eddie Johnson   16.5    1.7    4.8
Tim Legler      15.9    2.0    6.8
Ersan Ilyasova  14.3    0.7    3.8
Kevin Love      25.4    3.5    10.0
Tim Hardaway    20.6    5.1    11.7
Frank Brickowsk 8.6    -0.2    1.6

    etc....

这是我的knn算法代码的示例:

features = ['PER','VORP']
knn = KNeighborsRegressor(n_neighbors=5, algorithm='brute')
knn.fit(train[features], train['WS'])
predictions = knn.predict(test[features])

现在,我知道该算法将迭代每行,并基于来自我指定的目标特征的5个最接近的邻居进行每个目标预测。

我想找出在确定目标特征时实际使用了5个n_neighbors?在这种情况下-确定目标时实际使用了哪些玩家?

是否有一种方法可以获取在每行分析中​​使用的5个邻居(又名玩家)的列表?

python dataframe machine-learning prediction knn
1个回答
0
投票

[knn.kneighbors将为您返回对应的最近邻居的数组。

© www.soinside.com 2019 - 2024. All rights reserved.