판별분석 (LDA · QDA)
알려진 집단의 특성을 학습해 새 관측값의 집단 분류
여러 변수를 이용해 사람이나 제품을 미리 정해진 집단으로 구분하고 싶을 때는 어떻게 해야 할까요? 예를 들어 기존 고객의 구매 빈도, 평균 구매액, 방문 횟수 자료로 ‘이탈 고객’과 ‘유지 고객’의 특성을 학습한 뒤 새 고객이 어느 쪽에 가까운지 분류하거나, 제품의 측정값을 이용해 이미 분류 기준이 정해진 품질 등급을 예측할 수 있습니다. 판별분석(Discriminant Analysis)은 집단이 이미 구분되어 있는 데이터를 이용해 각 집단의 특성을 학습하고, 새로운 관측값이 어느 집단에 속할지 분류하는 방법입니다. 이 장에서는 대표적인 두 방법인 선형판별분석(LDA)과 이차판별분석(QDA)의 원리와 차이를 살펴봅니다.
판별분석은 어떤 문제를 해결할까?
한 은행이 기존 고객의 정보를 활용해 대출 상환 여부를 분류한다고 가정하겠습니다. 분석에 사용하는 변수는 연소득, 기존 부채, 신용점수, 과거 연체 횟수입니다. 과거 고객의 데이터에는 실제 상환 여부가 기록되어 있습니다. 판별분석은 이 정보를 바탕으로 상환 고객과 연체 고객이 어떤 특성을 보이는지 학습합니다.
그림 1처럼 판별분석은 이미 정답 집단이 있는 데이터로 학습하는 지도학습 기반의 분류 방법입니다. 학습한 모형은 새로운 고객의 특성을 입력받아 각 집단에 속할 가능성을 평가합니다. 다만 판별분석이 집단을 무조건 정확하게 구분하는 것은 아닙니다. 실제 집단 간 특성이 겹치거나 새로운 데이터의 패턴이 기존 학습 데이터와 달라지면 분류 오류가 발생할 수 있습니다.
판별함수는 어떻게 집단을 구분할까?
판별분석은 여러 변수의 정보를 조합해 집단을 구분하는 기준을 만듭니다. 두 집단을 구분하는 간단한 선형판별함수는 다음과 같이 나타낼 수 있습니다.
X1, …, Xp: 분류에 사용하는 변수 · b0: 절편 · b1, …, bp: 각 변수에 부여되는 계수 · D(x): 관측값을 구분하는 판별점수
예를 들어 신용점수와 연체 횟수를 이용한다면, 두 변수의 조합으로 고객의 판별점수를 계산할 수 있습니다. 점수가 기준보다 크면 한 집단으로, 작으면 다른 집단으로 분류합니다.
그림 2에서 판별점수가 기준값과 정확히 같은 점들을 이은 것이 검은 경계선입니다. 선 아래쪽(신용점수가 높고 연체가 적은 쪽)은 상환, 위쪽은 연체로 분류됩니다. 주황색 새 고객은 경계선 바로 위에 있어 어느 쪽으로 분류되든 확신이 낮은 경우입니다. 두 집단의 점이 경계 근처에서 섞여 있으므로 일부 고객은 잘못 분류될 수밖에 없습니다.
변수가 두 개라면 분류 경계는 이처럼 직선으로 나타나고, 변수가 더 많으면 고차원 공간의 초평면으로 표현됩니다. 단, 실제 LDA의 분류는 판별점수만으로 단순히 결정되는 것이 아니라 집단별 평균, 공통 공분산행렬, 사전확률 등을 이용해 계산한 판별함수 또는 사후확률을 바탕으로 수행할 수 있습니다.
선형판별분석(LDA)이란?
LDA(Linear Discriminant Analysis)는 각 집단의 데이터가 다변량 정규분포를 따르고, 집단 간 공분산행렬이 같다고 가정하는 대표적인 판별분석 방법입니다. 이 가정 아래에서는 분류 경계가 선형 형태가 됩니다. 집단마다 평균은 다를 수 있지만, 데이터의 퍼짐과 변수 간 관계를 나타내는 공분산 구조는 같다고 보는 것입니다. 예를 들어 두 집단의 평균적인 신용점수는 다르더라도, 신용점수와 소득이 함께 변하는 방식이나 각 변수의 변동성은 같다고 봅니다. 공분산행렬이 같은지 확인하는 방법은 04 Hotelling의 T² 챕터에서 다뤘습니다.
- 집단별 평균이 다를 수 있습니다.
- 집단별 공분산행렬은 같다고 가정합니다.
- 정규분포와 공통 공분산 가정 아래에서 분류 경계는 선형이 됩니다.
- 추정할 모수가 QDA보다 적어 표본이 상대적으로 적을 때 유리할 수 있습니다.
LDA는 분류뿐 아니라 집단을 잘 구분하는 방향을 찾는 데에도 활용됩니다. 다만 분류 성능이 항상 QDA보다 좋거나, 모든 데이터에서 최선이라는 뜻은 아닙니다.
이차판별분석(QDA)이란?
QDA(Quadratic Discriminant Analysis)는 LDA와 달리 집단마다 공분산행렬이 다를 수 있다고 가정합니다. 예를 들어 상환 고객 집단에서는 신용점수의 변동이 작지만 연체 고객 집단에서는 변동이 크고, 소득과 부채 사이의 관계도 두 집단에서 다르게 나타날 수 있습니다. QDA는 이러한 집단별 공분산 차이를 별도로 추정하므로, 두 집단을 구분하는 경계가 곡선이나 이차식 형태가 될 수 있습니다.
- 집단별 평균이 다를 수 있습니다.
- 집단별 공분산행렬도 다를 수 있습니다.
- 분류 경계가 이차 형태가 될 수 있습니다.
- 더 유연한 경계를 표현할 수 있지만, 추정해야 할 모수가 많아집니다.
QDA는 집단별 데이터의 퍼짐 구조가 실제로 다를 때 유용할 수 있습니다. 반면 표본이 충분하지 않으면 공분산행렬 추정이 불안정해져 과적합 위험이 커질 수 있습니다.
LDA와 QDA의 차이
그림 3의 왼쪽처럼 두 집단의 타원(퍼짐)의 모양과 방향이 같고 위치만 다르면 LDA는 집단 간 차이를 직선 또는 초평면 경계로 구분합니다. 오른쪽처럼 퍼짐과 방향이 다르면 QDA는 그 차이를 반영해 곡선 형태의 경계를 만들 수 있습니다.
| 비교 항목 | LDA | QDA |
|---|---|---|
| 집단별 평균 | 다를 수 있음 | 다를 수 있음 |
| 집단별 공분산행렬 | 같다고 가정 | 다를 수 있음 |
| 분류 경계 | 선형 | 이차 형태 가능 |
| 모수 수 | 상대적으로 적음 | 상대적으로 많음 |
| 데이터 요구량 | 비교적 적은 표본에서도 유리할 수 있음 | 안정적인 공분산 추정을 위해 더 많은 표본이 필요할 수 있음 |
| 주요 위험 | 실제 경계가 비선형이면 적합도가 낮을 수 있음 | 표본이 적으면 과적합할 수 있음 |
LDA와 QDA 중 어느 방법이 더 좋은지는 데이터에 따라 달라집니다. 두 가지 상황을 모의 데이터로 비교해 보겠습니다.
그림 4는 상환 고객은 좁게 모여 있고 연체 고객은 넓게 퍼진 자료입니다. LDA의 직선 경계는 넓게 퍼진 연체 고객을 제대로 감싸지 못해 새 데이터 정확도가 79%였고, QDA의 곡선 경계는 상환 고객 무리를 둘러싸 87%였습니다. 집단의 퍼짐이 실제로 다를 때는 QDA가 유리합니다.
그런데 그림 5처럼 변수가 6개인 자료에서 집단당 학습 표본이 10명뿐이면 LDA 59%, QDA 54%로 오히려 LDA가 낫습니다. QDA는 집단마다 공분산행렬을 따로 추정해야 해서, 표본이 적으면 그 추정이 불안정하기 때문입니다. 표본이 집단당 320명으로 늘면 LDA 66%, QDA 67%로 순서가 바뀝니다. 따라서 두 방법을 후보로 두고 검증 데이터에서 분류 성능을 비교하는 것이 바람직합니다.
판별분석 결과는 어떻게 해석할까?
판별분석을 실행하면 단순히 집단 이름만 출력되는 것이 아니라, 모델의 적합성과 분류 성능을 평가할 수 있는 다양한 결과를 확인할 수 있습니다. 예를 들어 테스트 데이터 200명을 분류했다고 가정하겠습니다.
그림 6의 표를 혼동행렬(confusion matrix)이라고 합니다. 실제 상환 고객 130명 중 112명을 상환으로, 실제 연체 고객 70명 중 48명을 연체로 분류해 전체 200명 중 160명을 올바르게 분류했습니다.
하지만 정확도 하나만으로 모델이 좋은지 판단하기는 어렵습니다. 연체 고객을 놓치는 비용이 큰 상황이라면, 실제 연체 고객 중 얼마나 많은 사람을 찾아냈는지를 나타내는 재현율도 중요합니다. 연체를 양성 클래스로 정의하면 다음과 같습니다.
재현율: 실제 연체 고객 중 찾아낸 비율 · 정밀도: 연체로 예측한 고객 중 실제 연체 비율
실제 연체 고객의 약 68.6%를 찾아냈고, 연체라고 예측한 66명 가운데 72.7%가 실제 연체였습니다. 두 지표를 함께 요약한 F1 점수는 2 × 0.727 × 0.686 / (0.727 + 0.686) ≈ 0.706입니다. 이처럼 판별분석은 연구 목적에 따라 정확도, 정밀도, 재현율, F1 점수 등을 함께 살펴봐야 합니다. 각 지표의 계산과 활용은 「분류·예측 가이드」에서 자세히 다룹니다.
신용점수 등 4개 변수로 학습한 판별모형을 테스트 고객 200명에 적용한 결과 정확도는 80%였다. 연체를 양성으로 둘 때 재현율은 68.6%(48/70), 정밀도는 72.7%(48/66), F1 점수는 0.706이었으며, 실제 연체 고객 70명 중 22명은 상환으로 잘못 분류되었다.
판별분석에서 확인할 가정과 주의점
전통적인 LDA와 QDA는 집단별 데이터가 다변량 정규분포를 따른다고 가정합니다. 이 가정에서 크게 벗어나면 이론적 확률 추정이 부정확할 수 있습니다.
LDA는 집단별 공분산행렬이 같다는 가정을 사용합니다. QDA는 집단별로 다른 공분산행렬을 추정하므로 각 집단의 표본이 충분한지 확인해야 합니다.
극단적인 관측값은 평균과 공분산 추정에 영향을 줄 수 있습니다. 거의 같은 정보를 담은 변수가 많으면 공분산행렬을 안정적으로 추정하기 어렵습니다.
같은 데이터로 학습하고 평가하면 성능이 실제보다 높게 나옵니다. 테스트 데이터를 분리하거나 교차검증으로 일반화 성능을 확인합니다.
한 집단의 비율이 훨씬 높다면 전체 정확도만으로 평가하는 것은 위험합니다. 집단별 성능과 사전확률을 함께 확인합니다.
어떤 변수가 집단 구분에 기여한다고 해서 집단 차이를 인과적으로 일으켰다고 할 수는 없습니다. 판별분석의 목적은 주로 분류와 집단 구분입니다.
판별분석과 로지스틱 회귀는 어떻게 다를까?
LDA와 QDA 외에도 집단을 예측하는 방법으로 로지스틱 회귀가 널리 사용됩니다.
| 구분 | LDA · QDA | 로지스틱 회귀 |
|---|---|---|
| 기본 접근 | 집단별 데이터 분포를 모델링 | 집단에 속할 확률을 직접 모델링 |
| 주요 가정 | 집단별 정규분포 등 | 예측변수와 로그 오즈 사이의 관계 등 |
| 분류 경계 | LDA는 선형, QDA는 이차 형태 가능 | 기본 모형은 선형 경계 |
| 활용 | 집단별 분포 구조가 유용할 때 | 확률 해석과 예측변수의 효과 분석에 유용할 때 |
두 방법 모두 분류에 사용할 수 있지만, 모델링하는 대상과 가정이 다릅니다. 어느 방법이 적합한지는 데이터의 특성, 연구 목적, 검증 결과에 따라 판단해야 합니다.
정답 집단으로 경계를 배우고, 새 관측값을 분류합니다.
- 판별분석은 이미 알려진 집단 정보를 바탕으로 새로운 관측값의 집단을 예측하는 지도학습 방법입니다.
- LDA는 집단별 공분산행렬이 같다고 가정해 선형 분류 경계를 만듭니다.
- QDA는 집단별 공분산행렬이 다를 수 있도록 허용해 더 유연한 이차 분류 경계를 만들 수 있습니다.
- QDA는 더 많은 모수를 추정하므로 충분한 표본이 중요합니다.
- 정확도뿐 아니라 정밀도, 재현율, F1 점수와 같은 지표도 분석 목적에 맞게 확인해야 합니다.
- 다변량 정규성, 공분산 구조, 이상치, 표본 크기와 검증 방법을 함께 고려해야 합니다.
다음은 08 정준상관분석(CCA)입니다. 변수 하나와 다른 변수 하나의 관계에서 더 나아가 두 변수 집합 사이의 관계를 분석하는 방법으로, 소비자의 심리적 특성 여러 개와 구매 행동 여러 개가 서로 어떻게 연결되는지 살펴봅니다.
판별분석은 정답 집단이 있는 자료로 집단을 나누는 경계를 학습해 새 관측값을 분류합니다. 공분산이 같다고 보면 LDA의 직선 경계, 다르다고 보면 QDA의 곡선 경계가 됩니다. 어느 쪽이 나은지는 퍼짐의 차이와 표본 크기에 달려 있으므로 검증 데이터로 비교하고, 정확도와 함께 재현율 · 정밀도를 확인합니다.