마할라노비스 거리

편집 역사 토론
통계 수치해석 마지막 수정: 2026-08-30 04:25:18

1. 개요[편집]

마할라노비스 거리
Mahalanobis distance
제안Prasanta Chandra Mahalanobis (1936)
정의$d^2=(x-\mu)^{\mathsf T}\Sigma^{-1}(x-\mu)$
기하공분산 타원체를 구로 펴는 백색화 후의 유클리드 거리
분포다변량 정규 아래 $d^2 \sim \chi^2_p$
약점$\hat\Sigma$ 의 병조건 · 이상치에 의한 가림 효과

“이 점이 평균에서 3 떨어져 있습니다”는 정보가 아니다. 무엇의 3배인지를 말해야 정보가 된다.

마할라노비스 거리(Mahalanobis distance)는 평균 μ\mu 와 공분산 Σ\Sigma 를 가진 분포를 기준으로, 점 xx 가 그 분포에서 얼마나 떨어졌는지를 각 방향의 산포로 나누어 재는 척도

dΣ(x,μ)2=(xμ)TΣ1(xμ)d_\Sigma(x,\mu)^2 = (x-\mu)^{\mathsf T}\,\Sigma^{-1}\,(x-\mu)

로 정의된다. 인도의 통계학자 프라산타 찬드라 마할라노비스가 1936년 인골 계측 자료의 집단 간 거리를 재기 위해 도입했다.1 두 점 사이의 거리로 쓸 때는 dΣ(x,y)2=(xy)TΣ1(xy)d_\Sigma(x,y)^2=(x-y)^{\mathsf T}\Sigma^{-1}(x-y) 로 쓰며, Σ=I\Sigma=I 를 넣으면 그냥 유클리드 거리가 된다.

핵심은 단위와 상관을 동시에 지운다는 것이다. 유클리드 거리는 밀리미터로 잰 변수와 킬로파스칼로 잰 변수를 아무 생각 없이 더하고, 서로 강하게 상관된 두 변수를 독립인 척 두 번 센다. 마할라노비스 거리는 Σ1\Sigma^{-1} 로 그 둘을 한꺼번에 교정한다. 그래서 임의의 가역 아핀 변환 xAx+bx\mapsto Ax+b 에 대해 값이 변하지 않는다 — 단위계를 바꾸든 좌표를 회전하든 답이 같다는 이 성질이 이 거리의 존재 이유다.

2. 백색화로 보는 기하[편집]

Σ\Sigma 는 대칭 양정치이므로 촐레스키 분해 Σ=LLT\Sigma = LL^{\mathsf T} 를 갖는다. y=L1(xμ)y = L^{-1}(x-\mu) 로 좌표를 바꾸면

d2=(xμ)T(LLT)1(xμ)=L1(xμ)2=y2d^2 = (x-\mu)^{\mathsf T}(LL^{\mathsf T})^{-1}(x-\mu) = \lVert L^{-1}(x-\mu)\rVert^2 = \lVert y\rVert^2

이다. 즉 마할라노비스 거리는 백색화(whitening)된 좌표에서의 평범한 유클리드 거리다. 원래 공간에서 등거리면은 Σ\Sigma 의 고유벡터를 축으로 하고 반축 길이가 λi\sqrt{\lambda_i} 에 비례하는 타원체인데, 백색화가 그 타원체를 정확히 구로 편다.

고유분해 Σ=WΛWT\Sigma = W\Lambda W^{\mathsf T} 로 보면 주성분 분석과의 관계가 곧장 보인다.

d2=k=1p(wkT(xμ))2λkd^2 = \sum_{k=1}^{p} \frac{\big(\mathbf w_k^{\mathsf T}(x-\mu)\big)^2}{\lambda_k}

주성분 점수를 각자의 표준편차로 나눠 제곱합한 것이 마할라노비스 거리다. 이 형태가 실무적으로 중요한 이유는 분모에 λk\lambda_k 가 있다는 점이다. 분산이 거의 0인 방향에서 아주 조금만 벗어나도 d2d^2 가 폭발한다. 그래서 이 거리는 “데이터가 얇게 눌린 방향으로의 이탈”에 극도로 민감하고, 그것이 장점이자 동시에 다음 절의 재앙이다.

