Logistic Regression(로지스틱 회귀)와 Cost function
로지스틱 회귀 (Logistic Regression)
로지스틱 회귀는 이진 분류 문제를 해결하는 데 주로 사용되는 통계 모델이다. 이 글에서는 로지스틱 회귀의 개념, 수학적 유도, 비용 함수 등을 다룬다.
용어정리
- 로지스틱 함수 (Logistic function): 시그모이드 함수로, 입력 값을 0과 1 사이의 확률로 변환한다.
- 로짓 함수 (Logit function): 로지스틱 함수의 역함수로, 확률 값을 로그 오즈로 변환한다.
- 로지스틱 회귀 (Logistic Regression): 선형 결합된 입력 값을 로지스틱 함수에 적용하여 클래스에 속할 확률을 예측하는 이진 분류 모델이다.
- Logistic cost function: 이진 크로스 엔트로피 함수 (binary cross entropy function)이다.
- 엔트로피 (Entropy): 정보 이론에서 불확실성의 척도이다.
- 크로스 엔트로피 함수 (Cross Entropy function): 두 확률 분포 간의 차이를 측정하는 함수이다.
유도
로지스틱 회귀 모델을 수학적으로 유도하는 과정은 다음과 같다.
1. 이진 데이터와 확률00
데이터가 이진 데이터라면 종속변수 ( y )는 0과 1의 값만 가질 수 있다. 이를 선형 함수로 추정할 때 종속변수의 범위는 $$0 \quad OR \quad1$$이며,
독립변수의 범위는 $$(-\infty, \infty)$$이다. 따라서 두 변수 간의 범위를 맞추기 위해 확률을 도입한다.
$$
0 \le P(Y) \le 1
$$
2. 오즈 (Odds)와 로그 오즈 (Log Odds)
확률 ( P(Y) )의 범위는 여전히 ([0, 1])이므로, 새로운 개념인 오즈 (Odds)를 도입한다.
$$
\text{odds} = \frac{P(Y)}{1 - P(Y)}
$$
오즈의 범위는 ((0, \infty))이다. 이를 로그 변환하여 로그 오즈 (Log Odds)를 구하면, 범위가 ((- \infty, \infty))가 된다.
$$
\log(\text{odds}) = \log \left( \frac{P(Y)}{1 - P(Y)} \right)
$$
3. 로짓 함수 (Logit function)
로그 오즈를 선형 함수로 표현하면 다음과 같다.
$$
\log \left( \frac{P(Y)}{1 - P(Y)} \right) = W^T X + b
$$
이를 다시 ( P(Y) )에 관해서 정리하면 다음과 같은 로지스틱 함수가 된다.
$$
P(Y) = \frac{1}{1 + e^{-W^T X + b}}
$$
따라서,
$$
H(x) = \frac{1}{1 + e^{-W^T X}}
$$
로지스틱 회귀 비용 함수 (Logistic Regression Cost Function)
로지스틱 함수의 경우 MSE(Maximum Square Error) 방법으로 오차를 평가하기에 적절하지 않다. (왜냐하면 연속형 데이터가 아니기 때문이다.) 따라서 크로스 엔트로피를 이용하여 비용 함수를 표현한다.
크로스 엔트로피 손실 함수 (Cross Entropy Loss Function)
크로스 엔트로피 손실 함수는 다음과 같이 정의된다.
$$
C(H(x), y) =
\begin{cases}
-\log H(x) & \text{if } y = 1 \\
-\log (1 - H(x)) & \text{if } y = 0
\end{cases}
$$
이를 하나의 식으로 나타내면 다음과 같다.
$$
\text{Cost}(H(x), y) = - [y \log(H(x)) + (1 - y) \log(1 - H(x))]
$$
이 식은 정보 엔트로피 개념과 관련이 있다.
정보 엔트로피와 크로스 엔트로피
- 정보 엔트로피:
$$
\sum P(Y_i) \times \frac{1}{P(Y_i)}
$$
여기서 ( \log \frac{1}{P(Y)} )는 정보량을 의미하며, ( P(Y) )는 사건이 일어날 확률이다. - 크로스 엔트로피:
$$
\sum P(Y_i) \log \frac{1}{P(x_i)}
$$
이는 예상 정보량과 실제 확률의 곱으로 두 분포 간의 차이를 나타낸다.
손실 함수 해석
$$
\text{Cost}(H(x), y) = - [y \log(H(x)) + (1 - y) \log(1 - H(x))]
$$
이는 두 가지 사건만이 존재하는 크로스 엔트로피임을 알 수 있다.
- y = 1일 때:
- 손실 함수는 ( $-\log H(x)$ )가 된다.
- 예측 확률 ( H(x) )가 1에 가까울수록 손실이 작아진다.
- y = 0일 때:
- 손실 함수는 $(-\log(1 - H(x)))$ 가 된다.
- 예측 확률 ( H(x) )가 0에 가까울수록 손실이 작아진다.
이를 통해 모델이 참과 거짓을 잘 예측할수록 손실이 작아진다는 것을 알 수 있다.