625. RSNA 2024 Lumbar Spine Degenerative Classification | rsna-2024-lumbar-spine-degenerative-classification
首先,我们要向 Kaggle 和比赛组织者表示最深深的感谢,感谢他们提供了这个绝佳的机会。我们也要感谢所有的参与者,让这次比赛变得引人入胜且富有洞察力。
我们构建了一个通用的两阶段流程:
我们将在下面详细解释每个过程。
第一阶段的责任是从输入数据中提取估计疾病严重程度所需的信息。
我们构建了一个基于 CenterNet 的 2D 关键点检测器,使用 EfficientNetB6 作为骨干网络,FPN 作为颈部网络。通过输入身体中心附近的矢状面图像,我们估计每个椎间盘级别的坐标。对于训练数据,我们使用了 RSNA2024 中在所有级别都有椎管狭窄坐标的矢状面图像,以及 坐标预训练数据集。通过使用训练好的模型在未使用的 RSNA2024 数据上生成伪标签,我们最终利用了所有 RSNA2024 数据。认识到从几次讨论中存在标签噪声,我们手动审查了所有注释并手动纠正了错误的标签。
我们在每个椎间盘级别裁剪了矢状面图像。为了确保输入数据的多样性,我们采用了多种裁剪设置。由于裁剪设置导致的准确性几乎没有差异。
使用椎间盘级别关键点检测器的输出,我们将任意椎间盘级别分配给轴状面切片。处理流程如下:
我们构建了一个基于 CenterNet 的 2D 关键点检测器,使用 EfficientNetB4 作为骨干网络,FPN 作为颈部网络。通过输入轴状面图像,我们估计椎管的坐标。由于 Y 坐标可以从椎间盘级别关键点检测器的结果中准确估计,但估计 X 坐标具有挑战性,我们引入了这个检测器。对于训练数据,我们使用了 RSNA2024 中具有椎管狭窄坐标的轴状面图像。
使用椎管关键点检测器的输出,我们裁剪以椎管为中心的 necessary 区域。为了确保输入数据的多样性,我们以多种尺寸进行裁剪。由于裁剪方法导致的准确性几乎没有差异。
第二阶段的责任是使用第一阶段的输出估计每种状况的严重程度。
我们创建了一个分类模型,用于从矢状面 T1、矢状面 T2/STIR 和轴状面 T2 图像估计椎管狭窄的严重程度。对于矢状面 T1 和矢状面 T2/STIR,我们将 15 个等间隔的切片输入编码器,为每个切片生成特征表示。对于轴状面 T2,我们输入 10 个等间隔的切片。然后将这些切片特征输入注意力机制以学习切片之间的关系。为了确保模型多样性,我们创建了两个具有不同头部结构的模型。为了提高准确性,我们使用了辅助损失,如其他条件的严重程度和切片级预测。此外,由于指标规格,增加重度类别的损失权重是有效的。通过翻转轴状面图像进行的测试时增强 (TTA) 也提高了 leaderboard 分数。
在验证了模型的各种输入 - 输出组合模式后,我们发现最有效的方法是输入任意椎间盘级别的矢状面 T1、矢状面 T2 和轴状面 T2 切片组,以估计椎管狭窄的严重程度。在训练期间,我们将每组切片视为独立的数据点,而不依赖于椎间盘级别。换句话说,该模型旨在始终从任何椎间盘级别的切片组中学习椎管狭窄的特征,并基于这些特征预测严重程度,而不专注于任何特定的椎间盘级别。这使我们每个条件获得了五倍的数据量,我们认为这有助于提高准确性。
我们使用了以下编码器:
基本训练设置如下:
lr=0.000025,OneCycleLR 调度器(总步骤的前 3/10 进行 Warmup)[1.0, 2.0, 4.0]drop_path_rate = 0.2 或 0.3RandomBrightnessContrastBlurDistortionShiftScaleRotateCoarseDropoutMixup (可选)我们为侧面分类器的训练和推理设计了预处理步骤。我们将矢状面和轴状面图像分割为身体的左侧和右侧。对于右侧数据,我们反转了矢状面切片的顺序并水平翻转了轴状面图像。这使我们能够统一处理左侧和右侧,并有效地使可用于训练的数据量增加了一倍。
我们创建了一个分类模型,用于从矢状面 T1、矢状面 T2/STIR 和轴状面 T2 图像估计神经孔狭窄和关节下狭窄的严重程度。模型结构和输入切片数量与中心分类器相同。
在验证了模型的各种输入 - 输出组合模式后,我们发现最有效的方法是输入任意椎间盘级别和任意侧(左或右)的矢状面 T1、矢状面 T2 和轴状面 T2 切片组,以估计神经孔狭窄和关节下狭窄的严重程度。通过应用左右分割预处理并翻转右侧图像以增加数据,预测准确性得到了提高。在训练期间,我们将每组切片视为独立的数据点,而不区分椎间盘级别或身体侧面。换句话说,该模型旨在从输入切片组中学习这些条件的特征,无论椎间盘级别或侧面如何,并基于这些特征估计严重程度。这使我们每个条件获得了十倍的数据量,我们认为这有助于提高准确性。
y: 一个 study 中包含的中度或更高严重程度病例的数量groups: study_id对于没有 ground truth 标签的项目,我们使用训练模型的预测作为软标签。由于是否存在伪标签导致的准确性变化并不显著,但我们引入伪标签的使用作为确保模型多样性的选项。
单个模型的最高 CV 分数为 0.3858,由中心分类器 (Type B) ConvNeXt-T 和侧面分类器 (Type B) ConvNeXt-N 组合实现。
集成 CV 分数为 0.3643,通过简单平均 30 个模型(15 个中心模型和 15 个侧面模型)获得,这些模型在输入图像类型、模型架构、数据增强、辅助损失、伪标签等方面具有多样性。
我们对椎管狭窄的 logits 应用了温度为 0.91 的温度缩放 (Temperature Scaling),锐化了预测概率。