거리 함수(Metric)
음수가 아니고 같을 때만 0이며, 대칭이고, 삼각부등식(triangle inequality)을 지키는 두 점 사이의 함수(function). 이 세 규칙만 지키면 무엇이든 거리라 부를 수 있다.
거리라고 하면 보통 자로 잰 곧은 길이, 곧 피타고라스 정리(Pythagorean theorem)로 계산하는 유클리드 거리(Euclidean distance)를 떠올립니다. 하지만 택시가 실제로 달린 거리, 두 단어가 얼마나 다른지, 지구 위 두 도시 사이의 측지선(geodesic) 길이도 모두 '거리'라고 부릅니다. 수학은 이것들의 공통점만 뽑아 정의합니다. 집합(set)
- 양수성.
이고, 은 일 때뿐입니다. - 대칭.
. 가는 길과 오는 길의 거리가 같습니다. - 삼각부등식.
. 어딘가를 들렀다 가는 길이 곧장 가는 길보다 짧을 수는 없습니다.
첫 규칙의 '음수가 아니다'는 사실 나머지(
거리를
삼각부등식의 등호, 곧 B를 들렀다 가도 거리가 조금도 늘지 않는 경우를 봅시다. 유클리드 거리에서는 B가 선분 AC 위에 있을 때뿐입니다. 맨해튼 거리(Manhattan distance)로 바꾸면 사정이 달라집니다. A와 C를 마주 보는 꼭짓점(vertex)으로 하는 직사각형 안이라면 B가 어디에 있어도 등호가 성립합니다. 가로세로로만 가는 가장 짧은 길이 하나가 아니라 여럿이고, 그 직사각형 안의 점은 모두 그런 길 위에 있기 때문입니다. 체비쇼프 거리(Chebyshev distance)에서도 등호가 되는 곳은 A와 C를 마주 보는 꼭짓점으로 하는 직사각형이지만, 그 변이 45° 기울어져 있습니다. 두 거리가 서로 45° 돌린 관계이기 때문입니다. 그래서 A와 C가 정확히 대각선 방향에 있으면 맨해튼 거리의 직사각형은 넓은 정사각형이 되고, 체비쇼프 거리의 직사각형은 선분 AC 하나로 줄어듭니다. 연한 곡선은 A에서 잰 거리가 d(A,C)와 같은 점들, 곧 A를 중심으로 C를 지나게 그린 그 거리의 '원'입니다. 원, 마름모, 정사각형으로 모양이 바뀌는 것이 Lp 노름(Lp norm)의 이야기입니다.
거리가 아닌 것. 제곱 유클리드 거리(squared Euclidean distance)
그래도 최소제곱법(선형 회귀)과 k-평균 군집(k-means clustering)은 일부러 이 제곱 거리를 줄입니다. 제곱은 매끄러워서 미분(differentiation)하기 쉽고, 내적(dot product)과 정사영(orthogonal projection)으로 답이 깔끔하게 나오기 때문입니다.
비슷함을 재는 값을 거리로 바꿀 때도 조심해야 합니다. 1에서 코사인 유사도(cosine similarity)를 뺀 값은 삼각부등식을 지키지 않을 수 있어 엄밀한 거리가 아닙니다. 방향이 0°, 45°, 90°인 세 벡터라면 이웃한 둘 사이는
세 규칙만 지키면 무엇이든 거리입니다. 같으면 0, 다르면 1을 주는 '이산 거리(discrete metric)'도 거리 함수입니다. 비트열의 해밍 거리(Hamming distance), 단어의 편집 거리(edit distance), 모든 점이 이어지고 모든 선이 양방향이며 선의 길이가 양수인 그래프에서 최단 경로(shortest path)의 길이, 구면 위의 대원 거리(구면기하(spherical geometry), 하버사인 공식(haversine formula)), 푸앵카레 원판(Poincaré disk)의 쌍곡 거리가 모두 그렇습니다. 거꾸로 규칙을 줄여 볼 수도 있습니다. 1973년 로베어는
거리가 있으면 '가까워진다'를 말할 수 있습니다. 그래서 수열
이어지는 곳. 거리가 정해지면 가장 가까운 것을 찾는 문제가 생깁니다.
- 평면을 가장 가까운 기준점별로 나눈 지도가 보로노이 다이어그램(Voronoi diagram)입니다.
- 새 데이터를 가장 가까운 예와 같은 무리로 분류하는 방법이 최근접 이웃 분류(k-nearest neighbors classification)입니다.
- 변수마다 단위와 퍼짐이 다르면 유클리드 거리가 공정하지 않습니다. 퍼짐까지 고려해 거리를 다시 잰 것이 마할라노비스 거리(Mahalanobis distance)입니다.
- 점과 점이 아니라 분포와 분포 사이의 거리도 잴 수 있습니다. 한 분포를 다른 분포로 옮기는 최소 비용으로 재는 것이 최적 수송(optimal transport)입니다.
- 좌표가 서로 독립(independence)으로 흩어진 점들이라면, 차원이 아주 높아질수록 모든 점 사이의 거리가 평균(mean) 거리 둘레로 몰려 '가장 가깝다'가 힘을 잃습니다. 이것이 차원의 저주(curse of dimensionality)입니다.
이 개념이 나오는 긴 글
이 개념 위에 세워진 것
이 개념을 언급하는 페이지
- 마할라노비스 거리
… 한 이것은 삼각부등식(A에서 C로 곧장 가는 거리는 B를 거쳐 가는 거리보다 길 수 없다)까지 지키는 진짜거리 함수라서, 최근접 이웃 분류나 k-평균 군집에서 유클리드 거리 대신 쓸 수 있습니다. 인도의 통계학자 …
- 코사인 유사도
… 는 삼각부등식(곧장 가는 거리가 중간을 거쳐 가는 거리보다 길 수 없다는 규칙)을 어겨서 진짜거리 함수가 아닙니다. 0°, 60°, 120° 방향의 세 벡터에서 양 끝은 1.5만큼 떨어졌는데 가운데를 거치면 …
- 최적 수송
… 찰링 쿠프만스와 함께 노벨 경제학상을 받았습니다. 이어지는 곳. 바서슈타인 거리는 분포들 사이의 진짜거리 함수입니다. 흙을 모두 한 점 c로 모을 때의 비용 \sum_i a_i |x_i - c| 를 가장 작게 하는 …
- 자카드 지수
… J = 삼각부등식(A와 C 사이의 거리는 A–B 거리와 B–C 거리의 합을 넘지 않는다)까지 지키는 진짜거리 함수입니다. 분자 |A\triangle B| (한쪽에만 있는 것의 개수)는 두 집합을 0과 1의 줄로 적었을 …
- 쇠렌센–다이스 계수
… C를 거치면 \tfrac13+\tfrac13=\tfrac23 밖에 안 됩니다. 삼각부등식이 깨지니 진짜거리 함수가 아닙니다. 같은 세 집합에서 자카드 거리는 1 \le \tfrac12+\tfrac12 로 규칙을 …
- 유클리드 거리
… 2까지는 2² = 4인데, 1을 거쳐 가면 1² + 1² = 2로 오히려 짧아집니다. 그래서 제곱 거리는거리 함수가 아닙니다. 역사. 이름은 기원전 300년 무렵 알렉산드리아의 유클리드에서 왔습니다. 그의 …
- 맨해튼 거리
… 크기를 재는 한 방법, 곧 p = 1인 Lp 노름입니다. 이어지는 곳. 이 거리도 세 규칙을 지키는거리 함수입니다. 0과 1로 된 벡터 사이에서는 성분마다의 차이 |\Delta| 가 같으면 0, 다르면 1이니, …
- 체비쇼프 거리
… '원'이 정사각형이라 경계가 가로세로와 45° 선분으로 꺾입니다. 물론 세 규칙을 모두 지키는거리 함수입니다. 거리를 늘리지 않는 사상을 화살표로 삼는 거리 공간의 범주에서, 보편 성질로 정해지는 두 공간의 …
- Lp 노름
… + \|\mathbf y\| 가 성립해야 합니다. 그러면 \|\mathbf x - \mathbf y\| 는거리 함수가 됩니다. p ≥ 1이면 이것이 성립하고(민코프스키 부등식), 단위원은 볼록합니다. 볼록하다는 것은 안의 …
- 보로노이 다이어그램
… 이름은 이 분할을 연구한 러시아 제국의 수학자 게오르기 보로노이에게서 왔습니다. '가장 가깝다'는 말에는거리 함수가 필요하니, 거리를 바꾸면 지도도 바뀝니다. 거리는 , 기준점은 개입니다. 기준점을 끌어 보세요. 흰 …
- 해밍 거리
… 대칭차의 크기를 합집합의 크기로 나누면 1에서 자카드 지수를 뺀 값이 됩니다. 물론 세 규칙을 지키는거리 함수입니다. 3비트 문자열 여덟 개를 정육면체의 꼭짓점에 놓으면, 한 비트만 다른 문자열끼리 모서리로 …
- 편집 거리
… 삼각형⟧을 채우는 방식, 앞의 두 값을 기억해 두고 피보나치 수를 구하는 방식과 같습니다. 편집 거리는거리 함수입니다. 삽입은 삭제로, 삭제는 삽입으로, 치환은 반대 치환으로 되돌리면 되니 대칭이고, A를 B로 바꾸는 …
- 하버사인 공식
… 측지학자 타데우스 빈센티가 만든 빈센티 공식 같은 타원체 공식을 씁니다. 대원 거리는 세 규칙을 지키는거리 함수이니, 가장 가까운 공항을 찾는 최근접 이웃 검색이나 구면 위의 보로노이 다이어그램에도 그대로 …
- 최소 신장 트리
… d(a, b) + d(b, c) , 곧 '둘러 가는 길이 곧장 가는 길보다 짧을 수는 없다'를 지키는거리 함수라면 좋은 근사가 쉽습니다. 최소 신장 트리를 따라 한 바퀴 돌되 이미 들른 점은 건너뛰면 됩니다. 가장 …
- 쿨백–라이블러 발산
… p_i \gt 0 인 i에 대해서만 하므로 \sum q_i 가 1 이하입니다). 그러나 KL 발산은거리가 아닙니다. D(p‖q)와 D(q‖p)가 다를 수 있고(대칭이 아님), A에서 C로 곧장 가는 거리가 …
- 공리와 공준
… 기하와 수 너머로 퍼졌습니다. 1933년 콜모고로프는 확률을 공리 세 개 위에 세웠고, 거리(거리 함수), 벡터 공간, 군도 모두 몇 개의 공리로 정의됩니다. 공리를 만족하는 모든 대상에 대해 정리를 …
- 위상수학
… 위상 공간이라 하고, 1914년 독일의 펠릭스 하우스도르프가 『집합론 요강』에서 그 첫 꼴을 세웠습니다.거리 함수가 있으면 앞에서처럼 작은 원판으로 열린 집합이 정해지지만, 거리 없이 열린 집합만 정해진 위상 공간도 …
- 풍부화된 범주: 거리를 범주로
… 많아야 4km입니다. B를 거쳐 가면 되니까요. d(A, C)\le d(A, B) + d(B, C) 라는거리의 삼각부등식은 '두 길을 이어 붙이면 길이 된다'는 말입니다. 그리고 제자리에 있는 데는 0km가 …