크로스엔트로피 손실 함수
딥러닝을 위한 신경망 기초
손실 함수는 신경망 학습의 목적입니다.
실제로 다른 분야에서는 목적 함수라고 불리웁니다.
Cross-entropy는 Squared loss와 더블어 양대 손실 함수라고 할 수 있습니다.
Cross-Entropy는 신경망 출력을 확률로 간주할 수 있는 경우에 사용되는 매우 중요한 손실 함수입니다.
Cost/Loss Function
≡ 1
2
−
∈
Squared Loss
≡ 1 2
1
−
∈
Mean
Squared Loss
학습집합 크기
퍼셉트론 및 선형회귀분석에서 사용한 사용한 손실함수
3
다음 용어를 알아야 한다.
Information (정보량)
Entropy (엔트로피)
Cross-Entropy
Information
= 앞면 =
앞면 = 앞면어떤 사건을 수치로 나타낸 것이다.
확률을 이용한다.
= =
=
다 같은 표현
확률변수; random variable; 사건을 수치로 맵핑
확률사건; event
5
1
1
1
×
지금부터 사건을 수치화 해 보자. 사건이 드물게 발생할 수록 정보가 커야 한다.
두 사건에 대한 정보는 ?
1
1
1
×
지금부터 사건을 수치화 해 보자. 사건이 드물게 발생할 수록 정보가 커야 한다.
두 사건에 대한 정보는 곱해야 하나 더해야 하나?
7
1
1
1
×
지금부터 사건을 수치화 해 보자. 사건이 드물게 발생할 수록 정보가 커야 한다.
정보로 생각하면 더하는 것이 직관적이다.
두 사건에 대한 정보는 곱해야 하나 더해야 하나?
두 사건에 대한 수치를 더할 수 있도록 다시 생각해 보자.
1
1
1
×
1
1
+
지금부터 사건을 수치화 해 보자. 사건이 드물게 발생할 수록 정보가 커야 한다.
정보로 생각하면 더하는 것이 직관적이다.
두 사건에 대한 정보는 곱해야 하나 더해야 하나?
로그는 고맙게도 곱셈을 덧셈으로 변경해 준다.
9
1
1
1
×
1
1
+
지금부터 사건을 수치화 해 보자. 사건이 드물게 발생할 수록 정보가 커야 한다.
정보로 생각하면 더하는 것이 직관적이다.
두 사건에 대한 정보는 곱해야 하나 더해야 하나?
information ≡
-
최종 정보량의 정의
= = ()
Entropy
정보량의 기댓값
확률변수 X의 기댓값 계산 공식
확률변수 X의 분포함수
확률질량함수(probability mass function) 확률밀도함수(probability density function)
11
= = ()
Entropy
정보량의 기댓값
확률변수 X의 기댓값 계산 공식
+ = ( + )()
이 식의 기댓값은?
= = ()
Entropy
정보량의 기댓값
확률변수 X의 기댓값 계산 공식
+ = ( + )()
확률변수 X의 분포함수가 중요
13
= = ()
Entropy
정보량의 기댓값
확률변수 X의 기댓값 계산 공식
+ = ( + )()
= ()
= ()
Entropy
정보량의 기댓값
− = − ()
15
−( = 0) = 0 − ( = 1) = 1
Cross-Entropy
다른 사건의 확률을 곱해서 Entropy를 계산한 것
예들 들어 0 또는 1만 가지는 확률변수 X가 있을 때,
※ 참고로 0, 1만 가지는 특별한 확률변수는 이름이 있다. 베르누이; Bernoulli
entropy=
−( = 1) = 0 − ( = 0) = 1
cross-entropy=
교차; cross
−(1) 0 − (0) 1
신경망의 손실함수로 활용
≡ 1 2
1
−
∈
≡ 1
−
− 1 −
1 −
∈
Cross-Entropy Loss
베르누이 확률변수를 n회 시행해서 얻은 샘플로 부터,
베르누이 확률변수의 평균과 분산을 추정하는 어떤 방법으로부터 유도할 수 있음.
17
−(0) 1 − (1) 0
Cross-Entropy 그래프
Cross-Entropy 특징
아래로 볼록
최소값을 구할 수 있다.
최댓값
성공(1) 또는 실패(0)만 나온 경우
부호를 바꾸면,
최댓값을 구할 수 있다.
+ + 1 − 1 −
이렇게 나오게 되는 확률이 가장 크게 되는
X의 값을 얼마로 추정할까?
19
성공과 실패가 반반 나온 경우
= 1 = 0.5
0.5
그래프를 보니 최댓값은 X가 0.5일 때이다.
성공 70%과 실패 30%나온 경우
= 1 = 0.7
21
결론
≡ 1
−
− 1 −
1 −
∈
Cross-Entropy Loss
신경망의 출력이 0~1 사이로 나오는 경우
Loss 함수로 사용할 수 있다.
Ronald Aylmer Fisher (1890~1962)
cross-entropy = negative maximum log likelihood estimation [참고]
통계학의 아버지
어릴 때 병약하여 침대에 누워
들려주는 얘기만 듣고 머리 속으로만 공부한 천재
“이렇게 자명한 것도 설명을 해야 하나, 대학교수 못해 먹겠네!”