3. χ² 임계값 — 그리고 그게 언제 거짓말인지[편집]

xNp(μ,Σ)x \sim \mathcal N_p(\mu,\Sigma) 이면 y=L1(xμ)Np(0,I)y=L^{-1}(x-\mu)\sim\mathcal N_p(0,I) 이므로

d2=y2χp2d^2 = \lVert y\rVert^2 \sim \chi^2_p

이다. 다변량 정규분포의 밀도 지수부가 정확히 d2/2-d^2/2 이므로, 마할라노비스 거리의 등고선이 곧 확률밀도의 등고선이고 d2d^2 는 음의 로그우도에서 상수를 뺀 것이다. 그래서 ”χp,0.9752\chi^2_{p,\,0.975} 를 넘으면 이상치”라는 규칙이 이상치 탐지의 교과서 처방이 되었다.

문제는 실제로는 μ\muΣ\Sigma 를 모른다는 것이다. 표본 평균 xˉ\bar x 와 표본 공분산 SS 를 꽂으면 분포가 χ2\chi^2 가 아니다.

  • 표본 안의 관측치: xix_i 자신이 xˉ,S\bar x, S 계산에 들어갔으므로 거리가 체계적으로 작게 나온다. 정확한 분포는 베타분포이고 n(n1)2di2Beta ⁣(p2, np12)\dfrac{n}{(n-1)^2}d_i^2 \sim \mathrm{Beta}\!\left(\dfrac p2,\ \dfrac{n-p-1}{2}\right) 다. 유한한 상한이 있다는 것이 포인트다 — di2d_i^2(n1)2/n(n-1)^2/n 을 절대 넘을 수 없다.
  • 새로 들어온 관측치: n(np)p(n1)(n+1)d2F(p, np)\dfrac{n(n-p)}{p(n-1)(n+1)}\,d^2 \sim F(p,\ n-p) 다.

nnpp 에 비해 크면 셋 다 χp2/p\chi^2_p/p 근처로 몰려서 실무상 차이가 없지만, nn 이 수십이고 pp 가 열 몇이면 χ2\chi^2 임계값은 이상치를 조직적으로 놓친다.χ2\chi^2 로 잘랐는데 아무것도 안 걸리네요”의 흔한 원인 중 하나다.

4. Σ^\hat\Sigma 가 배신하는 두 가지 방식[편집]

이 거리의 모든 실패는 Σ1\Sigma^{-1} 에서 나온다.

첫째, 차원이 표본을 따라잡는다. npn \le p 이면 표본 공분산 SS 의 계수는 최대 n1n-1 이라 특이행렬이고 역행렬이 아예 없다. nnpp 보다 조금 큰 정도여도 상황은 별로 낫지 않다 — 마르첸코-파스투르 이론이 말하듯 p/np/n 이 0이 아니면 SS 의 최소 고유값이 참값보다 훨씬 아래로 눌리고 최대 고유값은 위로 부풀며, 그 눌린 고유값이 Σ1\Sigma^{-1} 에서 그대로 증폭된다. 조건수가 망가진 행렬을 역으로 뒤집는 전형적인 차원의 저주 발현이다. 처방은 셋이다.

처방내용성격
수축 추정Σ^=(1ρ)S+ρμˉI\hat\Sigma = (1-\rho)S + \rho\,\bar\mu I, μˉ=tr(S)/p\bar\mu = \mathrm{tr}(S)/p르두아-울프가 MSE 최소 ρ\rho 를 닫힌 형태로 제공
정칙화S+εIS + \varepsilon I 또는 희소 정밀도 행렬 추정능형회귀와 같은 논리
유사역행렬S+S^{+} 를 써서 데이터가 실제로 펼친 부분공간에서만 잰다부분공간 바깥 이탈을 못 본다는 대가

