머피 책 공부하면서 새롭게 알게된 사실 또는 궁금한 부분에 대한 기록입니다.
순서형 변수
머피책의 첫 섹션에서는 기본적인 머신러닝의 목적과 개요에 대해 이야기합니다. 분류문제의 내용을 읽는 중, `순서형` 범주에 관심이 쏠렸습니다. 범주형 반응변수에서 3가지 이상의 범주를 갖는 경우를 명목형 변수라하며, 그것이 순서의 특성을 갖는다면 순서형 변수라고 합니다.
그렇다면, 순서의 특성을 갖는 반응변수를 단순 명목형 변수로 더미코딩 (또는 원핫인코딩) 한다면 어떤 단점 또는 문제가 있을까요? 결론부터 말씀 드리자면, 연구의 목적에 따라 명목형으로 반응변수를 다루어도 큰 상관은 없어보입니다. 다만, 상황의 차이에서 오는 문제와 방법론이 갖는 고유한 차이점만 존재하는것 같습니다.
Prediction
통계의 관점에서 분류문제는 기본적인 회귀분석의 가정 중 하나인 종속변수의 정규성을 만족하지 못합니다. 떄문에 일반화 선형 모델(GLM)로 처리 가능하며, 크게 두 가지를 고려하며 모델링 됩니다:
- 반응변수($Y$)가 어떤 분포를 따르는지 가정
- $Y$와 예측변수($X$) 사이의 관계를 변환하는 적절한 link function($g()$)이 무엇인지
이 두가지를 고려하여 아래와 같은 형식으로 일반적으로 표현이 가능합니다:
$$g(E(Y))=\beta_0+\beta_1x_1+\dots+\beta_kx_k=W^TX$$
Logistic Regression
이진 분류문제에서 GLM의 반응변수가 이항분포를 따른다 가정하며, link function으로는 logit link function을 사용하여 모델링 한 경우를 로지스틱 회귀라 합니다. 원리는 매우 간단합니다. 추정하기 원하는 함수가 확률값($p$)을 반환하는데 0.5를 넘으로 1로 예측을 그렇지 않다면 0으로의 예측을 한다는 아이디어입니다.
그렇다면 왜 logit link function을 사용하는지 봅시다. $p$는 선형 조합으로 나와야 하는데, 확률의 공리에 의한다면, 그 선형 조합 역시 $0 \leq p \leq 1$의 값으로 나와야만 합니다. 아무리 회귀 계수들을 추정 잘 했다 하더라도, 그 범위는 0보다 작아지거나 1보다 커지기 마련입니다. 때문에, link function을 통해 그 선형조합의 범위를 $-\infty$ 부터 $\infty$로 만들자는 것이 핵심입니다.
$$0 \leq p \leq 1$$
$$0 \leq odds = \frac{p}{1-p} \leq \infty$$
$$-\infty \leq log(odds) \leq \infty$$
따라서 로지스틱 회귀의 최종적인 형태는 다음과 같습니다:
$$g(E(Y))=log(\frac{p}{1-p})= W^TX $$
원하는 최종적인 확률 값은 다음과 같이 구할 수 있습니다:
$$p=\frac{e^{ W^TX }} {1+ e^{ W^TX }}$$
이러한 식에 대하여 IRLS(Iterative re-weighted least squared)와 같은 방법을 통해 계수를 추정하면 로지스틱 회귀 모델링이 완료됩니다.
Multinomial Logistic Regression
그렇다면 다중 분류 문제에서는 어찌 모델링을 해야할까요? 이진분류 모델은 $p$가 $P(Y=1|X)$를 뜻하며, 이진 이다보니 자동으로 $P(Y=0|X)$는 $1-p$로 표현이 되었습니다. 다중 분류의 문제에서는 각각의 클래스에 속할 확률에 대하여 모델링을 하면 됩니다. 가령, target이 $k$인 경우의 선형 결합을 $W_k^TX$ 이런식으로 따로따로 모델링하는 상황이 있을 수 있겠지요. 그렇다면 target이 $k$인 확률은 어찌 구하면 될까요? 각 class에 해당되는 선형결합을 모두 사용하여 logit link function을 그대로 적용하면 됩니다:
$$P(Y=k|X)=\frac{e^{W_k^TX}}{\Sigma_{i=1}^{k}{e^{W_i^TX}}}$$
일종의 normalization처럼 되어 하나의 class에 대하여 하나의 최대 확률이 도출되게 됩니다. 모든 class에 대하여 계수를 추정해야 함으로 자유도가 높은 문제가 있습니다.
그렇다면 Multi-label의 경우는 어떨까요? 이 경우는 class별로 로지스틱 회귀 모델링을 하면 되어 더욱 간단해집니다.
Proportional Odds Model
그렇다면 반응변수가 순서형인 경우에는 어찌 모델링을 해야할까요? 이 경우도, GLM을 사용하며, logit link function을 사용합니다. 다만, 이진 분류 문제에서는 $Y$가 특정 class $k$일 확률에 대한 odds인 $\frac{P(Y=1|X)}{1-P(Y=1|X)}$를 사용 했다면, 순서형은 $Y$가 특정 class $k$ 이하(또는 이상)일 확률에 대한 오즈인 cumulative odds; $\frac{P(Y \leq k | X)}{P(Y > k | X)}$를 사용합니다. 이렇게 누적의 개념으로 모델링을 하면, multinomial logistic regression과는 다르게 계수의 수가 팽창되지 않습니다. 모든 class에 대하여 공통의 계수 $\beta$를 사용한다는 이야기 입니다. 때문에 $X$가 하나 증가할 때에 모든 범주의 odds가 일정한 비율로 변한다는 비례승산 가정(Proportional Odds Assumption)이 있어야 합니다. 이 가정을 만족한다면, 비례승산 모델을 다음과 같이 작성 가능합니다:
$$ \frac{P(Y\leq1|X)}{1-P(Y\leq1|X)} = \alpha_k - W^TX$$
여기서의 절편인 $\alpha_k$는 범주간의 경계지점 (일종의 threshold) 입니다. 시작점만 절편을 통해 다르게 반영하며, 예측변수인 $X$의 영향력은 모든 범주에서 동일하게 적용된다는 것을 확인할 수 있습니다. 이러한 성질로 해석이 더욱 용이해집니다.
이 식을 통해 다음과 같이 누적 확률을 구할 수 있습니다:
$$P(Y \leq k|X)=\frac{e^{ \alpha_k - W^TX}}{1+ e^{ \alpha_k - W^TX}}$$
또한, 이를 이용하여 특정 class $k$에 속할 확률 $P(Y=k|X)$은 $ P(Y \leq k|X) - P(Y \leq k-1|X) $로 구할 수 있습니다.
Outro
#1
그저 선형 결합에 대한 범위를 맞추기 위함이라면, 다른 방법도 많을텐데 왜 로그 오즈를 사용하는 방법이 지금까지 살아남았으며, 어떤 특장점이 있는 걸까요? 바로 오즈비에 대한 해석의 용이성 때문입니다. 이에 대한 내용과 다른 link function에 대하여는 다른 포스팅에서 다루겠습니다.
#2
Proportional Odds Assumption에 대한 고찰과, 이를 검정하는 방식, 거기에 더하여 부분적인 가정의 만족을 다루는 Partially Proportional Odds Model과 같은 방식도 존재합니다. 이런 부분들은 너무 디테일하여 나중에 다른 포스트에서 다루겠습니다.
#3
추정하는 방식 역시 IRLS말고도 여러 수치해석학적인 방법론이 있습니다. IRLS의 수렴이 빠르다는 장점이나, 다른 여러 방법론에 대하여도, 다른 포스트에서 다루겠습니다.
#4
예측 문제에서 뿐 아니라 contigency table에서도 두 요인이 명목형이냐, 명목형과 순서형의 조합이냐, 모두 순서형이냐에 따라 여러 통계 검정 기법이 존재합니다. $\chi^2$ 검정, Cochran-Armitage & Mantel-Haenszel 검정, Jonckheere-Terpstra 검정 ... 모두 귀무가설이 제법 다르기에, 비교하기에는 적합하지 않다고 생각되어 기회가 되면 다른 포스트에서도 다루겠습니다.
Reference
"Categorical Data Analysis", Alan Agresti
'통계 & 머신러닝 > 스터디' 카테고리의 다른 글
[머피 책] Chapter 2 #문제풀이 (2) | 2025.02.03 |
---|---|
[머피 책] Chapter 1 #2 (0) | 2025.01.29 |