랩업리포트에 쓴 개인회고를 그대로 가져와 정리했다.
개인 Competition 대회 경험은 있지만 딥러닝 프로젝트는 처음입니다. 따라서 “다양한 기법들을 탐구”하고 “팀 프로젝트 경험을 쌓는 기회”로 만들고자 했습니다.
원활한 팀 프로젝트를 위해 제공된 Baseline Code 를 기반으로 여러 기법, 파라미터를 개인이 지정할 수 있는 방향으로 코드를 구성했고, 과정과 결과에서 나온 지표들을 ‘wandb’를 통해 구현할 수 있도록 했습니다. 기본 18 개로 분류하는 baseline code 를 기반으로 각각의 task 를 따로 수행하는 multi-task model 코드를 구성하고 최종적으로 채택했습니다. Loss, train/validation, weight freeze 등 여러 기법들에 대해 탐구했으며 ‘wandb’ report 로 만들어 팀원들과 정보를 공유했습니다.
탐구의 효율성을 위해 실행 시 argument들을 이용하여 팀원들이 원하는 여러 기법들을 쉽게 적용시킬 수 있게 코드를 최대한 일반화하는데 노력을 기울였습니다. 하지만 프로젝트를 진행하면서 코드를 크게 수정해서 sweep 기능을 사용하지 못한 부분이 아쉬운 점이 있었고 다음 프로젝트에서는 Git Convention과 같이 wandb Convention을 정해서 체계적으로 결과를 업로드 했다면 실험끼리 비교하기 좋았을 것
같습니다.
기본적으로 얼굴 이미지에 대한 분류이기 때문에 학습 시 유사한 low-level feature를 학습할 것으로
예상했고 각 task를 분리할 경우 클래스 불균형 문제가 개선될 것이라는 추측을 바탕으로 채택한
방법입니다. 또한 실생활 문제에 잘 활용될 수 있는 모델이라고 생각했습니다. 이후 프로젝트에서 Multi-task model을 사용할 일이 있다면 FC layer의 깊이, 넓이, Base 모델의 특징에 따른 결과 정리해보고 싶습니다.
여러 기법들과 이론을 적용시켜보는 과정을 거쳤는데 리더보드 제출 횟수가부족한 점이 아쉬웠습니다. 다음 프로젝트에서는 리더보드 제출 횟수 계획을 세워서 추론에 대한 결과를 확인하도록 했으면 합니다. 또한 추론 시 추론에 대한 레퍼런스와 근거를 더 잘 정리해서 이후 취업 포트폴리오에 추가할 만한 report를 쓰는 것이 목표입니다
Best model 선정 기준(Callback condition)