作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我使用 knn
sklearn
中的算法,我可以获得指定半径内的最近邻居,即它返回该半径内最近邻居的圆形。是否有一个实现,您可以指定两个半径值来返回最近邻的椭圆形状?
最佳答案
您可以在 NearestNeighbors
中指定自定义距离度量:
# aspect of the axis a, b of the ellipse
aspect = b / a
dist = lambda p0, p1: math.sqrt((p1[0] - p0[0]) * (p1[0] - p0[0]) + (p1[1] - p0[1]) * (p1[1] - p0[1]) * aspect)
nn = NearestNeighbors(radius=1.0, metric=dist)
KDTree
与
custom metric :
from sklearn.neighbors import KDTree
import numpy as np
X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
# aspect of the axis a, b of the ellipse
aspect = b / a
dist = DistanceMetric.get_metric('pyfunc', func = lambda p0, p1: math.sqrt((p1[0] - p0[0]) * (p1[0] - p0[0]) + (p1[1] - p0[1]) * (p1[1] - p0[1]) * aspect))
kdt = KDTree(X, leaf_size=30, metric=dist)
# now kdt allows queries with ellipses with aspect := b / a
kdt.query([0.1337, -0.42], k=6)
关于scikit-learn - sklearn 半径中的 K 最近邻 - 椭圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38083664/
我是一名优秀的程序员,十分优秀!