로지스틱 회귀: 손실 및 정규화

로지스틱 회귀 모델은 선형 회귀 모델과 동일한 프로세스를 사용하여 학습되지만, 두 가지 주요 차이점이 있습니다.

다음 섹션에서는 이러한 두 가지 고려사항을 자세히 설명합니다.

로그 손실

선형 회귀 모듈에서는 제곱 손실(L2 손실이라고도 함)을 손실 함수로 사용했습니다. 제곱 손실은 출력값의 변화율이 일정한 선형 모델에 효과적입니다. 예를 들어 선형 모델 $y' = b + 3x_1$의 경우 $x_1$ 입력값이 1씩 증가할 때마다 $y'$ 출력값이 3씩 증가합니다.

하지만 로지스틱 회귀 모델의 변화율은 일정하지 않습니다. 확률 계산에서 확인했듯이 시그모이드 곡선은 선형이 아닌 s자 모양입니다. 로그 오즈($z$) 값이 0에 가까워질 때 $z$가 약간 증가하면 $y$가 큰 양수 또는 음수일 때보다 $y$ 변화가 훨씬 커집니다. 다음 표는 5~10 입력값에 대한 시그모이드 함수의 출력과 더불어 결과의 차이를 포착하는 데 필요한 해당 정밀도를 보여줍니다.

입력 로지스틱 출력 필요한 정밀도 자릿수
5 0.993 3
6 0.997 3
7 0.999 3
8 0.9997 4
9 0.9999 4
10 0.99998 5

제곱 손실을 사용하여 시그모이드 함수의 오차를 계산했다면, 출력이 01에 가까워질수록 이러한 값을 추적하는 데 필요한 정밀도를 유지하기 위해 더 많은 메모리가 필요합니다.

대신 로지스틱 회귀의 손실 함수는 로그 손실입니다. 로그 손실 방정식은 데이터와 예측치의 차이만이 아닌 변화 규모의 대수를 반환합니다. 로그 손실은 다음과 같이 계산됩니다.

\(\text{Log Loss} = \sum_{(x,y)\in D} -y\log(y') - (1 - y)\log(1 - y')\)

각 항목의 의미는 다음과 같습니다.

  • \((x,y)\in D\) : \((x,y)\) 쌍인 라벨이 있는 예가 많이 포함된 데이터 세트입니다.
  • \(y\) : 라벨이 있는 예의 라벨입니다. 이는 로지스틱 회귀이므로 \(y\) 의 모든 값은 0이나 1이어야 합니다.
  • \(y'\) : \(x\)의 특성 집합을 고려할 때 모델의 예측(0과 1 사이)입니다.

로지스틱 회귀의 정규화

정규화는 학습 중에 모델 복잡성에 페널티를 적용하는 메커니즘으로, 로지스틱 회귀 모델링에 매우 중요합니다. 정규화가 없으면 로지스틱 회귀의 점근적 특성으로 인해 모델에 많은 수의 특성이 있는 경우 손실이 0으로 계속 이동하게 됩니다. 따라서 대부분의 로지스틱 회귀 모델은 다음 두 가지 전략 중 하나를 사용하여 모델 복잡성을 줄입니다.

  • L2 정규화
  • 조기 중단: 학습 단계 수를 제한하여 손실이 여전히 감소하는 동안 학습을 중단합니다.