점에서 유한 점 집합까지의 거리

에르네스토 로페즈 푸네

세 개의 배열이 있습니다. X, Y, Z라고합시다.

X는 차원 m의 n 배열을 포함합니다. [[x11,x12,...,x1m],[x21,x22,...,x2m],...,[xn1,xn2,...,xnm]]

Y는 차원 m의 k (k> n) 배열을 포함합니다. 즉 [[y11,y12,...,y1m],[y21,y22,...,y2m],...,[yk1,yk2,...,ykm]]

Z는 차원 m의 p (p <k, p <n) 배열을 포함합니다. [[z11,z12,...,z1m],[z21,z22,...,z2m],...,[zp1,zp2,...,zpm]]

배열 Z의 각 요소 Z [i]에 대해 배열 X의 모든 요소까지의 거리 (유클리드)를 계산하고 최소 거리를 선택해야합니다. 이는 dist_X [i]로 표시됩니다. 나는 똑같이해야하지만 배열 Y로 dist_Y [i]로 최소 거리를 표시합니다. 그런 다음 Z의 각 요소 Z [i]에 대해 dist_Y [i] / (dist_Y [i] + dist_X [i])의 값을 계산해야합니다.

나는 다음과 같이 시도했다.

import scipy
from scipy import spatial

def dist_sets(z):
    tree_X = spatial.cKDTree(X)
    tree_Y = spatial.cKDTree(Y)
    dist_X, minid_X=tree_X.query(z)
    dist_Y, minid_Y=tree_Y.query(z)
    return dist_Y/(dist_Y+dist_X)

print(dist_sets(Z))

그러나 큰 n, k 및 p에 대한 계산 시간이 많이 걸립니다. 예 : (n, m) = (17727, 122), (k, m) = (542273, 122) 및 (p, m) = (140001, 122).

Z의 모든 요소에 대해 dist_sets (Z) 함수를 평가할 수있는 방식으로 Python에서 코드를 최적화하는 방법이 있습니까?

hilberts_drinking_problem

KDTree에 대한 문서는 더 큰 차원에서 성능 이점이 저하된다는 것을 언급합니다. 그중 122 개를 사용하면 순진한 벡터화 솔루션이 더 나을 것입니다. 한 가지 가능성이 있습니다.

from sklearn.metrics import pairwise_distances_argmin_min

def dist_sets2(Z):
  iX, dX = pairwise_distances_argmin_min(Z, X)
  iY, dY = pairwise_distances_argmin_min(Z, Y)
  return dY / (dX + dY)

의 경우를 k = p = 1000사용하는 것보다 내 컴퓨터에서 17 배 더 빠릅니다 cKDTree.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

R로 한 지점에서 다른 지점까지의 거리 계산

분류에서Dev

PostGIS는 한 지점에서 여러 지점까지의 거리를 계산합니다.

분류에서Dev

점에서 타원까지의 거리

분류에서Dev

행렬의 한 지점에서 행렬의 다른 모든 지점까지의 거리 찾기

분류에서Dev

모든 지점에서 첫 번째 지점까지의 거리

분류에서Dev

동일한 DF에서 가장 가까운 지점까지의 거리

분류에서Dev

축에 대한 점의 거리 찾기

분류에서Dev

원점을 중심으로 한 점의 회전이 원점에서 거리를 잃는 이유는 무엇입니까?

분류에서Dev

MATLAB에서 한 지점에서 가장자리까지의 거리를 찾는 방법

분류에서Dev

반원의 바깥 쪽 선에서 두 점 사이에 동일한 거리를 유지하려면 어떻게해야합니까?

분류에서Dev

여러 옵션 사이에서 한 지점에서 가장 가까운 거리를 평가합니까?

분류에서Dev

R에서 최소 유클리드 거리를 갖는 벡터의 점 찾기

분류에서Dev

파이썬을 사용하여 점 집합에서 동일한 거리 점을 어떻게 선택할 수 있습니까?

분류에서Dev

Seaborn 산점도의 점에서 흰색 테두리 제거

분류에서Dev

임의의 축에있는 한 지점까지의 거리 계산

분류에서Dev

두 점 사이의 각도 거리 계산, wrt에서 세 번째 점까지

분류에서Dev

