Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kaggle Carvanaコンペでの取り組み

lyakaap
November 17, 2017

Kaggle Carvanaコンペでの取り組み

Kaggle Tokyo Meetup #3 で発表させて頂いた時の資料です。内容はKaggleのCarvana Image Masking Challengeでの取り組みについてです。
※一部画像にぼかしを入れてあります。ご了承ください。

lyakaap

November 17, 2017
Tweet

More Decks by lyakaap

Other Decks in Technology

Transcript

  1. Dilated Convolutionͷੵ૚ š Multi-Scale Context Aggregation by Dilated Convolutions [Fisher

    Yu, et al. 2015] š 様々な膨張率のDilated Convolutionを積層させることを提案 8 Conv
  2. ਫ਼౓ݕূ(U-Net + DC) š Bottle Neckの部分を変えたものを3パターン実験(層数は全て同⼀) š 全て通常のConvolutionを使ったバージョン š Dilated

    Convolutionを積層させたバージョン š Dilated Convolutionを並列に適⽤させたバージョン 11 ௨ৗόʔδϣϯ ੵ૚όʔδϣϯ ฒྻόʔδϣϯ 0.9905 0.9918 0.9916 input: 256x256px
  3. Pseudo LabelingͷޮՌ š スコア及び汎化性能の向上に⼤きく貢献 (Private LB:34 → 6位) š Pseudo

    Labelの正確さはスコアに影響 š Pseudo Labelをどんどん良いものにチェンジ š ここまで精度に効いた理由 š テストデータの量が多い š 精度が出やすいタスクだった 14 Public LB Private LB Pseudo Label ͳ͠ 0.99703 0.99687 Pseudo Label ͋Γ 0.99717 0.99719
  4. Ξϯαϯϒϧ š 5fold @1536 x 1024px + 6fold @1920 x

    1280px š fold間で変えたもの: š 各種seed(initializer, データの更新の順番) š Pseudo Labelのサンプリングレート š TTA(Test Time Augmentation) š 訓練時に使⽤した⽔平⽅向の反転のみ 15
  5. ଞͷ্Ґऀͷղ๏ʢ5th place, @Kyleʣ š ⾊々な解像度で学習させたモデルでのアンサンブル š 1280x1280, 1600x1280, 1918x1280, and

    2010x1340 22 š 後処理:予測マスクの⾞領域を検出→⾞領域内を修正 š 「修正するorしない」を⾞領域の境界からの距離で判断
  6. ଞͷ্Ґऀͷղ๏ʢ11th place, @JandJʣ 23 š 3ステップで学習 š Stage 1:層数の浅いシンプルなU-Netで雑に予測 š

    Stage 2: Stage 1の予測結果を使って境界付近を 256x256のパッチに切り抜く š Stage 3: より深いU-NetでパッチごとにRefine
  7. ·ͱΊ š Carvanaコンペは⼆値分類のセグメンテーションのコンペ š U-NetとDilated Convolutionを組み合わせた š 後処理が上⼿く⾏かず š Pseudo

    Labeling・アンサンブルでスコア向上 25 Ϟσϧͷίʔυஔ͖৔ : https://github.com/lyakaap/Kaggle-Carvana-3rd-Place-Solution
  8. ઃఆ͍Ζ͍Ζ š Optimizer: RMSprop (learning rate=0.0002) š Batchsize: 1 (物理的に1が限界だった)

    š Data Augmentation: ⽔平⽅向の反転のみ š Loss Function: dice loss1 + binary cross entropy 27 1 dice loss = 1.0 – ダイス係数
  9. ଞʹࢼͨ͜͠ͱ š Model: Tiramisu (U-Net + Dense Net), Normal U-Net

    š Upsampling: Pixel Shuffler, Transposed Convolution š Regularization: Batch Normalization/Renormalization, Dropout, Weight Decay š Activation: ELU, LeakyReLU, PReLU, RReLU š Optimizer: momentumSGD, Adadelta, Adam š Data Augmentation: Rotate, Shift, HSV Shift 28