<gradient를 이용하여 어떻게 가중치를 업데이트 시킬 것인가(+backpropagation)>
- 예시 (x+y)z, x=-2, y=5, z= -4
- 이때 X가 f에 미치는 영향, y가 f에 미치는 영향, z가 f에 미치는 영향
- df/dx, df/dy, df/dz 각각을 미분으로 구할 수 있다
- 바로 구할 수 없는 경우 chain rule을 적용하여 미분값 구할 수 있다
- 시그모이드를 구할 수도 있다 → 시그모이드 게이트가 들어가기전의 gradient는 시그모이드 값으로 구할 수 있다.
- 하나의 값이 아니라 다변수라면 자코비안 행렬 사용(다변수 함수일때의 미분값)
- 첫번째 차원은 출력의 해당 요소에만 영향을 주기에 자코비안 행렬=대각행렬이 되므로 모두 계산하지 않는다.
- 더 복잡한 식에서도 변수에 대해 gradient 항상 체크해야한다. (shape같은지 확인 필수)
'데이터 > 딥러닝' 카테고리의 다른 글
CS231n_Lecture6:Training Neural Networks (0) | 2022.11.08 |
---|---|
CS231n_Lecture5:Convolutional Neural Networks (0) | 2022.11.01 |
CS231n_Lecture3:Loss Functions and Optimization (0) | 2022.09.20 |
CS231n_Lecture1, 2:Image Classification pipeline (0) | 2022.09.20 |
Chapter 07-1 인공신경망 (0) | 2022.07.25 |