르두아-울프(2004)의 수축은 최적 ρ\rho 를 교차검증 없이 데이터로부터 직접 계산한다는 점에서 실무에서 압도적으로 편하다. 유사역행렬은 무해해 보이지만 조심해야 한다 — SS 가 못 본 방향은 분산 0이 아니라 정보 없음인데, S+S^{+} 는 그 방향으로의 이탈을 거리 0으로 처리한다. 정작 잡고 싶은 이상치가 그 방향에 있으면 조용히 놓친다.

둘째, 이상치가 자기 자신을 숨긴다. SS 는 붕괴점이 0이다. 극단값 하나가 그 방향의 분산을 통째로 부풀리고, 부풀려진 Σ\Sigma 로 거리를 재면 그 극단값이 평범해 보인다. 이것이 가림 효과(masking)이고, 반대로 멀쩡한 점이 왜곡된 타원 밖으로 밀려 이상치로 찍히는 것이 늪 효과(swamping)다. 이상치가 여럿이면 서로를 가려 주기 때문에 상황이 더 나쁘다.

표준 대응은 고붕괴점 산포 추정으로 갈아타는 것이고, 그 대표가 최소공분산행렬식(MCD, 루소, 1984)이다. nn 개 중 hh 개(최대 붕괴점을 원하면 h(n+p+1)/2h\approx\lfloor(n+p+1)/2\rfloor)를 골라 그 부분표본의 공분산 행렬식을 최소화하는, 즉 가장 촘촘히 뭉친 절반을 찾아 그것으로만 μ,Σ\mu,\Sigma 를 추정하는 방법이다. 조합 탐색이라 정확해는 불가능하고 FAST-MCD(1999)의 반복 집중(C-step) 휴리스틱을 쓴다.2 로버스트 추정 일반론은 로버스트 통계 문서 참고.

5. 실제로 어디에 쓰이나[편집]

판별 분석. 다변량 정규 가정 아래 클래스 kk 의 사후확률 로그는 12dΣk(x,μk)212logΣk+logπk-\tfrac12 d_{\Sigma_k}(x,\mu_k)^2 - \tfrac12\log|\Sigma_k| + \log\pi_k 다. 클래스마다 Σk\Sigma_k 를 따로 두면 이차판별분석(QDA), 전부 공유하면 이차항이 상쇄되어 결정경계가 평면이 되는 선형판별분석(LDA)이다. 즉 LDA/QDA는 “각 클래스까지의 마할라노비스 거리가 가장 가까운 쪽으로 배정”의 다른 이름이며, 가우시안 혼합 모형의 E-스텝 책임도 같은 양으로 계산된다.

칼만 필터의 게이팅. 예측 잔차(이노베이션) ν=zHx^\nu = z - H\hat x 와 그 공분산 S=HPHT+RS = HPH^{\mathsf T}+R 에 대해 정규화 잔차 제곱

NIS=νTS1ν\mathrm{NIS} = \nu^{\mathsf T} S^{-1}\nu

이 필터가 일관적이라면 χm2\chi^2_m 을 따른다(mm 은 관측 차원). 두 가지로 쓴다. (1) 게이팅 — 임계값을 넘는 관측은 아예 갱신에 넣지 않는다. 다중 표적 추적에서 어떤 관측을 어떤 트랙에 붙일지 후보를 추리는 1차 필터가 이것이고, 그 뒤 헝가리안 알고리즘 같은 배정 문제로 넘어간다. (2) 필터 일관성 검사 — 시계열 평균 NIS가 mm 보다 꾸준히 크면 QQRR 을 과소평가한 것이다. 센서 융합 튜닝에서 제일 먼저 보는 숫자다.3

호텔링 T2T^2 관리도. 통계적 공정관리에서 변수 pp 개를 따로따로 관리도에 그리면 상관을 무시해 검출력이 나빠진다. 마할라노비스 거리를 그대로 관리 통계량으로 쓰는 것이 호텔링 T2T^2 이고, 표본평균에 대해서는

T2=n(xˉμ0)TS1(xˉμ0),npp(n1)T2F(p, np)T^2 = n(\bar x - \mu_0)^{\mathsf T} S^{-1}(\bar x - \mu_0), \qquad \frac{n-p}{p(n-1)}\,T^2 \sim F(p,\ n-p)

