在眼科学中,盘杯分割充当了评估视神经头结构和早期阶段诊断青光眼的基本步骤。该任务的目标是从扫描激光眼底成像(SLO)中预测一个分割图,区分背景视盘和杯体。此任务的成功依赖于分割模型的准确分割。 这里提出的Fairseg框架致力于消除分割模型对不同人口群体的“歧视”,以确保其在不同群体上盘杯分割任务的公平性。 该篇文章还开源了第一个用于医疗图像分割公平性研究的大型数据集,我已经下载好,并将网盘链接放置在了附件当中。
Fairseg的核心思想主要体现在两部分:公平性缩放界限损失和公平性度量指标。
我们将图像表示为x∈X⊂RH×W×Cx∈X⊂RH×W×C, 目标是预测分割图S^S^,其分辨率为H×WH×W。图中的每个像素与来自Y={y0,y1,y2}Y={y0,y1,y2} 的一个类别关联,其中y0y0表示背景, y1y1表示视盘,y1y1表示视杯。当考虑某个属性时,每张图像都有一个相关的属性类。(如当我们考虑人种(race)这一属性时,aa表示黑人/白人)
我们首先测试模型在不同群体上的分割表现,并假设其对<获得较小Dice损失的样本组>的学习能力更好,相应地我们对该样本组赋予较小权重。同样地,对于<获得较大Dice损失的样本组>,我们认为模型对其的泛化能力更差、偏见更大,因此需要对这些样本组施加更大的学习权重。 基于这一基本假设,我们提出了一种公平性误差缩放方法,用于在训练过程中对不同群体的Dice损失进行缩放。
我们首先定义预测xxx之间的标准Dice损失为
D(y^,y)=1−2×L(y^,y)+ϵ∑y^2+∑y2+ϵ,D(y^,y)=1−∑y^2+∑y2+ϵ2×L(y^,y)+ϵ,
为了确保不同群体(根据某一属性值的不同划分)之间的公平性,我们在上述Dice损失中加入了一种新颖的公平误差界限缩放机制,这样就得到了以下损失函数
Lfair(y^,y,a)=1∣Y∣∑i=1∣Y∣Ωi×D(y^i×∑a=1∣A∣Wa,yi)Lfair(y^,y,a)=∣Y∣1∑i=1∣Y∣Ωi×D(y^i×∑a=1∣A∣Wa,yi) 其中,ΩiΩi表示类别ii的权重,WaWa是特定属性所对应的权重,属性a∈Aa∈A的定义如下: Wa=tanh((min(∑i=1∣Y∣D(y^[a]i,y[a]i))∑i=1∣Y∣D(y^[a]i,y[a]i))γ)Wa=tanh((∑i=1∣Y∣D(y^[a]i,y[a]i)min(∑i=1∣Y∣D(y^[a]i,y[a]i)))γ) 通过用这些属性权重调节prediction的重要性(pixel-level),该损失函数确保不同的属性组在模型训练过程中对损失函数的贡献保持平衡,从而促进公平性。
传统的分割指标,如DiceDice系数和IoUIoU等,提供了分割性能的洞见,但可能无法有效捕捉不同群体之间的公平性。鉴于此,这篇文章提出了一个新的指标,既可以概括分割性能,又能反映模型对不同群体的公平性。
这里首先定义模型对于每个群体的分割性能与总体性能的聚合偏差 Δ=∑A∈A∣I((z′,y))−I((z′,a,y)∣a=A)∣Δ=∑A∈A∣I((z′,y))−I((z′,a,y)∣a=A)∣ 当模型在所有群体上的分割性能相似时,ΔΔ趋近于0.
当我们考虑不同群体之间的公平性时,需要计算整体分割准确性与各个群体内的分割准确性之间的相对差异。基于此,我们定义了公平性缩放分割性能指标(ESSPESSP),公式为 ESSP=I((z′,y))1+ΔESSP=1+ΔI((z′,y))
该公式确保ESSPESSP始终小于或等于𝐼I,当ΔΔ减小(表明不同群体之间的分割性能趋于公平)时,ESSPESSP收敛于传统指标𝐼I, 相反,较大的ΔΔ表示不同人口群体之间的分割性能差距更大,从而导致较低的ESSPESSP分数。该方法不仅允许我们评估分割模型的准确性(例如通过 DiceDice、IoUIoU等指标),还可以评估其在不同人口群体间的公平性。ESSPESSP评分函数因此成为确保医学影像任务中分割准确性和公平性的重要指标.
如上,sample 0和sample 1分别对应gender为0或1的情况,右侧三列的图分别展示了true label(真实label), no fairness(无公平性), with fairness(有公平性)的可视化情形。 我们按照原论文里的实验设置在HarvardFairseg上动手复现了实验结果,模型使用的是SAMed(vit-b), 敏感属性设置的是 性别(gender)。使用的batch size是42,learning rate是0.005, momentum 和 weight decay分别是0.9和0.1。 以下展现了训练好的实验模型在测试集上的结果。
Method | Overall ES-Dice | Overall Dice | Overall ES-IoU | Overall IoU | Female Dice | Male Dice | Female IoU | Male IoU | |
---|---|---|---|---|---|---|---|---|---|
Cup | SAMed | 0.8573 | 0.8645 | 0.7691 | 0.7775 | 0.8697 | 0.8613 | 0.7842 | 0.7733 |
SAMed+FEBS | 0.8624 | 0.8710 | 0.7769 | 0.7862 | 0.8772 | 0.8672 | 0.7936 | 0.7816 | |
Rim | SAMed | 0.8301 | 0.8346 | 0.7229 | 0.7283 | 0.8313 | 0.8367 | 0.7237 | 0.7311 |
SAMed+FEBS | 0.8284 | 0.8302 | 0.7189 | 0.7213 | 0.8288 | 0.8310 | 0.7193 | 0.7226 |
这里与原论文repo的结果有一些差异(比如在Cup视杯上,加入公平性的SAMed的表现优于一般的SAMed,但是在Rim上与预期不符合)我们也在思考原因,欢迎在评论区讨论!
bash train.sh
bash train_finetune.sh
bash test.sh
相关bash脚本具体的参数设置我已放置在附件当中,欢迎下载使用。
python3.9 torch 2.2.2+cu121