로지스틱 회귀는 알고리즘 이름은 회귀이지만 실제로는 분류(Classification) 작업에서도 활용 가능하다.
이진분류(Binary Classification)
선형 회귀에서는 \(x\)와 \(y\)의 관계를 직선인 \(Wx + b\)로 표현하였다. 하지만 이진 분류에서는 0과 1로 결과를 나누기 때문에, 어떤 특정 함수를 추가적으로 사용하여 가설을 사용할 것이다. 이때 어떤 함수는 시그모이드 함수로 가장 널리 쓰이는 함수이다.
시그모이드 함수(Sigmoid Function)
시그모이드 함수는 입력값이 무한대로 커지면 1에 수렴하고 입력값이 계속 작아지면 0에 수렴한다. 임계값을 기준으로 0과 1로 판단하기 때문에 시그모이드의 출력 값은 0과 1로 결정된다.
시그모이드 함수에 대해서는 나중에 하나의 글로 공부할 예정이다.
비용함수
선형 회귀에서는 MSE를 활용하였다. 하지만 이를 로지스틱 회귀에 사용하면, 선형 회귀 때와 달리 아래와 같은 심한 비볼록(non-convex)형태의 그래프가 나온다.
그렇기 때문에 경사하강법을 사용했을 때 오차가 최솟값이 되는 구간이 아닌 로컬 미니멈 구간에 정지해버리는 문제가 발생할 수 있다.
시그모이드 함수의 특징은 함수의 추력 값이 0과 1 사이라는 점이다. 즉, 실제값이 1일 때 예측값이 0에 가까워지면 오차가 커지고, 실제값이 0일 때 예측값이 1에 가까워지면 오차가 커져야 한다. 이를 충족하는 함수가 아래와 같은 로그 함수이다.
- 실제값이 1일 때가 주황색
- 실제값이 0일 때가 초록색
식으로 표현하면 아래와 같이 표현할 수 있다. 실제 값이 1일 때는 \(-logH(x)\) 그래프를 사용하고, 실제값이 0일 때는 \(-log(1-H(X))\)그래프를 사용한다.
위 식을 하나로 통합하면 아래와 같이 된다. 실제 값이 1인 경우는 \(y\)가 1 임으로 우측항이 사라지고, 실제값이 0인 경우는 \(y\)가 0 임으로 좌측항이 사라진다.
이를 이용해 선형회귀처럼 모든 오차의 평균을 구하면 아래와 같은 결과가 나온다.
위 비용 함수는 실제값 \(y\)와 예측값 \(H(x)\)의 차이가 커지면 cost가 커지고, 차이가 작아지면 cost가 작아진다. 이를 경사하강법을 통해 최적 가중치 \(W\)를 찾아갈 수 있다.
시그모이드 미분
'DL Study' 카테고리의 다른 글
Backpropagation(역전파) (0) | 2022.09.02 |
---|---|
다층 퍼셉트론(MultiLayer Perceptron, MLP) (0) | 2022.09.01 |
Perceptron(퍼셉트론) (0) | 2022.08.31 |
Softmax Regression(Multinomial Logistic Regression) (0) | 2022.08.30 |
Linear Regression(선형회귀) (0) | 2022.08.25 |