KD-트리를 검색하기 위해 임의의 측정항목을 사용할 수 있나요?
-
22-08-2019 - |
해결책
연결된 Wikipedia 페이지에 설명된 최근접 검색 절차는 "초구체"를 주어진 메트릭에 해당하는 기하학적 개체로 바꾸고 각 초평면이 이 개체와 교차하는지 테스트하는 경우 확실히 다른 거리 측정법으로 일반화될 수 있습니다.
예:대신 맨해튼 거리를 사용하는 경우(예:벡터 구성요소의 모든 차이의 절대값의 합), 초구체는 (다차원) 다이아몬드가 됩니다.(이것은 2D로 시각화하는 것이 가장 쉽습니다. 현재 가장 가까운 이웃이 멀리 떨어져 있는 경우 엑스 쿼리 포인트에서 피, 다른 초평면 뒤에 있는 더 가까운 이웃은 너비와 높이가 2x이고 중앙에 있는 다이아몬드 모양과 교차해야 합니다. 피).이로 인해 초평면 교차 테스트를 코딩하기가 더 어려워지거나 실행 속도가 느려질 수 있지만 일반 원칙은 여전히 적용됩니다.
다른 팁
J_random_hacker가 말한 것처럼 맨해튼 거리를 사용할 수있을 것입니다. 그러나 나는 당신이 직교 좌표로 표현할 수있는 기하학에 묶여 있다고 확신합니다. 예를 들어 KD-Tree를 사용하여 메트릭 공간을 색인 할 수 없었습니다.
제휴하지 않습니다 StackOverflow