← 다변량통계
PART 2 · 05 다변량통계 · 11

다변량 이상치와 거리

변수 간 관계를 고려해 이례적인 관측값 탐지

다변량 이상치마할라노비스 거리공분산카이제곱 기준강건 추정

보통 고객월 구매액50만 원구매 빈도10회1회 구매액5만 원조합: 평소 패턴이 고객월 구매액50만 원구매 빈도1회1회 구매액50만 원조합: 드문 패턴=월 구매액은 같아도, 빈도와 1회 금액의 조합은 전혀 다르다

어떤 고객의 월평균 구매액이 50만 원이라고 가정해 보겠습니다. 이 수치만 보면 특별히 이상하다고 보기 어려울 수 있습니다. 그런데 이 고객이 구매 빈도는 매우 낮고, 한 번 구매할 때 지출하는 금액은 유난히 높다면 어떨까요? 각각의 변수만 따로 살펴볼 때는 놓칠 수 있지만, 여러 변수의 조합을 함께 보면 이례적인 관측값일 수 있습니다. 다변량 이상치(multivariate outlier)는 개별 변수의 값뿐 아니라 여러 변수 사이의 관계를 고려했을 때 다른 관측값들과 동떨어진 데이터입니다. 이를 탐지하는 대표적인 방법이 마할라노비스 거리(Mahalanobis distance)입니다.

SECTION 01

단변량 이상치와 다변량 이상치의 차이

먼저 두 개념을 구분해 보겠습니다.

단변량 이상치

한 변수의 값이 나머지 관측값에 비해 유난히 크거나 작습니다. 예를 들어 대부분의 고객이 한 달에 1~10회 구매하는데, 한 고객만 100회 구매한 경우입니다.

다변량 이상치

개별 변수의 값은 평범해 보여도 여러 변수의 조합이 일반적인 패턴에서 벗어납니다. 예를 들어 구매 빈도와 구매액의 평소 관계를 고려했을 때 유난히 특이한 고객입니다.

단변량 이상치: 한 변수만 봐도 보임다변량 이상치: 조합을 봐야 보임100회1~10회월 구매 횟수조합이 이례월 구매 빈도 →월 구매액 →
그림 1. 단변량 이상치와 다변량 이상치

그림 1의 왼쪽에서 100회 구매한 고객은 구매 횟수 하나만 봐도 바로 눈에 띕니다. 오른쪽의 빨간 점은 다릅니다. 축 옆의 눈금(각 변수의 값)을 보면 구매 빈도도, 구매액도 다른 고객들의 범위 안에 있습니다. 하지만 "빈도가 높을수록 구매액도 높다"는 전체 흐름에서 보면, 빈도는 낮은데 구매액은 높은 이례적인 조합입니다. 이처럼 다변량 이상치는 변수 간 상관관계를 고려해야 발견할 수 있는 경우가 있습니다. 따라서 변수별로 이상치 검사를 했다는 사실만으로 다변량 이상치까지 모두 확인했다고 볼 수는 없습니다.

SECTION 02

유클리드 거리만으로는 부족할까?

일반적으로 두 점 사이의 거리를 계산할 때는 유클리드 거리를 사용합니다. 두 변수 x1, x2가 있을 때, 관측값 (x1, x2)와 기준점 (μ1, μ2) 사이의 거리는 다음과 같습니다. 기준점은 각 변수의 평균으로 설정할 수 있습니다.

d = √[(x1 − μ1)² + (x2 − μ2)²]

하지만 유클리드 거리에는 두 가지 한계가 있습니다. 첫째, 변수 간 상관관계를 직접 반영하지 않습니다. 키와 몸무게처럼 서로 관련이 있는 변수에서는 두 변수가 함께 변하는 패턴을 고려할 필요가 있습니다. 둘째, 측정 단위가 크게 다르면 값의 범위가 큰 변수가 거리에 더 큰 영향을 줍니다.

구매 빈도구매액(원)유클리드 거리실제 차이기준(평균)5회30만 원고객 P15회30만 원1010회 차이고객 Q5회31만 원10,0001만 원 차이구매액을 원 단위로 넣으면, 사소한 1만 원 차이가 10회 구매 차이보다 1,000배 멀게 계산됨
그림 2. 단위가 다르면 유클리드 거리가 한 변수에 끌려간다

그림 2에서 고객 P는 평균보다 10회 더 구매했고, 고객 Q는 평균보다 1만 원 더 썼습니다. 구매액을 원 단위로 넣고 유클리드 거리를 계산하면 P는 10, Q는 10,000입니다. 사소한 1만 원 차이가 10회 구매 차이보다 1,000배 멀다고 계산되는 셈입니다. 이러한 문제를 보완하는 방법이 마할라노비스 거리입니다.

