해당 포스팅은 네이버 부스트캠프 P-stage를 위해 개인 학습 내용을 정리했습니다.
1. 시도했으나 잘 되지 않았던 것들
- CenterCrop 224는 생각보다 적은 범위를 잡아서 특정 위치를 잡아내지 못하는 이미지도 가끔 존재했습니다. 이를 보완하고자 최대 크기인 384로 CenterCrop 후 resize하는 방식을 선택했습니다.
- 이미지를 전체 확인해보려고 했으나, 너무 많은 용량이 포함되면서 EDA 파일이 안열리는 현상이 발생했었습니다. 다음에는 나눠서 print해보는 것이 좋을 것 같습니다.
- StepLR을 적용했을 때, 처음에 빠르게 수렴하는 경우에는 2에폭마다 줄여주면 좋은 효과를 얻었지만 천천히 수렴하는 모델의 경우 유의미한 결과를 보기에는 시간적인 비용이 크게 작용했습니다.
2. 학습과정에서의 교훈
- 랜덤 시드의 중요성 : 랜덤 시드를 지정하지 않으면 실험 관리가 절대 불가능합니다. 처음 1주일을 그렇게 날려버린 것이 가장 아쉬웠습니다.
- 실험 관리 정리 : 어떤 실험을 했는지, 어떤 결과가 있었는지 자세하게 작성해야 할 것 같습니다. 특히, 한번에 사람의 욕심 때문에 여러 개를 바꿔보기도 했었는데, 다음에 한다면 그러지 않을 것 같습니다. (submission_description도 잘 쓰자)
- 모듈화를 하기 전에 ipynb파일로 먼저 흐름을 만들어 놓고 py파일을 만들면 좀 더 모듈화하는 과정이 쉬웠을 것 같습니다. 비록 이번에 전부를 모듈화 하지는 못했지만, 이번 주말에 마무리 해봐야 겠습니다.
- 공유 문화가 중요하다 : 다른 피어 분들의 토론 글들이 도움이 많이 되었습니다. 비록, 저는 공유하지 못했지만 나중에 공유할 수 있는 것이 있다면 꼭 공유하고 싶습니다.
- 동료를 활용하자 : 모르는 부분은 혼자 고민하는 것도 중요하지만, 어느 정도 시간이 지나도 해결되지 않는다면, 물어보자! 개인적으로 주변 사람들에게 물어보는 것이 도움이 많이 되었습니다. 혼자 공부하는 것보다 같이 공부하면 더 많은 것들을 얻어낼 수 있는 것 같습니다. 줌 코딩을 생활화!
3. 마주한 한계와 도전 숙제
아쉬웠던 점들
- log파일을 만들고, 필요한 내용을 찍어내는 것들을 직접 만들어 보고 싶었지만 시간이 부족해서 만들지 못했습니다.
- 효율적인 시간 활용을 위해 early stopping을 구현해볼 예정입니다.
- 코딩 실력의 한계. 생각보다 dataset.py를 만드는 데 많은 시간을 사용했었습니다. 그래도 한번 만들어봤으니, 나중에 참고해서 만들면 좀 더 나아질 것 같습니다.
- 다양한 모델을 앙상블 해보지 못한 것이 아쉬웠습니다.
한계/교훈을 바탕으로 다음 스테이지에서 새롭게 시도해볼 것
- 나만의 실험 관리하는 방법을 만들기 → 모델 돌리기 시작할 때, 하이퍼 파라미터들을 미리 작성해놓고 학습 후에는 log파일로 학습 양상을 확인하자.
- 다음 스테이지에서는 랜덤시드를 반드시 설정하고 학습해서 시간 낭비를 줄이기
- 토론 게시판에 공유할 내용 하나 써보기
- 이번 Task에서 만든 코드를 기반으로 모듈화 해보기