단어 집합에서 모든 구두점을 제거하거나 txt 파일의 모든 고유 단어를 C ++의 집합 (구두점없이)에 쓰기

분류에서Dev

점에서 분할 된 선까지의 최단 거리

분류에서Dev

한 지점에서 다른 여러 지점까지의 n 개의 가장 짧은 유클리드 길이를 찾는 효율적인 알고리즘

분류에서Dev

점 소스까지의 유 클레 디안 거리

분류에서Dev

점에 대한 선의 최소 거리는 항상 선에 orthongonal

분류에서Dev

원점에서 일련의 점에서 가장 작은 거리 찾기

분류에서Dev

거리 공식을 사용한 두 점 사이의 거리

분류에서Dev

한 SVG 요소의 지점에서 다른 지점으로 그리는 방법은 무엇입니까?

분류에서Dev

점 집합과 특정 점 사이의 최소 거리

분류에서Dev

지오메트리 셰이더가 의도 한대로 1 점에서 4 점을 생성하지 않는 이유는 무엇입니까?

분류에서Dev

Python : 한 지점에서 최소 유클리드 거리가있는 CSV 파일의 행 번호를 얻습니다.

분류에서Dev

PyTorch에서 점 집합과 선 사이의 쌍 거리를 계산하는 방법은 무엇입니까?

분류에서Dev

Python에서 3D 지점에서 볼록 껍질까지의 거리

Related 관련 기사

  1. 1

    R로 한 지점에서 다른 지점까지의 거리 계산

  2. 2

    PostGIS는 한 지점에서 여러 지점까지의 거리를 계산합니다.

  3. 3

    점에서 타원까지의 거리

  4. 4

    행렬의 한 지점에서 행렬의 다른 모든 지점까지의 거리 찾기

  5. 5

    모든 지점에서 첫 번째 지점까지의 거리

  6. 6

    동일한 DF에서 가장 가까운 지점까지의 거리

  7. 7

    축에 대한 점의 거리 찾기

  8. 8

    원점을 중심으로 한 점의 회전이 원점에서 거리를 잃는 이유는 무엇입니까?

  9. 9

    MATLAB에서 한 지점에서 가장자리까지의 거리를 찾는 방법

  10. 10

    반원의 바깥 쪽 선에서 두 점 사이에 동일한 거리를 유지하려면 어떻게해야합니까?

  11. 11

    여러 옵션 사이에서 한 지점에서 가장 가까운 거리를 평가합니까?

  12. 12

    R에서 최소 유클리드 거리를 갖는 벡터의 점 찾기

  13. 13

    파이썬을 사용하여 점 집합에서 동일한 거리 점을 어떻게 선택할 수 있습니까?

  14. 14

    Seaborn 산점도의 점에서 흰색 테두리 제거

  15. 15

    임의의 축에있는 한 지점까지의 거리 계산

  16. 16

    두 점 사이의 각도 거리 계산, wrt에서 세 번째 점까지

  17. 17

    단어 집합에서 모든 구두점을 제거하거나 txt 파일의 모든 고유 단어를 C ++의 집합 (구두점없이)에 쓰기

  18. 18

    점에서 분할 된 선까지의 최단 거리

  19. 19

    한 지점에서 다른 여러 지점까지의 n 개의 가장 짧은 유클리드 길이를 찾는 효율적인 알고리즘

  20. 20

    점 소스까지의 유 클레 디안 거리

  21. 21

    점에 대한 선의 최소 거리는 항상 선에 orthongonal

  22. 22

    원점에서 일련의 점에서 가장 작은 거리 찾기

  23. 23

    거리 공식을 사용한 두 점 사이의 거리

  24. 24

    한 SVG 요소의 지점에서 다른 지점으로 그리는 방법은 무엇입니까?

  25. 25

    점 집합과 특정 점 사이의 최소 거리

  26. 26

    지오메트리 셰이더가 의도 한대로 1 점에서 4 점을 생성하지 않는 이유는 무엇입니까?

  27. 27

    Python : 한 지점에서 최소 유클리드 거리가있는 CSV 파일의 행 번호를 얻습니다.

  28. 28

    PyTorch에서 점 집합과 선 사이의 쌍 거리를 계산하는 방법은 무엇입니까?

  29. 29

    Python에서 3D 지점에서 볼록 껍질까지의 거리

뜨겁다태그

보관