실습 · 연습문제 2개
손실함수를 우도에서 유도하기 loss-from-likelihood
자주 쓰는 손실함수는 대부분 어떤 확률모형의 평균 음의 로그우도(NLL)다. 세 함수를 완성한다. 모두 관측마다의 NLL을 평균한 값을 반환하고, 정규화 상수까지 포함한다.
gaussian_nll(y, mu, sigma):laplace_nll(y, mu, b): , 밀도bernoulli_nll(y, p): ,
mu, p는 y와 같은 shape의 배열이거나 스칼라다. sigma, b는 양의 스칼라다.
테스트는 다음을 확인한다.
- 가 고정되면 가우시안 NLL은 MSE에 양의 상수를 곱하고 상수를 더한 것이다. 그래서 둘의 최소점이 같다.
- Laplace NLL을 최소화하는 상수 는 중앙값이다(L1 손실).
- Bernoulli NLL은 binary cross-entropy와 같다.
노출 시간이 다른 계수 데이터의 최대우도 poisson-mle
검출기로 방사선 계수를 여러 번 측정했다. 번째 측정은 노출 시간 초 동안 개를 셌고, 계수율을 [1/s]라 하면
이다. 두 함수를 완성한다.
poisson_nll(lam, counts, exposure_s): 전체 데이터의 음의 로그우도 . 항까지 포함한다(math.lgamma(y + 1)).poisson_mle(counts, exposure_s): 음의 로그우도를 최소화하는 . 로그우도를 로 미분해 0으로 두면 닫힌 해가 나온다.
힌트: 각 측정의 계수율 를 단순 평균하는 것은 MLE가 아니다. 노출 시간이 긴 측정일수록 정보가 많다. 테스트가 이 차이를 확인한다.