404. RSNA STR Pulmonary Embolism Detection | rsna-str-pulmonary-embolism-detection
我使用了一个两阶段模型。
这是我第二次在比赛中使用这种网络,关于该模型的详细描述可以在这里找到。
EfficientNet 的目标如下:
损失函数为加权 BCE(二元交叉熵)——权重反映了比赛的评估指标权重。
我使用了翻转、旋转、随机调整大小/裁剪、均值/标准差偏移作为数据增强。
我还使用了可训练的 3 窗口技术将 CT 图像转换为 jpeg 格式 (WSO)。
Transformer 是一个 4 层编码器(使用 Pytorch 的 transformer encoder 模块)。图像在序列中的相对和绝对位置被嵌入并添加到特征向量中(就像在 BERT 等 NLP transformer 中进行位置嵌入那样)。
损失函数反映了比赛的评估指标。
该模型的 LB 分数为 0.166。
模型集成将 LB 提高到了 0.162,但在时间范围内我只能集成 2 个模型(我没有使用可以增加 25% 收益的公开/私有 LB 技巧)。为了改进这一点,我使用了一种“第二意见”机制——与其使用第二个模型对所有数据再次进行推理,我模仿医生的做法,只选择结果最不确定(接近 0.5)的序列,用另一个模型对它们进行推理并集成——我这样做了 3 次,每次处理约 30-40% 的数据,从而获得了相当于集成 4 个模型的效果 => LB 0.157。
作为最后一步,我检查了是否有任何预测满足比赛的标签一致性要求,如果没有,则进行最小的更改以满足要求。