두 점 사이의 거리 (Distance Between Two Points)
쉽게 풀면
두 점 사이의 거리는 사실 피타고라스의 정리를 좌표평면 위에 그대로 옮겨 놓은 것입니다. 두 점을 각각 가로로 얼마나 떨어져 있는지(x좌표 차이), 세로로 얼마나 떨어져 있는지(y좌표 차이)를 구한 뒤, 이 둘을 직각삼각형의 밑변과 높이로 생각하면 빗변이 바로 두 점을 잇는 직선 거리가 됩니다.
예를 들어 지도 위에서 우리 집과 학교의 위치를 좌표로 나타냈을 때, 가로로 3칸 세로로 4칸 떨어져 있다면 직선 거리는 √(3²+4²) = 5칸이 되는 식입니다.
왜 중요한가
두 점 사이의 거리 공식은 유클리드 거리라는 이름으로 데이터과학, 기계학습, 지리정보시스템 등 매우 광범위한 분야에서 유사도나 근접성을 수치화하는 기초 도구로 쓰이기 때문에 여러 학문 분야의 방법 섹션에서 반복적으로 등장합니다. 군집분석이나 최근접 이웃 알고리즘처럼 '거리'라는 개념을 필요로 하는 거의 모든 정량적 분석의 출발점이 되며, 고차원 데이터에서는 이 공식을 일반화한 다양한 거리 척도 연구로 이어지기도 합니다.
핵심 정리
- 평면에서 A(x₁, y₁), B(x₂, y₂)의 거리는 d = √((x₂−x₁)² + (y₂−y₁)²)입니다. 피타고라스 정리를 좌표에 적용한 것입니다.
- n차원으로 확장한 것이 유클리드 거리이고, 같은 점 사이의 다른 거리 척도로는 맨해튼 거리(좌표 차의 절댓값 합), 체비쇼프 거리(좌표 차 중 최댓값)가 있습니다.
- 거리의 성질: 0 이상, 같은 점일 때만 0, A→B와 B→A가 같고, 삼각부등식 d(A,C) ≤ d(A,B) + d(B,C)가 성립합니다.
- 공식은 평평한 좌표와 같은 단위의 좌표축을 전제로 합니다.
예시로 보기
A(1, 2), B(4, 6)에서 가로 차 3, 세로 차 4이므로 유클리드 거리는 5, 맨해튼 거리는 7, 체비쇼프 거리는 4입니다(코드로 확인).
단위가 다르면 거리가 한 변수에 지배됩니다. (가상의 예) 사람 P₁(나이 30, 소득 3,000만 원), P₂(31, 5,000), P₃(60, 3,010)에서 P₁에 가까운 사람을 찾습니다. 원자료로 계산하면 P₁–P₂ 거리는 약 2,000, P₁–P₃ 거리는 약 31.6이라 P₃(30세 차이)가 “가장 가깝다”고 나옵니다. 각 변수를 표준편차로 나눠(표본 표준편차: 나이 약 17.0, 소득 약 1,151.8) 다시 계산하면 P₁–P₂는 약 1.74, P₁–P₃는 약 1.76이 되어 순위가 바뀝니다. 소득의 숫자 단위가 거리를 결정했던 것입니다. 군집분석·k-최근접이웃에서 표준화를 먼저 하는 이유입니다.
위도·경도는 평면 좌표가 아닙니다. 서울(37.5665°N, 126.9780°E)과 부산(35.1796°N, 129.0756°E)을 도(degree) 단위로 그대로 공식에 넣으면 약 3.18이라는 단위 없는 값이 나옵니다. 지구를 반지름 6,371 km의 구로 보고 하버사인 공식으로 계산하면 약 325 km입니다.
자주 하는 오해
| 오해 | 바로잡기 |
|---|---|
| 변수들의 단위가 달라도 그대로 거리를 구하면 된다. | 단위가 다른 변수는 표준화 등으로 척도를 맞춘 뒤 계산하는 것이 일반적입니다. |
| 위경도 좌표에도 같은 공식을 쓸 수 있다. | 좁은 지역이 아니면 오차가 커집니다. 구면 거리(하버사인 등)나 투영 좌표를 씁니다. |
| 직선거리는 실제 이동 거리다. | 도로망을 따라가는 거리는 직선거리보다 길 수 있어 네트워크 거리를 따로 구해야 합니다. |
| 변수 사이의 상관은 거리에 영향을 주지 않는다. | 유클리드 거리는 변수 간 상관을 무시합니다. 상관을 반영하려면 마할라노비스 거리를 씁니다. |
논문에서는 이렇게 쓰입니다
실제 논문에서
이 용어를 직접 쓴 국내 논문 문장을 아직 수집하지 못했습니다. 수집되는 대로 출처와 함께 싣겠습니다.
예시 문장
아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.
이 문장은 지리정보, 클러스터링, 위치 기반 분석 등을 다루는 논문에서 두 대상(지점, 데이터, 좌표 등) 사이의 근접 정도를 수치로 표현할 때 이 거리 공식을 기초로 사용했다는 뜻입니다.
기계학습에서 데이터를 그룹으로 묶는 군집화 알고리즘의 기본 연산으로 거리 공식이 쓰이는 사례이다.
의료 데이터에서 유사 환자를 찾는 분석에 거리 개념이 활용되는 의생명 정보학 연구의 표현이다.
조금 더 깊게 보면
2차원 평면의 거리 공식은 n차원 공간으로 자연스럽게 확장되어 각 좌표 차이의 제곱을 모두 더한 뒤 제곱근을 취하는 형태가 되며, 이를 유클리드 거리(Euclidean distance)라고 부릅니다. 실제 데이터 분석에서는 유클리드 거리 외에도 좌표 차이의 절댓값을 더하는 맨해튼 거리, 두 값 중 최댓값을 취하는 체비쇼프 거리 등 다양한 거리 척도가 상황에 따라 선택되는데, 어떤 거리 척도를 쓰느냐에 따라 군집화나 분류 결과가 달라질 수 있어 척도 선택 자체가 분석 설계의 중요한 부분으로 다뤄집니다.
주의할 점
이 공식은 평면(2차원) 위의 직선 거리를 구할 때 쓰는 것이며, 실제 도로나 곡선을 따라가는 이동 거리와는 다릅니다. 또한 3차원 이상의 공간에서는 좌표 차이의 제곱을 더 많은 항으로 확장해서 계산하며, 이는 피타고라스의 정리를 일반화한 것에 해당합니다.
헷갈리기 쉬운 용어
| 용어 | 한 줄 설명 | 구별 포인트 |
|---|---|---|
| 유클리드 거리(두 점 사이의 거리) | 제곱합의 제곱근, 직선거리 | 기본 척도 |
| 마할라노비스 거리 | 변수 간 상관과 분산을 반영한 거리 | 공분산 행렬이 필요 |
| 코사인 유사도 | 두 벡터의 방향이 얼마나 비슷한지 | 크기(길이)는 보지 않음 |
참고 문헌
- Deza, M. M., & Deza, E. (2009). Encyclopedia of Distances. Springer.
- Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning (2nd ed.). Springer.
- Sinnott, R. W. (1984). Virtues of the haversine. Sky and Telescope, 68(2), 159.
표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.