SECTION 03

마할라노비스 거리란?

마할라노비스 거리는 관측값이 다변량 자료의 중심에서 얼마나 떨어져 있는지 측정하면서, 변수별 분산과 변수 간 공분산을 함께 고려합니다.

DM² = (x − μ)T Σ−1 (x − μ)
x: 거리를 계산하려는 관측값의 변수 벡터 · μ: 기준이 되는 평균 벡터 · Σ: 변수들의 공분산행렬 · Σ−1: 공분산행렬의 역행렬 · DM²: 마할라노비스 거리의 제곱

마할라노비스 거리는 DM = √DM²로 계산합니다. 실무에서는 거리 자체보다 제곱거리 DM²를 이용해 기준값과 비교하기도 합니다. 공분산행렬의 역행렬 Σ−1로 나누는 부분이 핵심입니다. 분산이 큰 변수는 그만큼 덜 반영되어 단위 문제가 사라지고, 상관이 있는 변수는 "함께 움직이는 방향"을 따로 계산합니다. 숫자로 따라가 보겠습니다.

평균 μ빈도 5회 · 구매액 30만 원표준편차빈도 2회 · 구매액 10만 원상관 r = 0.8빈도 높으면 구매액도 높음고객 Q7회 · 40만 원표준화 z = (+1, +1)유클리드(z) = √2 ≈ 1.41D² = 1.11고객 P7회 · 20만 원표준화 z = (+1, −1)유클리드(z) = √2 ≈ 1.41D² = 10.00D² = (z1² − 2r·z1z2 + z2²) / (1 − r²) · 두 변수일 때의 간단한 형태
그림 3. 숫자로 따라가는 마할라노비스 거리

월 구매 빈도의 평균은 5회(표준편차 2회), 월 구매액의 평균은 30만 원(표준편차 10만 원)이고, 두 변수의 상관이 0.8이라고 가정하겠습니다. 두 고객 모두 구매 빈도가 7회로 평균보다 표준편차 1개만큼 높습니다.

표준화한 뒤의 유클리드 거리는 두 고객 모두 √2 ≈ 1.41로 같습니다. 그런데 마할라노비스 제곱거리는 Q가 (1 − 1.6 + 1) / 0.36 = 1.11, P가 (1 + 1.6 + 1) / 0.36 = 10.00입니다. Q는 "빈도가 높으면 구매액도 높다"는 관계를 그대로 따르므로 가깝고, P는 그 관계를 거스르므로 9배 멀어집니다. 쉽게 말하면, 마할라노비스 거리는 자료의 분포와 상관관계를 고려했을 때 관측값이 얼마나 이례적인지 나타내는 거리입니다.

SECTION 04

변수 간 상관관계가 결과를 바꾸는 예시

키와 몸무게가 양의 상관관계를 가진 집단을 생각해 보겠습니다. 키가 큰 사람은 대체로 몸무게도 더 나가는 경향이 있다고 가정합니다.

A 182cm · 79kg D² = 4.2B 182cm · 57kg D² = 15.31501601701801905060708090키 (cm)몸무게 (kg)실선 95% · 점선 99% 타원
그림 4. 키와 몸무게: 같은 키 182cm라도 몸무게에 따라 D²가 크게 다름 (모의 120명)

상관관계가 있는 자료에서는 분포가 그림 4처럼 타원형으로 길게 늘어납니다. 키 182cm인 두 사람 가운데 A(79kg)는 표준화한 유클리드 거리가 2.66로 B(57kg)의 2.24보다 오히려 큽니다. 하지만 A는 타원이 길게 뻗은 방향 위에 있어 D² = 4.2에 그치고, B는 타원의 좁은 방향으로 벗어나 D² = 15.3로 99% 타원 밖에 놓입니다. 즉, 마할라노비스 거리는 단순히 중심에서 멀리 있는지만 보는 것이 아니라 자료가 주로 퍼져 있는 방향과 폭까지 고려합니다. 공분산행렬이 이런 타원 모양을 만드는 원리는 02 공분산행렬 챕터 7절에서 다뤘습니다.

SECTION 05

마할라노비스 거리는 어떻게 계산할까?

실제 계산에서는 먼저 분석할 변수들을 선택하고, 평균 벡터와 공분산행렬을 구한 뒤 각 관측값에 대한 거리를 계산합니다. 예를 들어 X1(월 구매 빈도)와 X2(월평균 구매액)를 분석한다면 절차는 다음과 같습니다.

