본문 바로가기
Computer Science/AL, ML

Computation Graph (Forward/Backward Propagation)

by Gofo 2022. 4. 6.

Neural Network에서의 Computation

  • Forward propagation : neural network의 output을 계산하는 과정
  • Backward propagation : gradient(derivate)를 계산하는 과정

 


Computation Graph

Forward/backwrad propagation 과정을 그래프로 나타낸 것이다.

Computation graph를 이용해서 컴퓨터가 gradient를 간단하게 계산할 수 있도록 변환할 수 있다.

 

사람은 눈으로 보고 미분 방정식을 통해 쉽게 gradient를 계산할 수 있지만, 컴퓨터는 그렇지 못하다.

따라서 computation graph를 이용해서 컴퓨터가 gradient를 쉽게 계산할 수 있도록 수식을 만들어준다.

 

예시

아래 모델에서 우리가 필요한 것은 $dJ$에 대한 a, b, c에 대한 변화율($\frac{dJ}{da}, \frac{dJ}{db}, \frac{dJ}{dc}$)이다.

$\frac{dJ}{da}, \frac{dJ}{db}, \frac{dJ}{dc}$를 각각 $da, db, dc$로 표현한다.

 

 

위에서처럼 오른쪽에서 왼쪽 방향으로 backward propagation을 통해 쉽게 $da, db, dc$를 구할 수 있다.

 

Sum over Paths

아래 그림의 x node와 같이 backward propagation 할 때 여러 개가 하나로 모인다면 합하면 된다.

 

'Computer Science > AL, ML' 카테고리의 다른 글

Neural Network  (0) 2022.04.07
Logistic Regression  (0) 2022.04.07
Gradient Descent  (0) 2021.08.06
Loss Function, Cost Function  (0) 2021.08.06
Matrix Notation  (0) 2021.08.05

댓글