주말동안 VS code로 작업할 수 있는 환경 설정만 하고 크게 공부 안하고 푹 쉬었다.
이번 주는 강의 없이 온전히 대회에만 집중할 수 있다.
지난 주까진 팀원 코드 참조도 별로 안하면서 최대한 기초적인 내용을 습득하고 구현해보는 데 집중했다면, 오늘은 팀원들이 짜 놓은 코드를 보고 분석하고 내 코드에 접목하였다.
Data imbalance 문제와 한 사람에 대해 여러 장의 이미지가 있어 validation set을 무작위로 만들 경우 train set과 validation set에 같은 사람이 섞여 들어가 훈련이 잘 안된다고 판단해, 이를 구분하는 코드를 팀원께서 이미 구현해 놓으셨다. 이를 받아 분석하였다.
분석 도중 label을 통해 같은 사람을 분류하는 과정에 오류가 있어 작성자분께 말씀드렸다. 일단 이대로 해도 이를 사용한 다른 팀원들의 학습에 지장이 없어 팀 제출 전에 수정하면 될 것 같다.
위의 validation set을 적용해 학습을 돌리려는데 자꾸 cuda out of memory와 bus error가 떠서 몇 시간을 날려서 굉장히 화가 났다... cuda 메모리 관리에 관해선 어떻게 해야 할 지 잘 모르겠다.
수정 후 학습을 돌렸는데 오히려 완전 예측이 망해버렸다.(하나의 클래스만 집중적으로 나오고 있다. 데이터셋이나 다른 부분에 오류가 있어 학습 자체가 이상하게 되는 것 같다.)
대회를 하면서 머리로 모델의 원리와 구조를 이해하고 어떤 식으로 문제를 해결하면 좋을 지 근거를 통해 판단하는 것도 중요하지만, 이걸 아는 것과 코드로 구현하는 것은 별개의 문제라는 걸 새삼 느끼고 있다.
피어세션 때나 혼자 생각할 때 생각나는 아이디어는 많은데, 정작 구현을 못하거나 구현을 해도 이상하게 돌아가는 경우가 많아 아쉬웠다. 틈틈이 나만의 baseline을 만들고 연습을 해야겠다.