본문 바로가기

AI Tech

로지스틱 회귀(Logistic Regression)에서 BCE를 사용하는 이유

로지스틱 회귀에서는 손실함수를 선형회귀에서 사용하던 MSE대신 BCE를 사용하는 이유가 무엇일까?

 

Binary Cross-Entropy (BCE)

 

 

목적: 이진 분류 문제에서 확률을 예측하는 모델의 성능을 평가하는 데 사용된다.

출력 값: 0과 1 사이의 확률 값 (시그모이드 함수의 출력).

● 손실 함수: BCE는 실제 레이블(0 또는 1)과 예측 확률 간의 불일치를 측정한다. 확률 예측이 정확할수록 손실이 낮아진다.

 

Mean Square Error (MSE)

 

 목적: 회귀 문제에서 연속적인 값의 예측 정확도를 평가하는 데 사용된다.

출력 값: 연속적인 값 (예측값이 실제값과 얼마나 가까운지 측정). 

손실 함수: MSE는 예측값과 실제값 간의 차이 제곱의 평균을 측정한다. 회귀 문제에서 잘 작동하지만, 이진 분류 문제에서는 적절하지 않을 수 있다.

 

 

 

BCE가 MSE보다 이진 분류에 적합한 이유

 

손실 함수의 기울기:

 

  • BCE는 예측 확률이 실제 레이블에 가까워지도록 모델의 가중치를 조정한다. 이 손실 함수는 시그모이드 출력에 대해 적절한 기울기를 제공한다.
  • MSE는 시그모이드 함수의 출력이 0 또는 1에 가까운 경우 기울기가 매우 작아져 학습이 느려질 수 있다.

 

경계 효과:

  • BCE는 예측 확률이 극단적인 값(0 또는 1)에 가까울 때 손실이 급격히 증가한다. 이는 모델이 확률적으로 올바른 예측을 할 수 있도록 유도한다.
  • MSE는 예측값이 0 또는 1에 가까운 경우에도 기울기가 줄어들어, 모델이 극단적인 확률값을 예측하도록 유도하는 데 한계가 있다.

 

BCE는 이진 분류 문제에서 모델의 학습을 더 빠르고 효과적으로 수행할 수 있도록 도와준다. MSE는 이진 분류 문제에서 학습이 느려질 수 있으며, 안정적인 학습을 보장하지 않을 수 있다.

 

Binary Cross-Entropy의 이해

간단한 예시로 이해해보자

1. y = 1인 경우 

 

이때 우리는 p가 1에 근접하길 원한다. p의 값이 1에 근접할 수록 Loss가 낮아진다.

 

모델이 p=0.9일 때: 손실 함수 값이 작다.

  • 예측 확률 가 0.9로 높기 때문에, 모델이 샘플이 긍정적인 클래스로 분류할 확률이 높다.
  • 손실 함수 값은: −log⁡(0.9) ≈ 0.105

모델이 p=0.1일 때: 손실 함수 값이 크다.

  • 예측 확률 가 0.1로 낮기 때문에, 모델이 샘플이 긍정적인 클래스로 분류할 확률이 낮다.
  • 손실 함수 값은: −log⁡(0.1) ≈ 2.302

미분값 또한 0에 근접할수록 급격히 커지고, 1에 근접할수록 작아진다.

1/p 그래프


2. y = 0인 경우 

이때 우리는 반대로 p가 0에 근접하길 원한다. p의 값이 0에 근접할 수록 Loss가 낮아진다.

 

모델이 p=0.9일 때: 손실 함수 값이 크다.

  • 예측 확률 가 0.9로 높기 때문에, 모델이 샘플이 긍정적인 클래스로 분류할 확률이 낮다.
  • 손실 함수 값은: −log⁡(0.1)≈2.302

모델이 p=0.1일 때: 손실 함수 값이 크다.

  • 예측 확률 가 0.1로 낮기 때문에, 모델이 샘플이 긍정적인 클래스로 분류할 확률이 높다.
  • 손실 함수 값은: −log⁡(0.9) ≈ 0.105 

미분값은 0에 근접할수록 작아지고, 1에 근접할수록 급격하게 진다.

1/1-p 그래프

'AI Tech' 카테고리의 다른 글

분류기 (Classifier)  (0) 2024.08.12
머신러닝 학습의 종류  (0) 2024.08.12
Binary Classification with Pytorch  (0) 2024.08.08
Linear Regression with Pytorch  (0) 2024.08.07
What is Pytorch(행렬곱)?  (0) 2024.08.07