Notice
Recent Posts
Recent Comments
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

임베디드에서 서버까지

[머신 러닝] Back Propagation 계산 과정 본문

Machine Learning

[머신 러닝] Back Propagation 계산 과정

코딩 라이언 2018. 10. 3. 19:18

forward propagation





back propagation


위의 forward propagation을 예제로 back propagation을 계산해본다.

미분의 chain rule을 이용하여 gradient가 곱셈연산으로 역방향 전파된다.


* Cost function을 사용할 경우 수식이 복잡해지는 관계로 Loss function으로 대체함.

Cost function : 전체 샘플에 대한 오차 평균

Loss function : 단일 샘플에 대한 오차


1. Cross Entropy + Sigmoid 미분 (http://smwgood.tistory.com/6)


마지막 output layer에 Loss function : cross-entropy와 activation function : Sigmoid 를 사용하면 예측값과 실제값의 차이값이 미분값인 gradient와 같아 진다.


2. dW[2],db[2] 계산




3. dZ[1],da[1] 계산 (Sigmoid 미분 참고 http://smwgood.tistory.com/4?category=751569)




4. dW[1],db[1] 계산



5. 각각의 Gradient를 구했으니 learning rate(알파값)을 곱해서 각의 Weight, bias를 업데이트한다.


여러가지 Optimize 알고리즘이 있지만, 가장 기본이 되는 Gradient Decent 알고리즘을 예를 들면 다음과 같다.

* 기본적인 원리를 이해하고 있다면 각 layer의 activation function이 ReLU, tanh 등으로 바뀌어도 바뀐 부분만 수정해 주는 것은 어렵지 않을 것이다.