IMOKURI / Cassava-Leaf-Disease-Classification

Kaggle - Cassava Leaf Disease Classification

Home Page:https://www.kaggle.com/c/cassava-leaf-disease-classification

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

πŸƒ Cassava Leaf Disease Classification πŸƒ

Cassava Leaf Disease Classification

Identify the type of disease present on a Cassava Leaf image

✨ Result

  • Private: 28th, 0.9010
  • Public: 8th, 0.9086

This competition is my first image classification competition, so many parts of my solution came from public notebooks and discussions in this competition. I've learnt many things from it.

Thank you for all kagglers and organizers for this competition.

And I'm happy to get a solo silver as my first medal!

πŸ”– Solution

I don't have a strong single model, but the ensemble has surprised me.

🎨 Base Model

  • EfficientNet B4 with Noisy Student
  • SE-ResNeXt50 (32x4d)
  • Vision Transformer (base patch16)
Train Inference Public LB Private LB CV
EfficientNet EfficientNet-inf 0.900 0.891 0.89103
SE-ResNeXt50 SE-ResNeXt50-inf 0.899 0.894 0.89532
ViT ViT-inf 0.899 0.890 0.89220

🐎 Ensemble and TTA

I tried weighted average of no TTA and TTA.

Inference Validation TTA Public LB Private LB CV TTA weight
inf-no-TTA val-no-TTA noTTA 0.905 0.896 0.9429 -
inf-TTA - noTTA + TTAx6 0.907 0.899 - 6:6
inf-TTA-weight - noTTA + TTAx6 0.908 0.900 - 4:6

I decided TTA weight by the public LB score, So I think this may overfit to public LB. I choose second final submission is average of no TTA and TTA.

Inference Validation TTA Public LB Private LB CV TTA weight
inf-TTA-avg - noTTA + TTAx9 0.908 0.901 - 9:9

✏️ Memo

I've used following techniques for this competition.

πŸƒ Datasets

πŸ› οΈ Preprocessing

πŸ“‰ Loss

πŸƒ Training

πŸš€ Inference

πŸ’‘ Tips

πŸ“š History

About

Kaggle - Cassava Leaf Disease Classification

https://www.kaggle.com/c/cassava-leaf-disease-classification

License:MIT License


Languages

Language:Jupyter Notebook 99.9%Language:Makefile 0.1%