카테고리 없음
[모두를 위한 딥러닝] Lab-03. Deeper Look at Gradient Descent
우숨
2021. 1. 26. 22:11
Hypothesis function: 인공신경망의 구조를 나타냄
- 어떤 input x에 대해 output y: H(x)
- w: 어떤 매트릭스, input x에 곱해진 후 빼야하는 bias vector에 더해져서 예측값 H(x)를 계산
- 즉, w와 b를 학습해서 최적화
- b 상수 없는 간단한 모델
- 입력과 출력이 동일함으로 w=1이 가장 좋은 모델
Cost funciton
- 모델 예측값이 실제 데이터와 얼마나 다른지 나타내는 것. 잘 학습된 모델이면 낮은 cost를 가짐
- Linear regression의 경우 cost= MSE
- cost를 최소화 하는 것
- 기울기가 음수일 떄는 w가 더 커져야하고 기울기가 양수일 때는 w가 더 작아져야 함
- 기울기가 가파를수록 cost가 1에 가까운것이니 w를크게 바꾸고 평평할수록 0에 가까운 것이니 w를 조금 바꿔야 한다 > gradient descent( grant를 이용해서 cost를 줄인다)
- torch.optim
- optimizer 정의하기 위해서는 학습 가능한 변수들과 learning rate 알아야 함.
- optimizer.zero_grad(): optimizer에 저장되어 있는 모든 학습한 변수들을 전부 0으로 초기화
- cost.backward(): cost를 미분에서 각 변수들의 gredient를 채움
- optimizer.step(): 저장된 gradient 값으로 gredient descent 실행
- optimizer 정의하기 위해서는 학습 가능한 변수들과 learning rate 알아야 함.