가 성립한다. 반도체 장비의 수백 채널 센서를 하나의 스칼라로 요약해 감시하는 다변량 관리도가 이 계열이다. 한계도 명확하다 — T2T^2 가 튀었다는 것만 알려 줄 뿐 어느 변수 때문인지는 말해 주지 않아서, 기여도 분해를 따로 해야 한다.

형상·거리 학습. 능동 형상 모형은 형상 파라미터가 학습 분포 안에 머물도록 마할라노비스 반경으로 클리핑하고, 랜드마크 주변 밝기 프로파일 매칭도 마할라노비스 거리로 한다. 더 나아가 Σ1\Sigma^{-1} 자리에 임의의 양정치 MM 을 놓고 MM 자체를 데이터로 학습하는 것이 거리 학습(metric learning)이며, dM2=(xy)TM(xy)d_M^2 = (x-y)^{\mathsf T}M(x-y) 형태는 브레그만 발산의 이차 생성함수 사례이기도 하다.

6. 수치 구현에서 지킬 것[편집]

  • Σ1\Sigma^{-1} 을 만들지 마라. 촐레스키 분해 한 번 해 두고 삼각 후진대입으로 y=L1(xμ)y=L^{-1}(x-\mu) 를 푼 뒤 y2\lVert y\rVert^2 를 쓴다. 역행렬을 명시적으로 만들면 오차가 늘고 비용도 더 든다. 점 하나당 O(p2)O(p^2), 분해는 O(p3)O(p^3) 한 번뿐이다.
  • 분해가 실패하면 그건 신호다. 촐레스키가 실패한다는 것은 Σ^\hat\Sigma 가 양정치가 아니라는 뜻이고, 십중팔구 nn 이 부족하거나 중복 변수가 있다는 뜻이다. +1e-9*I 로 덮기 전에 왜 그런지부터 보는 게 맞다.
  • 고차원에서는 유클리드로 회귀한다. pp 가 매우 크고 Σ^\hat\Sigma 를 못 믿어 Σ^I\hat\Sigma \approx I 로 수축시키면, 남는 것은 유클리드 거리이고 거리 집중 현상도 그대로 따라온다. 거리를 고쳐도 차원의 저주는 안 없어진다 — 차원 자체를 줄이거나(커널 PCA, 무작위 사영) 거리를 포기하는 쪽(자카드 유사도 같은 집합 기반 척도)이 진짜 탈출구다.
  • 정규성을 확인해라. χ2\chi^2 임계값의 근거는 다변량 정규 가정이다. 꼬리가 두껍거나 다봉이면 임계값이 의미를 잃는다. di2d_i^2 의 순서통계량을 χ2\chi^2 분위수에 대해 찍는 Q-Q 도표가 5초짜리 점검이다.

7. 관련 문서[편집]

8. Footnotes[편집]

  1. 마할라노비스는 인도통계연구소(ISI)를 세우고 인도의 국가 표본조사 체계를 설계한 사람이다. 통계학자가 국가 통계 인프라를 통째로 만든 사례라 인도에서는 그의 생일(6월 29일)이 국가 통계의 날이다. 정작 이 거리는 캘커타 부근 카스트 집단 간 두개 계측치의 유사성을 재려던 인류측정학 논문에서 나왔다.

  2. C-스텝은 «현재 추정으로 거리를 재고, 가까운 hh 개만 남겨 다시 추정한다»의 반복이다. 행렬식이 단조감소한다는 것만 보장되고 전역해는 보장되지 않아서, 무작위 초기 부분집합을 수백 개 뿌리고 제일 좋은 것을 고른다. 이름은 «Fast»인데 정신은 «많이 던지기»라 몬테카를로 방법에 가깝다.

  3. NIS가 계속 크면 “필터가 자기 예측을 실제보다 정확하다고 믿고 있다”는 뜻이라, 결국 관측을 무시하기 시작하고 트랙을 놓친다. 반대로 NIS가 계속 mm 보다 한참 작으면 잡음을 과대평가해 필터가 지나치게 관측에 끌려다닌다. 둘 다 에러 없이 조용히 돌아가는 종류의 고장이라, 게이팅 임계값만 만지고 원인을 안 보면 현생이 길어진다.