민코프스키 거리
민코프스키 거리(Minkowski distance)는 벡터 공간에서 두 점 사이의 거리를 계산하는 일반화된 방법 중 하나이다. 유클리드 거리, 맨해튼 거리, 체비셰프 거리는 모두 민코프스키 거리의 특수한 경우에 해당한다.
정의:
두 점 $p = (p_1, p_2, ..., p_n)$과 $q = (q_1, q_2, ..., q_n)$ 사이의 민코프스키 거리는 다음과 같이 정의된다.
$D(p, q) = \left(\sum_{i=1}^{n} |p_i - q_i|^r\right)^{1/r}$
여기서 $r$은 매개변수이며, $r \ge 1$을 만족해야 한다.
-
$r = 1$ 인 경우: 맨해튼 거리 (Manhattan distance) 또는 택시 거리 (Taxicab distance)라고 불리며, 각 차원의 절대 거리의 합으로 계산된다.
-
$r = 2$ 인 경우: 유클리드 거리 (Euclidean distance)라고 불리며, 우리가 일반적으로 사용하는 직선 거리이다.
-
$r = \infty$ 인 경우: 체비셰프 거리 (Chebyshev distance) 또는 최대 거리 (Maximum distance)라고 불리며, 각 차원 거리의 절대값 중 최대값으로 계산된다.
활용:
민코프스키 거리는 패턴 인식, 머신 러닝, 데이터 마이닝 등 다양한 분야에서 사용된다. 특히, 클러스터링 알고리즘이나 k-최근접 이웃 (k-Nearest Neighbors, k-NN) 알고리즘에서 데이터 포인트 간의 유사도를 측정하는 데 활용된다.
특징:
- 매개변수 $r$ 값을 조절하여 데이터의 특성에 맞는 거리를 계산할 수 있다.
- $r$ 값이 커질수록 특정 차원의 큰 차이가 거리 계산에 더 큰 영향을 미치게 된다.
- 차원의 수가 많아질수록 계산 복잡도가 증가할 수 있다.
주의사항:
- 민코프스키 거리는 각 차원의 스케일이 다를 경우, 거리 계산 결과가 왜곡될 수 있다. 따라서 데이터를 사용하기 전에 스케일링하는 것이 중요하다.
- $r < 1$ 일 경우, 삼각 부등식이 성립하지 않으므로 거리 함수로 사용할 수 없다.