알고리즘 함수 세팅

분류문제를 푸는 대표적인 알고리즘 Logistic Regression

image.png

  1. 회귀분석 추정

    $$ \begin{align*}Y \approx \hat{Y} &= f(X_1, X_2, ..., X_k) \\&= w_0 + w_1X_1 + w_2X_2 + \cdots + w_kX_k \\&= XW\end{align*} $$

  2. 시그모이드 변환(Logistic/Sigmoid Transformation): Binary Classification 반영하는 곡선 형태로 변경

    $$ \begin{align*}Pr(\hat{Y}) &= \dfrac{1}{1+exp(-\hat{Y})} \\ &= \dfrac{1}{1+exp(-XW)} \\&= \dfrac{exp(XW)}{1+exp(XW)}\end{align*} $$

  3. 로짓 변환(Logit Transformation): X의 선형관계 형태로 변환하여 변수들로 Y=1인 확률 추정

    $$ \begin{align*}Pr(\hat{Y}) \left( 1 + exp(XW) \right) &= exp(XW) \\Pr(\hat{Y}) &= \left( 1 - Pr(\hat{Y}) \right) exp(XW) \\\text{Odds(ratio):} \left( \dfrac{Pr(\hat{Y})}{1 - Pr(\hat{Y})} \right) &= exp(XW) \\\text{Logit(log-odds): } log \left( \dfrac{Pr(\hat{Y})}{1 - Pr(\hat{Y})} \right) &= XW = w_0 + w_1X_1 + w_2X_2 + \cdots + w_kX_k \\\end{align*} $$

추정 결과 해석

  1. 해석 방향: $\hat{Logit}$과 $\hat{Odds}$ 변환으로 가능

    $$ \begin{align*}\text{Logit: } log \left( \dfrac{Pr(Y)}{1 - Pr(Y)} \right) &= X\hat{W} = \hat{w}_0 + \hat{w}_1X_1 + \hat{w}_2X_2 + \cdots + \hat{w}_kX_k \\\text{Odds: } \left( \dfrac{Pr(Y)}{1 - Pr(Y)} \right) &= exp(X\hat{W}) = exp(\hat{w}_0 + \hat{w}_1X_1 + \hat{w}_2X_2 + \cdots + \hat{w}_kX_k) \\\end{align*} $$

  2. 회귀분석과 달리 Y의 로짓변환 값을 X의 선형관계로 추정하기 때문에, 해석시 Odds로 변환해서 해석해야 하므로 주의

    $$ \begin{align*}\left( \dfrac{Pr(Y)}{1 - Pr(Y)} \right) = exp(0.01 + 0.8 X_1)\end{align*} $$

  3. Y 확률 예측: 추정된 계수의 함수를 로지스틱 변환으로 출력

    $$ \begin{align*}Pr(\hat{Y}) &= \dfrac{1}{1+exp(-X\hat{W})} = \dfrac{exp(X\hat{W})}{1+exp(X\hat{W})}\end{align*} $$

  4. 분류 의사결정: 기본 임계값은 0.5로 Y 확률 예측 값이 0.5 이상이면 1, 0.5 미만이면 0으로 분류

    $$ \begin{align*}\hat{Y} = \begin{cases} 1 ~~~~ \text{if } ~~~ Pr(\hat{Y}) >= 0.5 \\ 0 ~~~~ \text{if } ~~~ Pr(\hat{Y}) < 0.5 \end{cases}\end{align*} $$