나만봄 - 역전파가 뭐야

esc247·2023년 3월 9일
0

AI

목록 보기
8/22

이전 포스팅이 너무 길어질 것 같아서
나눠서 포스팅을 한다.

chatGPT의 답변

이번에도 말이 많아 요약하면,

  • in order to minimize the difference between the predicted output and the actual output.
  • the error between the predicted output and the actual output is propagated back through the network, and the weights are adjusted based on the magnitude of the error
  • using the chain rule

Input Layer에서 Output Layer 방향으로 계산하는 것이 순전파(Forward propagation)라면
Output Layer에서 Input Layer 방향으로
각 층에 사용된 가중치를 오차를 줄여나가는 방향으로 갱신하는 알고리즘.
연쇄 법칙(chain-rule)기반 자동 미분(auto-differentiation)을 사용한다.

질문 1. Chain-Rule이 무엇인가?

The chain rule is used to calculate the derivative of a composite function. The chain rule formula states that dy/dx = dy/du × du/dx. In words, differentiate the outer function while keeping the inner function the same then multiply this by the derivative of the inner function. - https://mathsathome.com/chain-rule-differentiation/

사용된 단어 그대로 줄줄이 연산을 하는 것인데,
예시를 먼저 보자.

z=(x+y)2z = (x+y)^{2}
x=w2x = w^{2}
w=x+yw = x+y

이 떄 z는 w에 대하여 미분하고
w를 x,y로 각각 미분하면

δzδw=2w\frac{\delta z}{\delta w} = 2w
δwδx=1\frac{\delta w}{\delta x} = 1
δwδy=1\frac{\delta w}{\delta y} = 1

이 때 우리는 z에 대한 x의 미분값을 구하고자 한다.

δzδx=δzδwδwδx=2w1=2(x+y)\frac{\delta z}{\delta x} = \frac{\delta z}{\delta w} \frac{\delta w}{\delta x}=2w * 1 = 2(x+y)

이를 거꾸로 반복해 나가며 Backpropagation을 수행하면
비용 함수가 그 이전 가중치와 이전 편향에 얼마나 민감한지 알 수 있다.

참고
https://www.youtube.com/watch?v=Ilg3gGewQ5U

profile
막상 하면 모르니까 일단 하자.

0개의 댓글