더북(TheBook)

그림 3-8의 그래프는 손실 함수이기 때문에 낮은 값이 좋다는 것을 기억하세요. 이 손실 함수에서 중요한 점은 다음과 같습니다.

truthLabel이 1이면 prob 값이 1.0에 가까워야 손실 함수 값이 낮아집니다. 진짜 양성 샘플일 경우 모델이 가능한 한 1.0에 가까운 확률을 출력해야 하므로 맞습니다. 반대로 truthLabel이 0이면 확률 값이 0에 가까울 때 손실 값이 낮습니다. 이 샘플에서는 모델이 가능한 한 0에 가까운 확률을 출력해야 하므로 맞습니다.

그림 3-7에 있는 이진 임계 함수와 달리 이 곡선은 모든 점에서 0이 아닌 기울기를 가지므로 그레이디언트가 0이 아닙니다. 이것이 역전파 기반의 모델 훈련에 이 함수가 적합한 이유입니다.

회귀 모델에서 사용했던 것을 적용하지 않는 이유가 궁금할 수 있습니다. 0-1 값을 회귀 타깃이라 가정하고 손실 함수로 MSE를 사용할 수 있을까요? MSE는 미분 가능하고 진짜 레이블과 확률 사이의 MSE를 계산하는 것은 binaryCrossentropy처럼 0이 아닌 도함수를 만듭니다. 하지만 MSE는 경계 부근의 값이 작기 때문입니다. 예를 들어 표 3-5에 truthLabel이 1일 때 여러 가지 prob 값에 대한 binaryCrossentropy와 MSE 손실 값을 나열했습니다. prob이 (희망하는 값인) 1에 가까울수록 MSE는 binaryCrossentropy에 비해 점점 더 빠르게 감소합니다. 그 결과 prob이 이미 충분히 1에 가까운 경우(예를 들어 0.9), 더 높은 (1에 가까운) prob 값을 만들도록 모델을 독려하지 못합니다. 비슷하게 truthLabel이 0인 경우, 모델의 prob 출력이 더 0이 되도록 그레이디언트를 생성하는데, MSE는 binaryCrossentropy만큼 좋지 못합니다.

▼ 표 3-5 가상의 이진 분류 결과에 대한 이진 크로스 엔트로피와 MSE의 값 비교

truthLabel

prob

이진 크로스 엔트로피

MSE

1

0.1

2.302

0.81

1

0.5

0.693

0.25

1

0.9

0.100

0.01

1

0.99

0.010

0.0001

1

0.999

0.001

0.000001

1

1

0

0

이는 이진 분류 문제가 회귀 문제와 다른 점을 보여 줍니다. 이진 분류 문제에서는 손실(binary Crossentropy)과 지표(정확도, 정밀도 등)가 다릅니다. 반면 회귀 문제에서는 손실과 지표가 같습니다(예를 들어 meanSquaredError). 다음 절에서 보겠지만, 다중 분류 문제(multiclass classification)도 다른 손실 함수와 지표가 다릅니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.