본문 바로가기
AI/머신러닝

로지스틱 회귀 (Logistic Regression)

by 남오공 2022. 2. 25.
728x90

로지스틱 회귀 (Logistic Regression)

회귀를 사용하여 데이터가 어떤 범주에 속할 확률을 0에서 1 사이의 값으로 예측하고
그 확률에 따라 가능성이 더 높은 범주에 속하는 것으로 분류(Classification)해주는 지도 학습 알고리즘이다
 

 

선형함수 그래프와 로지스틱함수 그래프

간단하게 왼쪽의 선형모델은 아래 위로 쭉 뻗어나가지만 오른쪽의 로지스틱 모델은 0과 1사이 값에서 그려진다.

선형 모델의 예시로는 운동을 하면 체중이 감소한다라는 예시를 들 수가 있으며,

로지스틱 모델의 경우 시험의 합격의 예시가 있다.


만약 공부한 시간이 적으면 시험에 통과 못하고, 
공부한 시간이 많으면 시험에 통과한다고 가정하자.

이 경우에 선형모델을 적용해 본다면 통과 확률이 음과 양의 방향으로 뻗어 나간다.  

말 그대로 ‘선’이라 나오는 상황인데 공부를 안했다고 시험을 통과 못할 확률이 없다는 것은 말이 안된다.

운이 좋게 찍기라던가 알고 있는 상식들로 시험에 통과할수도 있기 때문이다.

이러한 경우에 0과 1사이의 값의 확률이 있는 로지스틱 회귀를 사용하기가 적합한 예시라고 볼 수 있다.

 

그렇다면 로지스틱 모델은 어떻게 확률을 예측 할 수 있는것일까?

데이터가 특정 범주에 속할 확률을 예측하기 위해 아래와 같은 단계를 거친다.

  1. 모든 속성(feature)들의 계수(coefficient)와 절편(intercept)을 0으로 초기화한다.
  2. 각 속성들의 값(value)에 계수(coefficient)를 곱해서 log-odds를 구한다.
  3. log-odds sigmoid 함수(이것이 곡선의 형태를 만들도록 도와주는 역할)에 넣어서 [0,1] 범위의 확률을 구한다.

로짓 변환(Logit transformation)

선형 회귀에서는 각 속성의 값에다가 계수(coefficient)에 각 곱하고 절편(intercept)을 더해서 예측 값을 구한다. 

로지스틱 회귀의 계수는 비선형 함수 내에 있어서 직관적으로 해석하기가 어려운데 오즈(Odds) 를 사용하면 선형결합 형태로 변환 가능해 보다 쉽게 해석이 가능하다.  오즈는 실패확률에 대한 성공확률의 비 인데 예를들어 odds = 2이면 성공확률이 실패확률의 2배라는 뜻이다.  

오즈를 구하는 식

이러한 오즈에 로그를 취해 변한하는것이 로짓 변한이라고 한다.

로짓변환을 통해 비선현형태인 로지스틱함수 형태를 선형형태로 만들어 회귀계수의 의미를 해석하기 쉽게 하귀 위함이다.

 

분류에서는 회귀와 다른 평가지표(evaulation metrics)를 사용한다.

 

 

 

https://hleecaster.com/ml-logistic-regression-concept/

 

댓글