역전파를 이해하는 열쇠는 연쇄법칙(chain rule)입니다. chain은 '사슬'이라는 뜻으로, 여러 함수를 사슬처럼 연결하여 사용하는 모습을 빗댄것입니다. 연쇄 법칙에 따르면 합성 함수(여러함수가 연결된 함수)의 미분은 구성 함수 각각을 미분한 후 곱한 것과 같습니다.
구체적인 예를 하나 들어보죠. y = F(x)라는 함수가 있다고 합시다. 이 함수는 a = A(x), b= B(a), c = C(b)라는 세 함수로 구성되어 있습니다. 계산 그래프로 그리면 [그림 5-1]처럼 됩니다.
이때 x 에 대한 y의 미분은 [식 5.1]로 표현할 수 있습니다.
dy/dx = dy/db * db/da * da/dx
[식 5.1]에서 알수 있듯이 x에 대한 y의 미분은 구성 함수 각각의 미분값을 모두 곱한 값과 같습니다. 즉, 합성 함수의 미분은 각 함수의 국소적인 미분들로 분해 할 수 있ㅆ브니다. 이것이 연쇄 법칙입니다. 또한 [식 5.1]앞에 다음과 같이 dx/dy를 명시할 수도 있습니다.
dy/dx = dy/dy*dy/db*db/da*da/dx
dy/dy는 '자신'에 대한 미분이라 항상 1입니다. 따라서 생략하는 것이 보통이지만 이 책에서는 역전파를 구현할 때를 대비하여 포함하도록 하겠습니다.
dy/dy는 y의 ㅛ에 대한 미분입니다. 이때 y가 작은 값만큼 변하면 자기 자신도 y도 당연히 같은 크기만큼 변합니다. 따라서 변화율은 어떤 함수의 경우에도 항상 1입니다.
댓글 없음:
댓글 쓰기