Affine
-
오차역전파법 - 배치용 Affine 계층딥러닝 2020. 2. 1. 00:06
바로 계산 그래프 보시죠. 입력 하나짜리와 차이점은 X(N, 2) 이 부분밖에 없군요. 하지만 주의할 게 있습니다. 덧셈의 역전파는 오른쪽의 값을 왼쪽으로 그대로 전달하면 되는 것으로 배웠습니다. 여기에서 편향의 역전파는 단순히 그렇게 생각하고 값을 넘기면 안됩니다. 책에서는 이렇게 나옵니다. 순전파의 편향 덧셈은 각각의 데이터(1번째 데이터, 2번째 데이터...)에 더해집니다. ---- 1 그래서 역전파 때는 각 데이터의 역전파 값이 편향의 원소에 모여야 합니다. ---- 2 1번의 의미 입니다. 2번의 의미를 코드로 표현했습니다. import numpy as np dY = np.array([[1, 2, 3], [4, 5, 6]]) print(dY) print("------------") dB = np..
-
오차역전파법 - Affine 계층 구현하기딥러닝 2020. 1. 31. 22:01
신경망의 순전파의 과정을 봅시다. X : 입력값 W : 가중치 매개변수 B : 편향 라고 가정하면 Y = np.dot(X, W) + B .....식 1 Z = H(Y) ......식 2 여기서 Z가 은닉층 1개의 출력값이 됩니다. 식 1 부분이 Affine계층이 하는 일 입니다. 이때, X, W, B 가 각각 (2, ), (2, 3), (3, )인 다차원 배열입니다. 이때의 계산 그래프를 봅시다. 순전파는 EASY한 부분 인지지용~~? 권지지ㅣㅈ지용~~? 그럼 역전파를 볼까요 이렇게 됩니다. W,와 X 위의 T는 전치행렬이라는 뜻입니다. 이렇게 말이죠. 그런데 의문이 듭니다. 수학을 못하지만 최대한 기억을 살려 미분을 해봐도 저 전치행렬이 왜 있는지 모르겠습니다. 책에는 '행렬끼리의 곱을 하기 위해서는 ..