MSE vs log-likelihood

정원석·2024년 7월 25일

Classification 에서 Loss function 비교

일반적으로 회귀(Regression) 문제에서는 Mean Squared Error(MSE)를 많이 사용하지만, 분류(Classification) 문제에서는 Log-Likelihood(특히, 교차엔트로피 손실함수, Cross-Entropy Loss)를 더 많이 사용합니다.

Mean Squared Error(MSE)

MSE는 예측값과 실제값 사이의 차이의 제곱을 평균낸 값으로 정의됩니다. 회귀 문제에서는 MSE가 자주 사용되는데, 이는 예측값이 연속적인 실수 범위에 있을 때 효과적입니다.

강아지 사진이 주어졌을 때, 모델의 예측 결과를 qq라고 하고 실제 값이 1이라면, MSE는 다음과 같이 계산됩니다.

(q1)2(q-1)^2

Log-Likelihood (Cross-Entropy Loss)

분류 문제에서는 Log-Likelihood를 사용합니다.
이는 모델이 예측한 확률 분포와 실제 분포 사이의 차이를 측정합니다.
예를 들어, 실제 값이 1 일때 모델의 예측값 qq에 대한 Cross-Entropy Loss는 다음과 같이 계산됩니다.

log(q)-log(q)

Log-Likelihood와 교차 엔트로피 손실 함수
Log-Likelihood는 모델이 예측한 확률과 실제 관찰된 데이터 사이의 차이를 측정하는데 사용됩니다. 이를 통해 모델이 예측한 확률 분포와 실제 데이터 분포가 얼마나 일치하는지 평가합니다.

교차 엔트로피 손실 함수는 Log-Likelihood의 특별한 형태로, 분류 문제에서 많이 사용됩니다. 특히 이진 분류와 다중 클래스 분류에서 각각 Binary Cross-Entropy Loss와 Categorical Cross-Entropy Loss라는 이름으로 불립니다.

이진 교차 엔트로피 손실 함수 (Binary Cross-Entropy Loss)
이진 분류 문제에서, 교차 엔트로피 손실 함수는 다음과 같이 정의됩니다:

Loss=(ylog(p)+(1y)log(1p))Loss=−(ylog(p)+(1−y)log(1−p))

여기서
yy 는 실제 클래스(0 또는 1),
pp 는 예측된 확률입니다.

범주형 교차 엔트로피 손실 함수 (Categorical Cross-Entropy Loss)
다중 클래스 분류 문제에서는 다음과 같이 정의됩니다:

Loss=i=1Cyilog(pi)Loss = -\sum_{i=1}^{C} y_i log(p_i)

CC는 클래스의 수, yiy_i는 실제 클래스(one-hot 인코딩된 벡터), pip_i는 각 클래스에 대한 예측 확률.

요약
Log-Likelihood는 모델이 예측한 확률 분포와 실제 데이터 분포 사이의 차이를 측정하는 방법입니다.
교차 엔트로피 손실 함수는 Log-Likelihood를 기반으로 한 손실 함수로, 이진 분류와 다중 클래스 분류에서 각각 Binary Cross-Entropy Loss와 Categorical Cross-Entropy Loss로 사용됩니다.
교차 엔트로피 손실 함수는 Log-Likelihood의 구체적인 구현으로, 분류 문제에서 모델이 예측한 확률 분포가 실제 분포와 얼마나 일치하는지를 평가하는 데 사용됩니다.

MSE와 Log-Likelihood 비교

1이 나와야 하는데 0이 나왔다면 MSE와 Log-Likelihood는 어떻게 다를까요?

  • MSE의 경우:

    (01)1=1(0-1)^1 = 1

    MSE는 1이라는 값을 가지며 이는 에러가 크지만 제한적입니다.

  • Log-Likelihood의 경우

    log(0)=-log(0) = \infty

    Log-Likelihood는 무한대의 값을 가지며 이는 에러에 매우 민감하다는 것을 의미합니다.

즉, Log-Likelihood는 MSE보다 예측이 실제 값과 크게 다를 때 훨씬 더 큰 패널티를 부과합니다.

Loss function의 형태와 학습

마지막 Sigmoid함수 통과 직전의 weight에 대해 Loss function의 개형을 살펴보면 다음과 같은 차이가 있습니다.

  • MSE: 비선형적이며 여러 개의 지역 최소값(Local minima)을 가질 수 있습니다. 이는 학습과정에서 최적화가 어렵다는 의미입니다.
    MSE

  • Log-Likelihood(Cross-Entropy Loss): Convex 형태를 가지며 단일 글로벌 최소값(global minimum)을 가지기 때문에 최적화가 비교적 쉽습니다.
    CE

결론

분류 문제에서 Log-Likelihood를 사용하는 이유는 다음과 같습니다.
1. 더 큰 에러 민감도: 잘못된 예측에 대해 더 큰 패널티를 부과하여 모델이 보다 정확한 예측을 하도록 유도합니다.
2. 최적화의 용이성: Convex 형태의 손실 함수로 인해 학습이 더 안정적이고 효율적입니다.

이런 이유로, 인공신경망을 포함한 대부분의 분류문제에서는 MSE보다 Log-Likelihood를 손실 함수로 사용하는 것이 더 효과적입니다.

profile
이기적이타주의자

0개의 댓글