11. 10/24
1
0
0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.8
Evaluation
Pred Label
IoU > threshold -> True Positive
Average Precision (AP) =
mean AP (mAP) =
mAP
threshold
AP
ただし、肺炎がない画像に
• 肺炎があると予想した場合はスコア 0
• 肺炎がないと予想した場合はその画像をスコア計算から除外
12. 11/24
18th Solution:
Segmentation approach
物体検出でなくSegmentationとして解いた
• There are a few objects and each object is well separated, so splitting objects from
segmentation mask must be easy.
• Shapes of opacity areas are ambiguous, so rough masks generated from bounding boxes
are not so unnatural.
• Training a segmentation model is easier than an object detection model, I believe.
• A segmentation model suits for ensemble compared to an object detection model.
U-Net (example of segmentation model)
Ronneberger O, Fischer P, Brox T. U-Net: Convolutional Networks for Biomedical Image Segmentation. arXiv. 2015
医療画像トップカンファMICCAIで最も引用された論文
13. 12/24
18th Solution:
Model: SENet-DeepLabV3+
DeepLabV3+のbackboneをXceptionからSENet, SE-ResNeXt101に差替え
• SENet Hu J, Shen L, Sun G. Squeeze-and-Excitation Networks. arXiv. 2017.
画像分類モデル
ILSCRC 2017優勝
• DeepLabV3+
Chen L-C, Zhu Y, Papandreou G, et al. Encoder-Decoder with Atrous Separable Convolution for Semantic Image
Segmentation. arXiv. 2018
Semantic Segmentation State-of-the-art
3モデルを作成
1. SE-ResNext101-DeepLabV3+ (画像全体を入力)
2. SE-ResNext101-DeepLabV3+ (画像の一部を入力)
3. SENet-DeepLabV3+ (画像全体を入力)
全体の特徴と局所特徴の両方を捕らえる狙い
14. 13/24
18th Solution:
Training
Pre-processing
bboxに接する楕円をマスク領域とした。
Training
• 5 fold CV, Adam optimizer, batch size: 8
• クラス重み付きクロスエントロピー (背景: 肺炎 = 1:2)
• Learning rate is scheduled from 103 to 106 by cosine annealing with 3 cycles, 16
epochs per 1 cycle.
• Cycle 1: 肺炎画像のみ使用
• Cycle 2: 肺炎以外の画像も使用 (肺炎: 肺炎以外 = 1:1)
• Cycle 3: augmentationsを追加
Augmentations
平行移動, 拡縮, 回転, 明度調節, 左右反転, コントラスト平滑化, コントラスト調節, 輝度,
ガンマ補正, ガウスノイズ, カットアウト
15. 14/24
18th Solution:
Post-processing
Test Time Augmentation and ensemble
• 3 モデル
• 5 fold CV
• 左右反転
• Cycle 2 の重み, Cycle 3 の重み, Cycle 3 の重み + コントラスト平滑化
合計 3 x 5 x 2 x 3 = 90 の推定結果を平均
Post-processing
• 推定結果で値が一定閾値を超えたピクセルを肺炎領域マスクとした
• マスクを囲んでbboxとした
• マスク内の一番大きい値を確度スコアとして定義し、確度スコアが一定閾値以下の
bboxは除外した
• Train と testのアノテーション方法が違うため、適切なマスク閾値、確度閾値は
Public LBの結果を見て探索した。
• TestはTrainでは見落とされる肺炎が検出され、bboxはTrainより小さめのようだった。
20. 19/24
1st Solution:
Classification-Detection Pipeline
Ian Pan アメリカ、医学部3年生 / Alexandre Cadrin-Chênevert カナダ、放射線科医
Classification-Detection Pipeline
まず画像に肺炎があるか分類し、あるならbboxを物体検出する
• Classification
Chest X-ray 14のデータでpre-train
3 classes: opacity vs. not normal/no opacity vs. normal
2 classes: opacity or not
アンサンブル結果 AUC 0.93
Model Architecture Num Classes Img Size
InceptionResNetV2 2 256 or 320
InceptionResNetV2 3 256 or 320
Xception 2 384 or 448
Xception 3 384 or 448
DenseNet169 2 or 3 512
21. 20/24
1st Solution:
Detection models 1-3 (2 stage model)
1. ResNet101-deformable R-FCN
10 fold CV, img size 224, 肺炎画像のみで学習
Deformable Convolutional Networks: 画像に対して適切な受容野のサイズ・形を学習で
きるCNN
Dai J, Qi H, Xiong Y, et al. Deformable Convolutional Networks. arXiv. 2017.
R-FCN: ROIだけでなく画像全体の情報を利用して物体検出を行うモデル
Dai J, Li Y, He K, et al. R-FCN: Object Detection via Region-based Fully Convolutional Networks. arXiv. 2016
2. ResNet101-Deformable relation networks
Relation networks: 物体候補間の関係を考慮する物体検出モデル
Hu H, Gu J, Zhang Z, et al. Relation Networks for Object Detection. arXiv. 2017.
学習条件は#1と同様
どんなモデルか知らずに使った
3. ResNet101-Deformable relation networks (freeze)
Backboneをフリーズして学習
それ以外は#2と同様