Baseline Code
1. 코드를 다시 천천히 보다가 cosineanealingLR의 tmax가 weight decay로 설정되어있는 것을 확인 -> ......
Augmentation
1. transfer learning을 하면서 parameter들의 requires_grad를 모두 False하면 augmentation을 적용했을 때 성능 차이를 확인할 수 있다고 생각했지만 반대로 pre-train된 모델은 다른 데이터로 학습된 것이기 때문에 augmentation을 적용했을 때 성능을 제대로 판단 할 수가 없을 수도 있다고 생각 -> pre-train된 모델이 backpropagation이 일어날 수 있게 하고 augmentaion을 적용시켰을 때 성능이 향상될 수 도 있고 아닐 수도 있지만 반대로 backpropagation이 안 일어나게 했을 때 해당 model에 대한 성능만을 확인하는 것이지 augmentation이 model에 어떠한 영향을 주는지 알 수 없다고 생각 -> 따라서 parameter들의 requires_grad를 True로 변경하여 실험하는 것이 맞다고 판단
2. test set과 valid set에 각각 다른 augmentation을 적용하는 코드로 수정 -> 중년층에 cutmix을 적용하는데 age를 check하는 부분에서 시간이 상당히 소요됨 -> 학습하는 시간이 더 많이 소요됨
3. 깃헙의 "clovaai/CutMix-PyTorch"에서 pyramidnet을 사용했을 때 더 좋은 결과가 나왔다고 해서 일단 해보자는 생각으로 적용 -> 중년층에 cutmix 30%을 적용 -> LB점수 0.5218가 나오는 것을 보아 성능이 좋지 않았던 것 같다
4. pyramidnet을 사용하여 중년층에 cutmix 40% 적용 -> 시간이 오래걸려서 무엇이 문제인지 찾기위해 중간에 중단
5. 기본 resnet50 모델의 결과와 비교하기 위해 resnet50을 사용하여 cutmix 30%를 적용
6. cutmix는 loss 계산을 다르게 해야하는 것을 알아챔..... -> loss = criterion(output, target_a) * lam + criterion(output, target_b) * (1. - lam) -> 또 다시 해야한다...
Discussion
1. 오피스아워 시간에 서비스 차원에서 적용시키기 위한 생각도 하는 것이 좋다는 말에 해당 image classificaiton 문제에 대한 생각을 다시하게 됨 -> 대회가 시작되고 얼마 안지나서 성별, 마스크 착용 유무, 나이를 제대로 classification하는지에 대한 의문을 가졌던 것이 생각남 -> 앙상블 기법을 사용한 실험을 하고 싶었지만 현재 맡은 임무가 augmentation이기 때문에 다음 기회를 기약해야함.... -> 서비스로 제공하게 된다면 공공장소나 사람이 많이 드나드는 장소가 생각남 -> 카메라를 설치하는 장소를 눈에 보이지 않는 곳에 설치했다면 마스크를 이상하게 쓰거나 안쓰는 사람들이 있을 것 -> 다양한 각도의 사람들을 보고 classification을 수행해야하는데 현재는 정면의 정중앙에 위치한 이미지들이기 때문에 서비스를 한다고 한다면 먼저 데이터 수집이 관건이라고 생각 -> 데이터의 불균형과 다양한 각도에서의 이미지.... 결국 데이터 수집과 preprocessing이 가장 중요한 부분이라고 판단
'Boostcamp AI Tech' 카테고리의 다른 글
[실험 일지 작성_수] Image Classification (0) | 2021.09.01 |
---|---|
[실험 일지 작성_화] Image Classification (0) | 2021.09.01 |
[주말 실험 일지_일] Image Classification (0) | 2021.08.30 |
[주말 실험 일지_토] Image Classification (0) | 2021.08.30 |
[Boostcamp Day-19] Image Classification - Ensemble (0) | 2021.08.27 |