참고 가이드 라인들 및 자잘한것들
논문 읽기 연습/공통

참고 가이드 라인들 및 자잘한것들

논문 읽기와 ML/DL 커리어 경력에 대한 조언 by 앤드류 응

 

논문 읽기와 ML/DL 커리어 경력에 대한 조언 by 앤드류 응

이번 포스팅은 medium 사이트에 있는 포스팅을 번역한 글입니다! 우리 모두의 ML/DL 선생님이신 앤드류응 교수님께서 스탠포트 CS 230 강의에서 ML/DL 커리어와 논문 읽기에 대한 강의를 하신 것을 정

media-ai.tistory.com

Tips_Papers

 

Tips_Papers

논문 읽기 방법 안준용 (고려대학교) 학술 논문 읽기를 처음 시작한 학생들을 위해, 아래는 논문을 읽을때 효율적으로 읽는 방식에 대해 정리합니다. 논문은 크게 연구 논문과 리뷰 논문으로 나

docs.google.com

Taehoon Kim (carpedm20)

 

Taehoon Kim (carpedm20)

 

carpedm20.github.io

GitHub - paperswithcode/releasing-research-code: Tips for releasing research code in Machine Learning (with official NeurIPS 2020 recommendations)

 

GitHub - paperswithcode/releasing-research-code: Tips for releasing research code in Machine Learning (with official NeurIPS 202

Tips for releasing research code in Machine Learning (with official NeurIPS 2020 recommendations) - GitHub - paperswithcode/releasing-research-code: Tips for releasing research code in Machine Lear...

github.com

딥러닝 공부방

 

딥러닝 공부방

까먹으면 다시 보려고 정리하는 블로그

deep-learning-study.tistory.com

 

 

https://bskyvision.com/

 

bskyvision

수많은 소음 속에서 신호를 찾아가는 bskyvision입니다. 항상 겸손히 배우겠습니다.

bskyvision.com

 

21.09.23

읽어볼 논문들 정리

 

vggNet

https://arxiv.org/pdf/1409.1556.pdf

같은 조건에서 layer만 깊게 쌓으면 성능이 좋아질까? 에 대한 실험을 진행하였다.

재밌었던건 3.1 training에서 weight 초기화 부분. 처음부터 큰 모델로 init weight부터 시작하면 불안정한 gradient 형성으로 학습이 안되서 작은 모델부터 한 다음 점점 큰 모델로 키우면서 한거. 하지만 Glorot & Bengio라는 방법을 뒤늦게 알아서 결국 뻘짓이 되었지만 좋은 아이디어 인듯.

읽다보니 들은 의문점) 저거 만든게 2015이고 저 모델은 2011년 논문(Ciresan, D. C., Meier, U., Masci, J., Gambardella, L. M., and Schmidhuber, J. Flexible, high performance convolutional neural networks for image classification. In IJCAI, pp. 1237–1242, 2011.)을 기반으로 만들었다고 했는데 이 때도 pytorch에서 conv layer같은걸 지원했나? 시간이 많이 남으면 pytorch가 어떻게 발전했는지 버전별, 년도별로 보는것도 좋을 듯.

 

resNet

https://arxiv.org/pdf/1512.03385.pdf

너무 깊게 쌓으면 gradient venishing,exploding 현상이 일어나서 에러가 오히려 증가. 그래서 우리는 residual learning으로 해결했다. 그래서 많이 쌓았어도 성능 해결. 또 다른점은 이미지 크기 반으로 줄일 때 maxpool 안쓰고 stride를 2로 줘서 해결.

vgg는 레이어가 16개, 19개인데 비해 여긴 18,34,50,101,152개.. 근데 vgg19의 flops는 19.6 bilion인데 resnet 34는 3.6bilion밖에 안된다. dense layer를 4096 안하고 avg pool해서 1000으로 한게 제일 클 것 같고, 50 부터는 bottleneck을 적용시킨것도 있을 듯.

https://deep-learning-study.tistory.com/534

https://github.com/weiaicunzai/pytorch-cifar100/blob/master/models/resnet.py

 

shufflenet v2

https://arxiv.org/pdf/1807.11164.pdf

flops는 성능에 직접적인 metric이 아니다. 그래서 실제 업무에서 사용되는 속도, 지연시간 등을 기준으로 가이드라인을 만들었고, 이걸 기반으로 shufflenet v2를 공개한다.. 는 내용이다.

flops 대신 bottleneck 등으로 사실상 더 많은 시간을 소모하는 메모리 접근 횟수인 MAC을 더 선호하거나, 모델이 얼마나 병렬적인지 등의 변수요소도 있다. 또 CUDNN이 11conv 보다는 33conv에 최적화 되어 있기도 함. 물론 mobilenet 들에서 소개한 group convolution, depth-wise convolution도 중요하다. 실제로 코드 까보면 쓰고 있음.

shufflenet인 이유는 group convolution 할 때 각자의 filter의 channel들이 일부 이미지 channel로 보고 계산하게 되는데 이걸 매번 shuffle 해주며 학습하기 때문.

 

mobilenet v3

https://arxiv.org/pdf/1905.02244.pdf

 

high resolution

https://github.com/xinntao/Real-ESRGAN