야나두 딥러닝 강의 할때 순간 당황해서 실수한 것이다. 로지스틱 손실 함수 L과 a 미분하기 공식은 수학 적으로는 꽤 복잡해 보인다. 한번 당황하다 보니, 계속 당황 해서 점심시간 까지 당항 스러움이 있었다. 지금은 어느 정도 정리되었다.
그럼 당황했던 내용으로 들어가 보자.
로지스틱 손실 함수 미분하기 |
https://mathsolver.microsoft.com/ko 수학이 헤깔리면 옆에 있는 사이트에 가서 확인 하면 어려움 없이 증명 할 수 있다.
다항함수 미분
분수는 - 1 승이 되므로, 아래와 같이 식을 정리 한다.
$${ \partial L \over \partial Z } = { \partial \over \partial Z} ({ 1 \over 1+e^z }) = { \partial \over \partial Z} ( 1+ e^2)^{-1} $$
미분할때는 다항함수 미분이므로 겉미분 하고 속미분을 해주어야 한다.
1. 겉미분 -1이 앞으로 가고 -1승이 더해지면 아래 식과 같다.
$$ -(1+e^{-z})^{-2} $$
2. 속미분 편미분이기 때문에 z 에 대해서 $ e^{-z} $ 값 만 미분하면 된다.
$$ (-e^{-z}) $$
3. 이 둘을 곱하면 아래와 같이 된다.
$$ -(1+e^{-z})^{-2} (-e^{-z}) $$
방정식 정리
위의 식 3을 분수로 정리하면 음수 값이 양수가 되어 분모가 된다.
$$ { (-e^{-z}) \over (1+e^{-z})^{-2} } $$
이 수식을 풀면 아래와 같이 되는데 여기에서 많이 헤깔렸다. https://mathsolver.microsoft.com/ko 홈페이지에서 검증 하면된다.
분수 방정식 계산 |
위 그림을 응용을 하게 되면 아래의 식이 나온다. $1+e^{-z}$ 는 둘로 나누어지고, $ e^{-z}$는 남게 된다.
$$ { 1 \over 1+e^{-z} } { e^{-z} \over 1+e^{-z} } $$
맨 마지막에서 버벅 되었는데 생각 해보면 어렵지 않다.
$$ { e^{-z} \over 1+e^{-z} } = {1+e^{-z} \over 1+e^{-z}} - { 1 \over 1 +e^{-z} } $$
이걸을 풀면 $1 - { 1 \over 1 +e^{-z} }$ 이 된다.
마지막으로 정리 하면 로지스틱 함수는 a = $ { 1 \over 1 +e^{-z} }$ 이므로 마지막으로 유도 된 식에서 a를 치환하면 아래와 같은 간단한 공식이 된다.
$$ { 1 \over 1 +e^{-z} } (1- { 1 \over 1 +e^{-z} }) = a(1-a) $$
사실 로지스틱 손실 함수는 이 부분이 가장 복잡해 보이는 계산 식인데, 차근히 보면 어렵지 않다.
참고서적 : Do It! 정직하게 코딩하며 배우는 딥러닝 입문
.
댓글 없음:
댓글 쓰기