java knn分类_返回2个或更多最近邻居的KNN算法
這正是構建這些度量樹的原因 .
你問的問題就像你要求的東西一樣簡單,就像使用sklearn的KDTree一樣(根據游戲中的指標考慮BallTree):
import numpy as np
from sklearn.neighbors import KDTree
X = np.array([[1,1],[2,2], [3,3]]) # 3 points in 2 dimensions
tree = KDTree(X)
dist, ind = tree.query([[1.25, 1.35]], k=2)
print(ind) # indices of 2 closest neighbors
print(dist) # distances to 2 closest neighbors
日期:
[[0 1]]
[[ 0.43011626 0.99247166]]
需要明確的是:KNN通常是指基于度量樹(KDTree,BallTree)的一些預構建算法,用于分類任務 . 通常,這些數據結構是人們唯一感興趣的東西 .
Edit
請查看here以獲取這些空間樹的兼容性列表 .
你會像這樣使用它:
X = np.array([[1,1],[2,2], [3,3]]) # 3 points in 2 dimensions
tree = KDTree(X, metric='l1') # !!!
dist, ind = tree.query([[1.25, 1.35]], k=2)
print(ind) # indices of 2 closest neighbors
print(dist) # distances to 2 closest neighbors
日期:
[[0 1]]
[[ 0.6 1.4]]
總結
以上是生活随笔為你收集整理的java knn分类_返回2个或更多最近邻居的KNN算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 抖音小店都有哪些类目
- 下一篇: spring mysql整合_sprin