在使用k近邻算法时,有没有办法获取被使用的“邻居”?

我想找到一种方法来确定在我的knn算法中实际使用了哪些邻居,这样我就可以深入研究与我的特征相似的数据行。

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

    Player       PER    VORP    WSFabricio Oberto 11.9    1.0    4.1Eddie Johnson   16.5    1.7    4.8Tim Legler      15.9    2.0    6.8Ersan Ilyasova  14.3    0.7    3.8Kevin Love      25.4    3.5    10.0Tim Hardaway    20.6    5.1    11.7Frank 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个邻居?在这种情况下,哪些球员实际上被用来确定目标?

有没有办法获得每行分析中使用的5个邻居(即球员)的列表?


回答:

knn.kneighbors 将返回一个对应的最近邻居数组。

Related Posts

Theano在Google Colab上无法启用GPU支持

我在尝试使用Theano库训练一个模型。由于我的电脑内…

准确性评分似乎有误

这里是代码: from sklearn.metrics…

Keras Functional API: “错误检查输入时:期望input_1具有4个维度,但得到形状为(X, Y)的数组”

我在尝试使用Keras的fit_generator来训…

如何使用sklearn.datasets.make_classification在指定范围内生成合成数据?

我想为分类问题创建合成数据。我使用了sklearn.d…

如何处理预测时不在训练集中的标签

已关闭。 此问题与编程或软件开发无关。目前不接受回答。…

LSTM单元中的单元数量与”记忆距离”之间有关系吗?

我理解LSTM的控制方程,并且我看到了这个帖子,它讨论…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注