월간 데이콘 제 2회 컴퓨터 비전 학습 경진대회

augmentation, hyper parameter와 성능 실험 (코드 및 결과 공유)

2021.03.07 03:07 4,930 조회 language

아래 코드는 이번 대회에 참여하며 실험을 위해 작성한 코드이며, 하단에는 결과를 공유하고 있습니다.
'어떤 augmentation과, hyper parameter 값이 모델의 성능을 높일 수 있을까?'하는 생각에 진행한 실험입니다.

결과적으로 아래 실험에서 얻을 수 있는 정보는 다음과 같았습니다.
1. flip이 일반화 성능을 올리는데 도움이 되며, 0.4~0.6 사이의 값이 좋은 성능을 보였다.
2. rotation도 일반화 성능을 올리는데 도움이 되며, 0.4의 값이 좋은 성능을 보였다.
3. normalize도 일반화 성능을 올리는데 도움이 되며, pytorch document의 예시에 있는 값이 좋은 성능을 보였다.
4. resize는 일반화 성능을 올리는데 크게 도움이 되었으며, 클수록 좋은 성능을 보일 것으로 추정된다.
 - 단, cuda memory 이슈로 batch_size를 작게 조정해야 하는 문제가 있다.

위 실험은 2000개의 샘플 데이터로 진행되었으며, 유의하여 사용했음에도 50000개의 데이터를 사용할때와는 차이를 보였습니다.
특히, lr과 batch_size의 경우는 일반적으로 알려진 것과 다소 다른 결과를 보였습니다.

최종적으로 제가 제출한 모델도 실험과는 달리 예상보다 낮은 성능을 보였습니다.
실험에 사용된 코드와 결과를 공유하기 위해 작성했으며, 참고용으로 사용하셨으면 좋겠습니다.
또한, 이 실험에서 제가 고려하지 못한 점이나, 관련된 정보나, 의견 등을 남겨주시면 더 큰 도움이 될 것 같습니다. 감사합니다.

코드
로그인이 필요합니다
0 / 1000
DACON.JIN
2021.03.07 16:56

고생하셨습니다. 대단한 실험 정신이네요. 혹시  TTA 기법을 사용해서도 진행해보셨나요 ??

이현규
2021.03.08 10:57

실험 당시 TTA에 대한 이해도가 부족하여 고려하지 못했었습니다.
댓글 덕분에 TTA에 대해 알아보는 시간을 가질 수 있었네요. 감사합니다!
다음 기회에는 TTA 기법도 고려해서 시도해보겠습니다.

DACON.JIN
2021.03.08 11:00

감사합니다 :) 
데이터셋마다 특성이 다르겠지만 train 에서 적용한 augmentation 기법을 test 에서도 적용해보면 좋은 효과를 볼 때가 많았던 것 같습니다 ㅎㅎ 
고생하셨습니다.