변수 선택목적에 맞게평균 · 공분산중심과 관계D² 계산관측값마다기준과 비교후보 → 원자료 검토
그림 5. 마할라노비스 거리 계산 절차
  1. 변수 선택: 분석 목적에 맞는 변수를 선정합니다.
  2. 평균과 공분산 계산: 각 변수의 중심과 변수 간 관계를 파악합니다.
  3. 거리 계산: 각 관측값의 마할라노비스 거리 또는 제곱거리를 계산합니다.
  4. 기준값과 비교: 거리가 큰 관측값을 후보로 표시하고 원자료를 검토합니다.

중요한 점은 거리가 크다는 사실이 곧 데이터 오류를 의미하지는 않는다는 것입니다. 해당 관측값은 실제로 드문 특성을 가진 고객일 수도 있고, 입력 오류나 측정 오류일 수도 있습니다.

SECTION 06

어느 정도면 이상치일까?

마할라노비스 거리는 그 자체로 이상치 여부를 확정하는 값이 아닙니다. 거리가 얼마나 큰지를 판단하려면 기준이 필요합니다. 자료가 다변량 정규분포를 따르고 모집단 평균과 공분산을 알고 있다면 다음 관계를 활용할 수 있습니다.

DM² ~ χ²p
p: 분석에 포함된 변수의 수 · χ²p: 자유도 p인 카이제곱분포

이 관계를 이용하면 유의수준에 따른 기준값을 설정할 수 있습니다. 예를 들어 유의수준 0.01을 기준으로 한다면 DM² > χ²p, 0.99를 만족하는 관측값을 이례적인 후보로 봅니다. 변수가 2개라면 기준값은 χ²2, 0.99 = 9.21입니다. 3절의 고객 P(D² = 10.00)는 이 기준을 넘습니다.

χ²(2, 0.99) = 9.21넘은 관측값 5개04812162024모의 고객 500명 · 변수 2개 · 막대 = D² 분포, 곡선 = 자유도 2인 카이제곱대부분 작은 값에 몰림
그림 6. D²의 분포를 카이제곱 기준과 비교 (모의 고객 500명, 변수 2개)

그림 6은 모의 고객 500명의 D²를 막대로, 자유도 2인 카이제곱분포를 곡선으로 겹친 것입니다. 대부분의 고객은 작은 값에 몰려 있고, 기준값 9.21을 넘은 고객은 5명입니다. 다만 실제 분석에서는 모집단의 평균과 공분산을 알지 못해 표본으로 추정하는 경우가 많습니다. 이때 표본 크기와 추정 방법에 따라 거리의 분포와 적절한 기준값이 달라질 수 있으므로, 위의 카이제곱 기준을 그대로 적용하는 것이 항상 정확한 것은 아닙니다.

100명 검사정상인데도 약 1명1,000명 검사정상인데도 약 10명10,000명 검사정상인데도 약 100명모두 정상(다변량 정규)이어도 0.01 기준이면 평균 1%가 기준을 넘음
그림 7. 여러 관측값을 동시에 검사하면

또한 수백 또는 수천 개의 관측값을 동시에 검사하면 정상적인 관측값 중에서도 기준을 초과하는 사례가 생깁니다. 유의수준 0.01이라면 자료가 완벽하게 정규분포를 따르더라도 평균 1%는 기준을 넘습니다. 그림 7처럼 1,000명을 검사하면 정상 고객 약 10명, 10,000명이면 약 100명이 후보로 표시될 수 있습니다. 그림 6에서 기준을 넘은 5명도 500명의 1%와 같은 수준이므로, 모두 이례적인 고객이라고 단정할 수 없습니다.

SECTION 07

분석 결과는 어떻게 해석할까?

다음은 설명을 위한 가상의 결과입니다.

관측값마할라노비스 제곱거리해석
고객 A0.8기준점과 비교적 가까움
고객 B2.1중심에서 다소 떨어져 있음
고객 C5.4다른 관측값과 비교해 검토할 필요가 있을 수 있음
고객 D14.7이례적인 관측값인지 추가 확인이 필요함

이 표에는 변수 수와 통계적 기준값이 제시되어 있지 않으므로, 숫자만 보고 고객 C나 D를 확정적인 이상치라고 판단할 수는 없습니다. 같은 D²라도 변수 수 p에 따라 기준값이 달라지기 때문입니다.

관측값D²p = 2 (기준 9.21)p = 4 (기준 13.28)p = 6 (기준 16.81)
고객 A0.8———
고객 B2.1———
고객 C5.4———
고객 D14.7초과초과—
0369121518p = 2 · 9.21p = 4 · 13.28p = 6 · 16.81A 0.8B 2.1C 5.4D 14.7변수가 2개면 D만 기준(9.21)을 넘고, 6개면 아무도 넘지 않음 (유의수준 0.01)
그림 8. 같은 D²라도 변수 수 p에 따라 판정이 달라진다 (유의수준 0.01)

