1. 판별분석
판별분석은 일종의 분류(classification)의 문제로, 두 개 또는 그 이상의 그룹(또는 군집 또는 모집단)이 사전에 알려져 있을 때, 새로운 관측값을 특성에 기초하여 이미 알려진 모집단 가운데 하나로 분류하는 기법이다. 판별분석은 두 가지의 목적을 가진다. 하나는 알려진 모집단으로부터 관측값들의 집합을 구별하는 분류기(classifier)를 찾는 것이며, 다른 하나는 이 분류기를 이용하여 구분되지 않은 관측값을 특정 그룹으로 구분 짓는 것이다.
판별분석에서는 모집단에 대한 다변량 정규성, 그룹-내 공분산행렬의 동일성, 변수들 간의 낮은 다중공선성의 가정이 요구된다.
2. 판별분석의 원리
두 그룹 A, B가 존재하며, 두 그룹의 각 원소를 X1, X2에 대해 측정하였다. 타원은 각 그룹별 95% 자룟값을 포함하는 선이라고 하자. 만약 타원이 교차하는 두점을 지나는 직선을 그은 후 그 직선을 새로운 축 Z에 사영시킨다고 할 때, 판별분석은 사영된 단일분포 A'와 B' 간의 중첩(음영된 부분)이 최소화 되게 하는 직선을 찾는 것이다. 이 직선은 X1과 X2의 선형결합(새로운 축)으로 이루어져 있으며, A와 B를 가장 잘 분류하는 판별식(분류기)이라고 부른다.
3. 판별분석의 종류
판별분석은 두 가지 서로 다른 방향에서 해석될 수 있다. 첫째는 베이지안 관점으로 주어진 예측변수 x자료를 가장 큰 사후확률을 가지는 군집 또는 사후확률의 분자에 해당하는 식을 최대로 하는 군집으로 분류하는 것이다.
$\pi(y = C_l | x)$ (x가 주어졌을 때 l그룹에 속할 확률 = 사후확률)
$\pi(y = C_l) \pi(x | y=C_l)$ (k그룹에 속할 확률 = 사전확률 x l그룹으로부터 x자료가 나올 확률 = 가능도함수)
(1) 선형판별분석(LDA)
조건부분포 $\pi(x | y=C_l)$ 에 대해 군집-특정적 평균벡터 $\mu_l$ 과 공통의 공분산행렬 $\Sigma$ 를 가지는 다변량 정규분포 N($\mu_l$,$\Sigma$)를 가정한다. y가 given되어 있어도 분포는 같고 그룹에 따라 평균벡터$\mu_l$ 만 다르므로 다변량 정규분포 식과 유사하다고 생각하면 된다.
$f(x;\mu_l,\Sigma) = (2\pi)^{-p/2}det(\Sigma)exp[-\frac{1}{2}(x-\mu_l)^T\Sigma^{-1}(x-\mu_l)$
사후확률의 분자에 해당하는 식에 로그를 취한 결과는
$x^T\Sigma^{-1}\mu_l - 0.5\mu_l^T\Sigma^{-1}\mu_l + log(\pi(y=C_l))$
이 된다. 이를 판별함수(discriminant function)이라고 하며, 그룹 간 판별함수의 차가 판별식이 된다. 판별함수 식이 간단하게 정리된 이유는 판별식을 구할 때 그룹간 동일한 항들은 제거되기 때문이다.
(2) 이차판별분석(QDA)
조건부분포 $\pi(x | y=C_l)$ 에 대해 군집-특정적 평균벡터 $\mu_l$ 과 공통의 공분산행렬 $\Sigma_l$ 를 가지는 다변량 정규분포 N($\mu_l$,$\Sigma_l$)를 가정한다. 이 때, 이차판별함수는
$-0.5log|\Sigma_l| - 0.5(x-\mu_l)^T\Sigma_l^{-1}(x-\mu_l) + log(\pi(y=C_l))$
으로 주어지고, 각 쌍의 군집 k와 l간의 결정 경계(decision boundary)는 이차식으로 표현된다.
iris 데이터에 QDA와 LDA를 적용한 결과, QDA가 더 유연하게 자료를 분류하는 것을 볼 수 있다. QDA에서는 각 군집에 대해 공분상행렬을 추정해야 하며, 따라서 추정해야할 모수의 수가 크게 증가한다. 이 사실은 예측변수의 수가 각 군집 내에서 사례 수보다 작아야하며, 이 경우에만 군집-특정적 공분산 행렬이 역행렬을 가지는 것이 보장된다. (=singular matrix가 아님을 보장)
(3) 일반화(Regularized) 판별분석
LDA와 QDA 간의 타협적인 방법으로 QDA의 구분된 공분산을 LDA의 공통인 공분산 쪽으로 축소(shrink)를 허용하는 것이다.
$\Sigma(\alpha) = \alpha\Sigma_l+(1-\alpha)\Sigma$
여기서 \Sigma는 LDA에서 사용되는 공통의 공분산 행렬이고, $Sigma_l은 QDA에서 사용되는 군집-특정적 공분산 행렬이다. \alpha는 0과 1 사이의 값으로 validation set 또는 cross-validation에 기초하여 최적의 성능을 나차내는 값으로 정해진다.
두 번째는 데이터의 중심 간에 최대의 분리가 일어나고 동시에 데이터의 각 그룹 내의 변동을 최소화하는 예측변수들의 선형결합(판별식)을 찾는 것이다. 이 방법은 Fisher가 제안한 그룹-내(within-class)공분산 대비 그룹-간(between-class) 공분산을 최대로 하는 예측변수들의 선형결합을 찾는 것과 동일하다.
p차원의 예측변수 X의 공분산 행렬 $\Sigma(nxp 행렬)$은 군집-내 공분산 W와 군집-간 공분산B로 다음과 같이 분해된다.
$\Sigma = W + B$
'Multivariate analysis > 다변량분석' 카테고리의 다른 글
밀도기반군집(density-based clustering) (0) | 2021.03.05 |
---|---|
혼합분포군집(mixture distribution clustering) (0) | 2021.03.03 |
공분산 분석 (ANCOVA) (0) | 2020.05.29 |
Hotelling's T-Squared (0) | 2020.05.27 |
ANOVA(분산분석), MANOVA(다변량분산분석) (0) | 2020.05.08 |
댓글