Negative Log Likelihood (NLL)
Likelihood (가능도)
log likelihood
negative log likelihood
교차 엔트로피 (Cross Entropy)
Cross Entropy의 정의는 아래와 같다.
아래의 Negative Log Likelihood와 동일한 형태인 것을 볼 수 있다.
또한 아래의 Entropy와도 매우 유사한 형태의 수식이다.
Entropy와 차이가 있다면,
Cross Entropy는 두 개의 분포(distribution) p와 q를 인자로 받는 점이다.
동일한 데이터셋에 대해,
두 분포 p와 q를 바꿔가면서 cross entropy 값의 변화를 확인할 수 있다.
다중 분류문제에서, 손실함수(Loss Function)는 보통 위와 같이 정의된다.
각 데이터(data point)에서의 Cross Entropy 값을 구하고,
그것을 모두 더한 다음, 데이터의 개수 N으로 나눠준다. (N : batch-size)
다중 분류 모형의 신경망(Neural Network)에서 Cross Entropy (CE) 는,
위의 CE의 정의에서 p → y로, q → y_hat 으로 바뀌어서
아래와 같이 정의된다.
여기서 y와 y_hat은, 각각 분류 클래스의 개수인 K 차원의 벡터(vector)이다.
위의 CE 수식을 softmax의 입력값인 t_i로 미분하면,
아래와 같이 (y_hat - y) = (predicted - observed) = (-residual) 이라는 결과가 나타난다.
Neural Network는 Loss Fucntion을 최소화(minimize)시키는 방향으로 학습한다.
그렇다면 Cross Entropy에서 그것은 어떤 의미일까?
CE 식에서 마이너스(-)를 제거하면 아래와 같다.
CE를 minimize한다는 것은, 위 식을 maximize 하는 것과 같다. (Maximum Likelihood Estimation)
위 식을 최대화하려면
y_i가 1일 때는 y_hat_i도 1에 가깝게,
y_i가 0일 때는 y_hat_i도 0에 가깝게 학습되어야 한다.
즉, CE를 최소화한다는 것은
y 분포와 y_hat 분포를 최대한 비슷하게 만드는 과정이다.
◎ References
< 데이터 사이언스 스쿨, 10.3 교차엔트로피와 쿨백-라이블러 발산 >
< 순록킴의 블로그, 초보를 위한 정보이론 안내서 - Cross Entropy 파헤쳐보기 >
'Data Science' 카테고리의 다른 글
Mutual Information (0) | 2023.06.13 |
---|---|
Kullback-Leibler Divergence (0) | 2023.06.10 |
Softmax (0) | 2023.06.04 |
Permutation Importance (0) | 2023.06.03 |
Logistic Regression (0) | 2023.05.31 |