그림 8처럼 변수가 2개나 4개라면 고객 D는 기준을 넘는 후보가 되지만, 변수가 6개라면 기준(16.81)에 미치지 못합니다. 변수가 많을수록 우연히 생기는 거리도 커지므로 기준값이 함께 올라가는 것입니다. 고객 C(5.4)는 어느 경우에도 기준을 넘지 않습니다.

보고 문장 예시

월 구매 빈도와 월 구매액(p = 2)으로 각 고객의 마할라노비스 제곱거리를 계산하고, 유의수준 0.01의 카이제곱 기준값(χ²(2) = 9.21)과 비교하였다. 고객 D(D² = 14.7)만 기준을 넘어 다변량 이상치 후보로 분류되었으며, 고객 A~C(D² = 0.8~5.4)는 기준 미만이었다. 고객 D의 원자료를 확인하고, 포함한 경우와 제외한 경우의 주요 분석 결과를 함께 제시하였다.

실제 분석에서는 다음을 확인하는 것이 좋습니다.

이 과정을 통해 단순히 이상치 후보를 찾는 데서 그치지 않고, 해당 관측값이 연구 결과에 어떤 영향을 미치는지 판단할 수 있습니다.

SECTION 08

다변량 이상치 분석에서 주의할 점

① 변수 선택이 중요합니다

분석 목적과 관계없는 변수를 많이 넣으면 거리의 의미가 흐려질 수 있습니다.

② 공분산행렬을 안정적으로 추정해야 합니다

변수 간 상관이 지나치게 강하거나 변수 수가 표본 수에 비해 많으면 역행렬을 계산하기 어렵거나 결과가 불안정해질 수 있습니다. 변수 선택이나 강건한 추정 방법을 검토합니다.

③ 정규분포 가정에 주의합니다

다변량 정규분포에서 벗어난 자료에 정규분포 기반 기준값을 그대로 적용하면 이상치 판정이 부정확할 수 있습니다.

④ 무조건 제거해서는 안 됩니다

이상치가 실제로 중요한 소수 집단을 나타낼 수도 있습니다. 제거 여부는 오류 여부와 분석 목적을 바탕으로 결정합니다.

⑤ 평균과 공분산이 이상치의 영향을 받습니다

극단적인 관측값이 평균과 공분산을 왜곡하면, 오히려 이상치가 뚜렷하게 탐지되지 않을 수 있습니다.

⑤번 가림 효과(masking)는 직관과 어긋나므로 예시로 확인해 보겠습니다.

일반 평균 · 공분산강건 추정 (MCD)주황 10개 중 기준 초과 0개주황 10개 중 기준 초과 10개이상치 무리가 평균 · 공분산을 끌어당기면 오히려 잘 안 보임 (가림 효과)
그림 9. 이상치 무리가 기준을 가리는 문제: 일반 추정 vs 강건 추정 (MCD)

그림 9는 정상 고객 80명과 오른쪽 아래에 모인 이례적인 고객 10명(주황)입니다. 일반 평균과 공분산으로 D²를 계산하면 이 10명이 평균을 끌어당기고 공분산을 부풀려, 주황 10명 가운데 기준 9.21을 넘은 고객은 0명입니다. 이상치에 덜 흔들리도록 다수의 중심부만으로 평균과 공분산을 추정하는 강건 추정(MCD, Minimum Covariance Determinant)을 쓰면 주황 10명이 모두 기준을 넘습니다. 이상치가 여러 개 몰려 있을 가능성이 있다면 강건한 다변량 이상치 탐지 방법을 함께 고려합니다.

✓ 핵심 정리

변수 간 관계를 고려해야 보이는 이상치가 있습니다.


다음은 12 다변량 분석의 진단과 해석입니다. 지금까지 살펴본 다변량 분석의 결과가 연구 목적에 맞는지, 얼마나 안정적인지, 어디까지 해석할 수 있는지 점검하는 방법을 정리합니다.

KEY TAKEAWAYS

마할라노비스 거리는 공분산을 이용해 단위 차이와 변수 간 상관을 함께 고려한 거리입니다. 각 변수로는 평범해도 관계를 거스르는 관측값은 멀리 계산됩니다. 판정은 변수 수에 맞는 카이제곱 기준, 다중 검사, 가림 효과를 함께 고려하고, 후보는 삭제하기 전에 원자료로 검토합니다.