Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
雲コンペ振り返り
Search
Dice
November 30, 2019
Research
840
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
雲コンペ振り返り
Dice
November 30, 2019
Other Decks in Research
See All in Research
Vector Map as Language: Toward Unified Remote Sensing Vector Mapping
satai
3
210
Karkada さんの論文 × 2 の紹介: (1) Closed-Form Training Dynamics Reveal Learned Features and Linear Structure in Word2Vec-like Models, (2) Symmetry in language statistics shapes the geometry of model representations
eumesy
PRO
1
390
Google Cloud Next 2026 DM Recap Agentic Data Cloudを添えて / Google Cloud Next 2026 DM Recap
nnaka2992
0
120
Model Discovery and Graph Simulation: A Lightweight Gateway to Chaos Engineering
anatolykr
0
280
某助成金プロジェクト採択に向けて企業研究所のアウトリーチ専任者がやったこと
afroscript
0
180
2026年版中小企業白書・小規模企業白書の概要
ozekinote
0
190
Fukui Shibiten 39 - AI Art
butchi
0
190
260624_NLP-colloquium: Hubness
de9uch1
1
210
Visual SLAM未来予測 / Future Prediction in Visual SLAM
koide3
1
940
Research Engineerという仕事 / Research Engineering: Bridging Research and Business
chck
1
280
論文読み会 SNLP2026 Tau2-Bench: Evaluating Conversational Agents in a Dual-Control Environment
s_mizuki_nlp
0
150
Claude Code × autoresearch 実践
mathbullet
0
250
Featured
See All Featured
Making Projects Easy
brettharned
120
6.7k
Claude Code のすすめ
schroneko
67
230k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
630
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Everyday Curiosity
cassininazir
0
300
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
From π to Pie charts
rasagy
0
330
Into the Great Unknown - MozCon
thekraken
41
2.7k
Bash Introduction
62gerente
615
220k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Transcript
Understanding Clouds from Satellite 雲コンペ振り返り Dice(d46kobayashi)
⾃⼰紹介 とあるJTCのR&Dに所属(4年⽬) ⼤学では機械系(B1)→制御系(B2~B3)→材料系(B4)→情報系(M1~M2)を学ぶ Kaggle歴約6か⽉(Expert) 実績 網膜コンペ銀メダル(26位/2943チーム) 雲コンペ銀メダル(42位/1538チーム) (ProbSpaceくずし字コンペ 1位/137チーム)
コンペティション概要 太陽の放射熱を宇宙に反射する薄い雲は地球温暖化を防ぐ役割があるが、これら の薄い雲のモデリングをより適切に⾏うためのプロジェクト 衛星写真を⽤いて薄い雲を観察した結果、4つの主要なパターンを発⾒ 砂糖型︓⾮常に薄く、低い⾼度に形成される⼩さな積雲 砂利型︓砂糖型よりも荒く、⾵の影響により、線や円弧に沿った⼩規模な雲 花型︓周りに雲の無い領域のある、それぞれが分離された斑点のような形 ⿂型︓最も⼤きな(数百kmに及ぶ)パターンで、⿂の⾻格のような形 このコンペでは、衛星写真に写っている雲の形を領域ごとに4クラスに分類する 評価指標はDice係数
2
画像例 3
データ特徴 1400×2100という⼤きなサイズ(予測時は350×525サイズ) 衛星写真の境界領域は⿊のマスク状態になっており、該当ラベルも無し 各画像に必ず1つ以上のマスクがある クラス間でオーバーラップあり 4
チャレンジ 複数(各画像約3⼈)のアノテーターによってラベル付けされた共通領域をGTとして いるが、分類基準が曖昧なため、アノテーションノイズが多い 矩形を⽤いてアノテーションしているため、ラベルの境界が雲に沿っていない 5
前処理 学習のノイズとなりそうな画像を除外 6
学習(Segmentation) U-Net(5 fold) Encoder: EfficientNet-B4 AttentionModule: scSE Batch Size: 6
U-Net++(5 fold) Encoder: EfficientNet-B3 AttentionModule: scSE Batch Size: 4 7
学習(Segmentation) 共通 Input Size: 416 × 640 Loss Function: BCE(0.5)
+ DiceLoss(0.5) Optimizer: RAdam(WeightDecay: 1e-4) 1段階⽬ Epoch: 20 Learning Rate: 1e-3 → 1e-4 (CosineAnnealing) Hard Augmentation(VH-Flip, ShiftScaleRotate, RandomBrightnessContrast) 2段階⽬ Epoch: 7 Learning Rate: 1e-4 → 1e-5 (CosineAnnealing) Soft Augmentation(VH-Flip) 8
学習(Classification) EfficientNet-B4(5 fold) Batch Size: 16 EfficientNet-B3(5 fold) Batch Size:
24 ※Segmentationの1段階⽬学習済みモデルからFine Tuning 9
学習(Classification) Input Size: 416 × 640 Loss Function: BCE Optimizer:
RAdam(WeightDecay: 1e-4) Epoch: 10 Learning Rate: 1e-4 → 1e-5 (CosineAnnealing) Hard Augmentation(VH-Flip, ShiftScaleRotate, RandomBrightnessContrast) 10
後処理 4 fold TTA(Soft Augmentation) + Mean Average Ensemble(Segmentation) 10
fold TTA(Hard Augmentation) + Mean Average Ensemble(Classification) 閾値以上の領域を暫定のマスクとする マスク領域の補間(詳細は次ページ) ⿊領域のマスクを削除 領域内の平均予測値が閾値以下かつ⾯積が閾値以下のマスクを削除 Classificationの予測値が閾値以下の画像のマスクを削除(LB: 0.006 ↑) 予測マスク数が0の画像について、Classificationの予測値が閾値以上の画像のみ、 予測値が⾼い1クラスのマスクを追加(LB: 0.003 ↑) 11
後処理(マスク領域の補間) approxとrectangleの差分について、領域ごとに⾯積を計算し、閾値以下であれば rectangle、閾値以上であればapproxを選択する → 学習データに⾒られるマスクに近い形のマスクが増え、approxのみ、rectangle のみよりも精度向上 12
その他 Soft Pseudo Labeling → 僅かな精度向上 Loss変更(BCEのみ, Diceのみ, BCE +
Lovasz, bi-tempered loss)→ 向上せず Optimizer変更(AdamW, DEMONAdam)→ 向上せず Decoder変更(DeepLabV3+, HRNet, FPN)→ U-Netを超える精度が出ず断念 Encoder変更(ResNet, ResNeXt-WSL, SE-ResNeXt, DenseNet)→ SE-ResNeXt101が Efficient-B3と同程度の精度、検証速度を優先して2モデルに絞った AttentionModule変更(CBAM, ECA)→ SCSEと⽐較して学習の安定度低下 解像度変更 → 取り掛かりが遅く、検証しきれず 13
結果・反省 Public: 5位 → Private 42位 ⼤幅にShake down(最⾼subでも19位) PrivateのスコアはPublicよりもLocalCV(0.663~0.665)に近かった Late
Submissionで遊んでみたが、後処理前のCNN部分の精度が⾜りていない もう少しモデルに多様性を持たせてアンサンブルすることが必要だった 14
感想 途中帰省していた3連休を除いて⾦圏キープできたのは良かった Shake downは悔しいが実⼒不⾜ Pseudo Labelingの⽅法をもう少し⾊々検証したかった テンプレートコードを作成しながら進めていたが、中途半端な状態になっている ので、次のコンペまでに完成させたい 15
おまけ 計算機環境(⾃宅PC) CPU: Core i5(2cores) GPU: GTX1080Ti(1枚) RAM: 48GB 使⽤ライブラリ
PyTorch pytorch-lightning albumentations segmentation-models-pytorch 16