신경 네트워크를 작성하고 있지만 backpropagation을 사용하여 교육하는 데 어려움이 있으므로 어딘가에서 버그/수학적 실수가 의심됩니다. 내 코드에서. 우리는 역 전파의 방정식이 어떻게 보이는지에 대한 다른 문헌을 읽는 데 보냈지 만, 다른 책들이 다른 것을 말하거나 적어도 혼란스럽고 모순 된 표기법을 사용하기 때문에 다소 혼란 스럽습니다. 그래서, 어떻게 작동하는지 100 % 확실하게 알고있는 누군가가 나를 위해 그것을 지울 수 있기를 바랬습니다.표기법 (a 및 z)과 신경 네트워크에서 사용되는 백 프로 퍼 게이트 방정식 사용법에 혼란 스럽습니다.
backpropagation에는 두 가지 단계가있어서 혼란 스럽습니다. 단순함을 위해 3 레이어 피드 포워드 네트 만 가지고 있다고 가정 해 봅시다. 따라서 입력 숨김 출력과 숨겨진 출력을 연결합니다. I는 노드 Z과 동일한 값에 도달하는 가중치 합을 호출하지만 노드 의 활성화 기능을 통과 한 후.
은 분명히 내 질문의 우려 그래서 이런 식으로 연결해야합니다 방정식과 이미지를 포함 할 수 없습니다 해요 : https://i.stack.imgur.com/CvyyK.gif
을 지금. 역 전파 (backpropagation) 동안, 출력 계층의 노드에서 오류를 계산할 때 다음과 같습니다.
[ 1] Delta_output = (출력 대상) * 활성화 함수
의 유도체 a_output 통해 또는 그것을
[식이다. 2 Delta_output = (출력 대상) * 활성화 함수
의 유도체 통해 은닉층, 똑같은의 노드의 오차를 계산하는 동안 z_output 그것은이다
[식. 3] = Delta_hidden a_h 활성화 함수 * 합계의 유도체 (* w_h Delta_output)
또는 그것을
[식이다 내지. 4] Delta_hidden = z_h 활성화 함수의 미분을 통해 * sum (w_h * Delta_output)
그래서 기본적으로 질문입니다; 역 전파 동안 활성화 함수의 도함수 버전을 통해 노드의 값을 실행하는 경우는 활성화 함수 (Z는 또는 )를 통과하기 전 또는 후에이되면서 값으로 표현되어야 하는가?
이미지의 첫 번째 또는 두 번째 수식이 정확하고 이미지의 세 번째 또는 네 번째 수식이 똑같습니까?
감사합니다.
back-prop를 구현 한 기존의 작업 라이브러리의 소스 코드를보고 어떻게 사용했는지 살펴 보셨습니까? – Justas