본문 바로가기
IT/통계

로지스틱 회귀 분석 예시로 쉽게 이해하기

by 모던네이쳐 2020. 9. 30.
728x90

 제품이 양품과 불량품이라는 두 가지 경우의 수를 가진 것처럼 로지스틱 회귀 분석은 종속변수가 이 분형일 때 사용된다. 이 종속변수는 하나 이상의 독립변수와 관계가 있다는 가정하에 회귀모형을 만들어 사용하게 된다. 이러한 특징을 가진 로지스틱 회귀 공식을 이해하기 위해 다음 내용들을 하나씩 알아가 보자.

 

 

이항 분포의 가능도 함수(Likelihood function)

 어떤 제품이 양품일 확률이 50%인 경우, 10개 생산하여 양품이 8개 나올 확률은 이항 분포에 따라 다음과 같이 계산된다. 이는 양품이 나올 확률을 알고 있기 때문에 도출이 가능하다.

 

$\left(\begin{array}{c}n\\ x\end{array}\right) \theta^x(1-\theta)^{n-x} = \left(\begin{array}{c}10\\ 8\end{array}\right)0.5^8(1-0.5)^{10-8} $

 

 반면, 가능도 함수는 양품일 확률을 알 수 없는 제품을 10개 생산하였을 때 그 중 양품이 8개였다는 경험을 토대로 제품의 수율(양품이 나올 확률)이 몇% 일지 추측할 때 사용된다. 가능도 함수는 다음과 같다.

 

$f(x;\theta)\propto\theta^x(1-\theta)^{n-x} = f(x;\theta)\propto\theta^8(1-\theta)^{10-8}$

 

 

최대 가능도 추정법(MLE, Maximum likelihood estimation)

 최대가능도 추정법은 가능 도함수에 대해 가능성을 가장 높게 만드는 $\theta$값을 찾는 방법이다. 시행 횟수 n이 10이고 관찰된 양품의 수 x가 각각 5, 6, 7, 8인 이항 분포에 대한 가능도 함수를 다음과 같이 그려볼 수 있다. 이를 통해 각 관찰된 x에 따라 양품이 나올 확률이 최대가 되는 $\theta$를 확인할 수 있다.

 

Maximum likelihood estimation

 

로지스틱 회귀모형 (Logistic regression model)

 로지스틱 회귀모형은 불량률(1-수율) $\theta$가 설명변수에 영향을 받는 경우를 모델링한 것이다. 예를 들어 어떤 제품의 불량률이 기온에 따라 변화하는 경우를 생각해볼 수 있다. 설명모형식을 다음과 같이 가정해볼 수 있다.

 

$ \beta_0 + \beta_1x_{i1} + \dots + \beta_px_{ip} = \eta_i $

 

 예시를 생각해보면, 기온 설명변수 인 $\beta_p$에 따라 불량률을 설명하는 모형식 $\eta_i $의 결과값이 변하게 된다. 모형식 $\eta_i $ 자체가 불량률을 바로 나타낸다면 식을 그대로 사용할 수 있겠지만, 모형식 자체의 결괏값은 무한대의 값을 가지며, 불량률은 0과 1 사이 값을 갖는다는 점에서 괴리가 있다.

 

$\theta < \theta_i < 1 \neq -\infty < \eta_i < \infty$

 

 불량률과 모형식을 부드럽게 연결하기 위해서 연결함수(link function)를 사용할 수 있다. 연결 함수 식은 다음과 같이 표현한다.

 

$ g(\theta_i)= \eta_i = \beta_0 + \beta_1x_{i1} + \dots + \beta_px_{ip} $

 

 연결함수에는 다양한 종류가 있지만 여기서는 로짓 연결 함수 (logit link function)을 사용하며, 식은 다음과 같다.

 

$ g(\theta_i)= log(\frac{\theta_i}{1-\theta_i}) $

 

위 식을 $\theta$에 대한 식으로 표현하면 다음과 같은 시그모이드(sigmoid)함수가 된다.

 

$\theta_i = \frac{e^{\eta_i}}{1+e^{\eta_i}}$

 

sigmoid function

 이제 준비는 다 되었다. 우리는 위에서 이미 불량률에 대한 추정, 가능도 함수를 살펴보았다. 이를 계산이 편하도록 log를 씌워주면 다음과 같은 식을 도출 할 수 있다. 마지막으로 $\theta_i$로 표현한 sigmoid 식을 대입해주면 설명변수 $\beta$들로부터 불량률을 추정할 수 있게 된다.

 

$l(\beta_0, \beta_1, \dots, \beta_p) = \sum_{i=1}^n {y_ilog(\theta_i)+(1-y_i)log(1-\theta_i)}$

 

 

선형 회귀모형과 로지스틱 회귀모형 비교

 1986년 Challenger 우주선이 폭파한 사건이 있는데, 우주선의 구성품 중 하나인 O-ring이 기온이 낮을수록 불량이 발생할 확률이 높은 것이 확인되었다. 당시 O-ring의 불량률과 기온에 대한 자료를 활용하여 회귀모델을 만들고자 한다.

 선형 회귀모델을 사용하여 적합할 수도 있지만, 50도(화씨) 부근에서 급격이 높은 불량률을 보이는 자료를 설명하는 데에는 부족함이 있다.

 이에 로지스틱 회귀모형을 사용하면 선형 회귀모형보다 더 적합한 결과임을 눈으로도 확인할 수 있다.

 

Linear Regression and Logistic Regression