본문 바로가기
부스트캠프 AI-Tech/회고록

[부스트캠프 AI-Tech] 2주차 회고록

by 채채씨 2021. 8. 13.
728x90
반응형
학습기록


[Optimizer] https://amber-chaeeunk.tistory.com/74
[Optimizaton] https://amber-chaeeunk.tistory.com/80
[CNN]
[RNN, LSTM, GRU]
[Transformer]
[Generative Model]


일정

 

DL Basic

 

시각화

 

 

주로 고민했던 것


이번주에는 1) Optimizer에서 gradient vector에 learning rate을 곱해주는 이유2) Adaptive learning을 도입한 Adagrad3) k-fold cross validation에 대해서 많이 고민하였다.


■ 첫번째로 learning rate에 대해 고민한 이유는 'gradient vector자체가 loss값에 얼마나 영향을 미치는 지에 대한 정보이니 그만큼 update하면 되지 않나?' 하는 생각 때문이었다. 이와 관련된 내용은 아래 링크에 내용을 정리하였다.

https://amber-chaeeunk.tistory.com/75?category=986609

 

weight를 갱신할 때 기울기에 왜 Learning rate를 곱할까?

Optimizer를 공부하면서 Learning rate에 대해 의문이 들었다. Gradient자체가 얼마나 Loss에 영향을 주는지를 의미하니까 어느 방향으로 내려가야하는지 뿐만아니라 어느 정도로 업데이트 해야할지에 대

amber-chaeeunk.tistory.com



■ 두번째로 Adaptive learning을 도입한 Adagrad에 대해 고민한 이유는 'weight를 갱신할 수록 점점 작은 보폭으로 가자는 뜻을 알겠는데, 왜 기울기가 큰 값은 보폭을 줄이고 작은 값은 보폭을 키우지? 기울기가 크다는 말은 그만큼 loss에 영향을 많이 미치니까 오히려 더 많이 update해야하는 것 아닌가?' 하는 생각 때문이었다. 이와 관련된 내용은 아래 링크에서 Adagrad 부분에 자세하게 정리하였다.

https://amber-chaeeunk.tistory.com/74?category=986609

 

[Optimizer] SGD , Momentum , NAG , Adagrad , Adadelta , RMSprop , Adam

Optimizer란 weight를 갱신하는 기법이다. 기본적으로는 gradient vector에 learning rate를 곱하여 갱신한다. Optimizer를 공부할 때 gradient자체가 loss에 미치는 영향력을 알려주는데 왜 learning rate을 또..

amber-chaeeunk.tistory.com



■ 세번째로 k-fold cross validation에 대해 고민한 이유는 k개의 모델을 만들어서 개별적으로 학습시킨 다는 것을 이해하지 못하였기 때문이다. '검증하고자 하는 모델은 한 개 아닌가? 모델을 왜 여러개를 만들지?' 라고 생각하였다(ㅋㅋ) 내 머릿속에서 인스턴스(객체)와 MLP()같은 클래스를 명확하게 구분하고 있었기도 했고, holdout cross validation만 사용하다보니 하나의 모델을 여러개의 객체로 만들어 학습시킨 경험이 없어서 상황을 이해하지 못했다. 이해하고서는 조금 허탈했던 고민이었다(...) ※ k-fold cross validaton과 bagging의 관계를 잊지말고 정리하기! (아마 holdout cross validation을 쓸 건지 k-fold cross validation을 쓸 건지에 따라서 bagging기법에서 train data를 선정할 때 차이가 있을 것이다.)


  회고  


이번주는 Generative Model의 두번째 강의(Vit, AAT, MDN 관련)가 정말 어려웠다. 이것이 이번주 학습을 돌아보면 가장 먼저 떠오르는 생각이다. 그리고 다음주부터는 이론도 물론 열심히 공부해야겠지만, 실습이나 선택과제에 시간을 더 투자해서 실제로 해보는 연습을 더 많이 해야겠다.

 

728x90
반응형

댓글