Bengali_Kaggle(2/2부)

2020. 5. 4. 16:20Data Science/04_Competition(Kaggle, Dacon)

반응형
Bengali 대회 종료

 

2020년 3월 16일

 

Bengali 손글씨 분류 대회가 종료됐다.

우리팀의 최종 성적은  0.9272로 전체 2,059개 팀 중 318등을 기록했다.


최종 결과


 

해당 대회에 최종 제출한 모델은 전이 학습을 통해 만들 모델들의 앙상블로 구성했다.

사용한 모델의 종류는 seresnet, efficientnet, ghostnet, densenet 4가지 이며 가중치를 각각 다르게 주어 모델의 성능을 향상시켰다.


모델 제출


 

스터디를 진행하면서 처음 참가한 대회성적은 나쁘지 않다고 생각한다.

해당 대회를 진행하면서 배웠던 점은 크게 1) Framework, 2) 이미지 전처리, 3) 전이학습 이다.

 

 

1) Framework

 

기존에는 상위 레벨의 언어인 케라스를 중심으로 사용했다면, 이번 대회에서는 파이토치를 주로 사용했다.

왜냐하면, 참고하는 커널이나 페이퍼들에서 주로 파이토치를 기반으로 분석한 내용들이 많았기 때문에 쉽게 가져다 쓰기 위하여 파이토치를 공부하게 되었다.

덕분에 NN에 대한 이해도 및 활용능력을 기를 수 있었다.


https://pytorch.org/

 

PyTorch

An open source deep learning platform that provides a seamless path from research prototyping to production deployment.

pytorch.org


 

 

2) 이미지 전처리

 

이번 대회의 핵심은 과적합을 방지하는 것이였다. 그렇기 때문에 다양한 argumentation 방식들을 공부하여 적용해야 했고

덕분에 최신 방법들을 익힐 수 있었던 경험이였다.(연습은 캐코 3차 대회 자동차 이미지로 연습)

 


이미지 argumentation


 

 

3) 전이학습

 

캐글 이미지 딥러닝 대회는 학습 데이터를 바탕으로 모델을 만들어나가는것이 아니라, 사전에 미리 학습된 모델을 베이스로

내가 가지고 있는 데이터를 학습시켜 새롭게 만들어 나가는것이 가장 효율적이며 효과적이라는것을 배웠다.

 

빠른 실험과 개발을 위해 처음에는 가장 가벼운 모델을 바탕으로 도전해보고

좀 더 깊은 모델로 진행해야 한다는것을 이번 기회를 통해 배울 수 있었다.


https://github.com/Cadene/pretrained-models.pytorch

 

Cadene/pretrained-models.pytorch

Pretrained ConvNets for pytorch: NASNet, ResNeXt, ResNet, InceptionV4, InceptionResnetV2, Xception, DPN, etc. - Cadene/pretrained-models.pytorch

github.com


 

반응형