역전파
역전파
역전파(Backpropagation)는 신경망의 손실 함수에 대한 각 매개변수의 편미분(그래디언트)을 연쇄 법칙(chain rule)을 이용해 출력층에서 입력층 방향으로 효율적으로 계산하는 알고리즘이다.
핵심
- 순전파(forward pass)로 예측값과 손실을 계산하고, 역전파(backward pass)로 그래디언트를 계산한다
- 연쇄 법칙: \(\frac{\partial L}{\partial w} = \frac{\partial L}{\partial a} \cdot \frac{\partial a}{\partial z} \cdot \frac{\partial z}{\partial w}\)
- 각 중간값을 재계산하지 않고 저장해 사용하므로 계산 효율적이다
- 오늘날 자동 미분(autodiff) 라이브러리(PyTorch, TensorFlow)가 역전파를 자동으로 수행한다
- 깊은 신경망에서 기울기 소실 문제가 발생할 수 있다