AI

Affine 계층 계산 그래프에서 역전파시 전치행렬이 나오는 이유

dev_roach 2025. 1. 4. 15:00
728x90

 

Affine 계층을 보면 1번의 네모 박스에서 갑자기 전치행렬이 등장하는 것을 확인할 수 있다. 물론, 수학적으로 사고가 조금 되시는 분들은 왜 전치행렬이 등장하는지 아실수 있을거 같으나, 이전에 스칼라를 이용해 역전파를 구성했을때는 전치행렬이 아닌 그냥 W 가 곱해져야 하는게 아닌가? 라고 사고할수도 있다고 생각한다.

 

나와같이 이런 궁금중을 가진 사람이 또 존재할까봐 한번 수식으로 증명해보며 확인해보려고 한다.

탐구

이럴때는 사실 작은 예시를 하나 만드는게 가장 편하다. 아래와 같은 작은 식이 하나 있다고 해보자

 

$$Y = W*X$$

 

X, W, Y 에 관한 정의는 아래와 같다

  • X 는 (1,2) 행렬이다.
  • W 는 (2,3) 행렬이다.
  • W*X 의 곱의 결과가 Y 이므로 Y 는 (1,3) 의 행렬이 된다.

$$X = \begin{bmatrix} x_{11} & x_{12} \end{bmatrix}$$

$$W = \begin{bmatrix} w_{11} & w_{12} & w_{13} \\ w_{21} & w_{22} & w_{23} \end{bmatrix}$$

둘을 곱하게 되면 Y 는 아래와 같은 형태가 될것 이다.

$$Y(X*W) = \begin{bmatrix} x_{11}*w_{11} + x_{12}*w_{21} \\ x_{11}*w_{12} + x_{12}*w_{22} \\ x_{11}*w_{13} + x_{12}*w_{23} \end{bmatrix}$$

위의 결과를 각각 x11, x12 로 편미분 한다고 해보자.

$$\frac{\partial Y}{\partial X_{11}} = \begin{bmatrix} w_{11} \\ w_{12} \\ w_{13} \end{bmatrix}$$

$$\frac{\partial Y}{\partial X_{12}} = \begin{bmatrix} w_{21} \\ w_{22} \\ w_{23} \end{bmatrix}$$

과 같이 변할 것 이다. 즉, 이 두개를 합쳐보면

$$W^T = \begin{bmatrix} w_{11} & w_{12} \\ w_{13} & w_{21} \\ w_{22} & w_{23} \end{bmatrix}$$

위와 같은 식임을 확인할 수 있다. 
$$W = \begin{bmatrix} w_{11} & w_{12} & w_{13} \\ w_{21} & w_{22} & w_{23} \end{bmatrix}$$ 

W 와 놓고 비교해보면 W 의 전치행렬임을 더 쉽게 확인할 수 있다.

결론


즉, 연쇄법칙이 일어나는 Affine 계층에서 역전파를 일으킬때 전치행렬이 나오는 이유는 위와 같다. 왜냐면 항상 우리는 위 식의 경우 X 에 관한것은 아래와 같이 Loss 함수의 값을 X 로 미분을 하는 것이기 때문이다.

$$\frac{\partial L}{\partial X}$$

 

 

728x90

'AI' 카테고리의 다른 글

머신러닝 공부 1일차) 지도 학습 VS 비지도 학습  (1) 2024.12.05