한 변화가 다음 변화를 통과할 때
함수 의 출력이 함수 의 입력으로 들어가 를 만든다고 해보자. x가 조금 변하면 먼저 g가 변하고, 그 변화가 다시 f를 움직여. 두 민감도를 이어 주는 규칙이 연쇄법칙이야.
바깥 함수의 도함수는 안쪽 함수의 현재 출력 에서 평가하고, 안쪽 함수의 도함수와 곱해. 덧셈이 아니라 곱셈이라는 점, 그리고 평가 위치를 빼먹지 않는 것이 핵심이야.
벡터 함수에서는 야코비안이 이어진다
신경망의 중간값은 대부분 벡터와 텐서라서 스칼라 도함수 하나가 아니라 야코비안이 등장해. 합성의 야코비안은 행렬곱으로 이어지고, 실제 역전파는 거대한 야코비안 전체를 만들기보다 위에서 흘러온 벡터와 국소 야코비안의 곱을 계산해.
순전파에서 중간값과 계산 의존성을 기록하고 역방향으로 벡터-야코비안 곱을 재사용하면, 출력 스칼라 손실을 모든 매개변수에 대해 효율적으로 미분할 수 있어. 역전파는 연쇄법칙에 계산그래프 순회와 중간 결과 재사용을 결합한 알고리즘이야.
세 가지 스칼라 예시
마지막 식은 를 대입해 단순화한 결과야. 이렇게 국소 도함수를 조립한 뒤 대수적으로 줄일 수 있어.
연쇄법칙은 합성의 국소 민감도를 곱으로 이어. 깊은 망에서는 반복된 야코비안이 어떤 방향의 기울기를 줄이거나 키울 수 있지만, 실제 흐름은 단순한 스칼라 100개의 곱보다 구조와 방향에 더 크게 좌우돼.