MS【1】:Metric
创始人
2024-05-10 07:43:38
0

文章目录

  • 前言
  • 1. Dice Loss
    • 1.1. Dice coefficient
    • 1.2. F1 score - Dice
    • 1.3. Dice Loss
  • 2. Sensitivity & Specificity
    • 2.1. Sensitivity
    • 2.2. Specificity
  • 3. Hausdorff distance
    • 3.1. 概念
    • 3.2. 单向 Hausdorff distance
    • 3.3. 双向 Hausdorff distance
    • 3.4. 部分 Hausdorff distance
  • 4. Average surface distance
    • 4.1. 概念
    • 4.2. 计算过程
  • 总结


前言

本文主要介绍几种在医学图像分割领域常用的评价标准:Dice Loss, Sensitivity & Specificity, Hausdorff distance, Average surface distance


1. Dice Loss

1.1. Dice coefficient

Dice 系数,是一种集合相似度度量函数,通常用于计算两个样本点的相似度(值范围为 [0,1][0, 1][0,1] ),其值越大意味着这两个样本越相似

  • 用于分割问题,分割最好时为1,最差为0
  • 用于解决样本不均衡的问题,但不稳定,容易出现梯度爆炸

计算公式:
Dice=2∣X∩Y∣∣X∣+∣Y∣Dice = \frac{2|X \cap Y|}{|X| + |Y|}Dice=∣X∣+∣Y∣2∣X∩Y∣​

参数含义:

  • ∣X∩Y∣|X\cap Y|∣X∩Y∣ 表示 XXX 和 YYY 之间交集元素的个数
  • ∣X∣|X|∣X∣ 和 ∣Y∣|Y|∣Y∣ 分别表示 XXX、YYY 中元素的个数
  • 其中,分子中的系数 2,是因为分母存在重复计算 XXX 和 YYY 之间的共同元素的原因
  • 有时候会在分子分母中全部添加一个可选参数:Laplace smoothing
    • 避免当 ∣X∣|X|∣X∣ 和 ∣Y∣|Y|∣Y∣ 都为 0 时,分子被 0 除的问题
    • 减少过拟合

1.2. F1 score - Dice

在这里插入图片描述

Truth\ClassifiedPositiveNegative
PositiveTrue PositiveFalse Negative
NegativeFalse PositiveTrue Negative
  • Precision
    • 表示在预测为1的样本中实际为1的概率
      P=TPTP+FPP = \frac{TP}{TP + FP}P=TP+FPTP​
  • Recall
    • 表示在实际为1的样本中预测为1的概率
      R=TPTP+FNR = \frac{TP}{TP + FN}R=TP+FNTP​
  • PrecisionRecall 往往是相互制约的
    • 如果提高模型的 Precision,就会降低模型的 Recall
    • 提高模型的 Recall 就会降低模型的 Precision

在二分类问题中,Dice coefficient 也可以写成:
Dice=2TPFP+2TP+FN=F1scoreDice = \frac{2TP}{FP + 2TP +FN} = F1scoreDice=FP+2TP+FN2TP​=F1score

1.3. Dice Loss

Dice Loss 数学表达式如下:
DiceLoss=1−Dice=1−2∣X∩Y∣∣X∣+∣Y∣DiceLoss = 1 - Dice = 1 - \frac{2|X \cap Y|}{|X| + |Y|}DiceLoss=1−Dice=1−∣X∣+∣Y∣2∣X∩Y∣​

Dice Loss 用于医学图像分割问题中,参数含义:

  • XXX 表示真实分割图像的像素标签
  • YYY 表示模型预测分割图像的像素类别
  • ∣X∩Y∣|X \cap Y|∣X∩Y∣ 近似为预测图像的像素与真实标签图像的像素之间的点乘,并将点乘结果相加
  • ∣X∣|X|∣X∣ 和 ∣Y∣|Y|∣Y∣ 分别近似为它们各自对应图像中的像素相加

对于二分类问题,真实分割标签图像的像素只有 000,111 两个值,因此 ∣X∩Y∣|X \cap Y|∣X∩Y∣ 可以有效地将在预测分割图像中未在真实分割标签图像中激活的所有像素值清零,对于激活的像素,主要是惩罚低置信度的预测,置信度高的预测会得到较高的 Dice 系数,从而得到较低的 Dice Loss,即:
DiceLoss=1−2∑i=1Nyiyi^∑i=1Nyi+∑i=1Nyi^DiceLoss = 1 - \frac{2\sum_{i=1}^N y_i \hat{y_i}}{\sum_{i=1}^N y_i + \sum_{i=1}^N \hat{y_i}}DiceLoss=1−∑i=1N​yi​+∑i=1N​yi​^​2∑i=1N​yi​yi​^​​

参数含义:

  • yiy_iyi​ 表示像素 iii 的标签值
  • yi^\hat{y_i}yi​^​ 表示像素 iii 的预测值
  • NNN 为像素点总个数,等于单张图像的像素个数乘以 batchsize

Dice Loss 可以缓解样本中前景背景(面积)不平衡带来的消极影响,前景背景不平衡也就是说图像中大部分区域是不包含目标的,只有一小部分区域包含目标。Dice Loss 训练更关注对前景区域的挖掘,即保证有较低的 FN,但会存在损失饱和问题。因此单独使用 Dice Loss 往往并不能取得较好的结果,需要进行组合使用,比如 Dice Loss+CE Loss 或者 Dice Loss+Focal Loss


2. Sensitivity & Specificity

Truth\ClassifiedPositiveNegative
PositiveTrue PositiveFalse Negative
NegativeFalse PositiveTrue Negative
  • TP:P 表示你预测的 Positive,T (True) 表示你预测正确,TP 表示你把正样本预测为正样本
  • FP:P 表示你预测的 Positive,F (False) 表示你预测错误,FP 表示你把负样本预测为正样本
  • TN:N 表示你预测的 Negative,T (True) 表示你预测正确,TN 表示你把负样本预测为负样本
  • FN:N 表示你预测的 Negative,F (False) 表示你预测错误,FP 表示你把正样本预测为负样本
  • FP + TP = 所有分类为阳性的样本
  • TP + FN = 真阳 + 假阴 = 所有真的是阳性的样本

2.1. Sensitivity

TPR:True positive rate,描述识别出的所有正例占所有正例的比例

计算公式:
TPR=TPTP+FNTPR = \frac{TP}{TP+ FN}TPR=TP+FNTP​

可以理解为患者实际有病且被正确诊断出来的概率,即敏感性高 = 漏诊率低(但假性多)

2.2. Specificity

FPR:False positive rate,描述将负例识别为正例的情况占所有负例的比例

FPR=FPFP+TNFPR = \frac{FP}{FP + TN}FPR=FP+TNFP​

可以理解为患者时间没病而且被正确确诊的概率,即特异性低 = 误诊率高(即假阴性多)


3. Hausdorff distance

3.1. 概念

Hausdorff distance 是度量空间中两个子集之间的距离,它将度量空间的非空子集本身转化为度量空间。

非正式地说,如果一个集合的每个点都接近另一个集合的某个点,那么两个集合在 Hausdorff distance 上是接近的。Hausdorff distance 是指对手在两组中的一组中选择一个点,然后必须从那里到达另一组的最长距离。换句话说,它是从一个集合中的一个点到另一个集合中最近的点的所有距离中最大的一个。

假设有两组集合:
A={a1,a2,⋯,ap},B={b1,b2,⋯,bp}A = \{ a^1, a^2, \cdots, a^p \}, \quad B = \{ b^1, b^2, \cdots, b^p \} A={a1,a2,⋯,ap},B={b1,b2,⋯,bp}

3.2. 单向 Hausdorff distance

计算公式:
h(A,B)=max⁡a∈Amin⁡b∈B∣∣a−b∣∣h(B,A)=max⁡b∈Amin⁡a∈B∣∣b−a∣∣h(A, B) = \displaystyle\max_{a \in A}\displaystyle\min_{b \in B} || a - b || \\ h(B, A) = \displaystyle\max_{b \in A}\displaystyle\min_{a \in B} || b - a ||h(A,B)=a∈Amax​b∈Bmin​∣∣a−b∣∣h(B,A)=b∈Amax​a∈Bmin​∣∣b−a∣∣

参数含义:

  • ∣∣a−b∣∣|| a - b ||∣∣a−b∣∣ 表示 a 与 b 之间的欧式距离
  • h(A,B)h(A, B)h(A,B) 也叫前向 Hausdorff distance,h(B,A)h(B, A)h(B,A) 也叫后向 Hausdorff distance

h(A,B)h(A, B)h(A,B) 的理解:

  • 先在集合 B 中取距离集合 A 最近的点 bjb^jbj,然后计算集合 A 中的每个点 aia^iai 与 bjb^jbj 之间的距离,并将距离进行排序,然后取距离最大的值作为 h(A,B)h(A, B)h(A,B) 的值
  • 若 h(A,B)=dh(A, B) = dh(A,B)=d,表示 AAA 中所有点到 BBB 集合的距离不超过 ddd
  • 需要注意的是,Hausdorff 距离是定向的(或者说不对称的),这意味着大多数情况 h(A,B)h(A, B)h(A,B) 不等于 h(B,A)h(B, A)h(B,A)

图解:

  1. 给定两个点集 AAA 和 BBB,求它们的 Hausdorff 距离 h(A,B)h(A, B)h(A,B)

在这里插入图片描述

  1. 计算 a1a_1a1​ 和 b1,b2,b3b_1, b_2, b_3b1​,b2​,b3​ 的距离 d11,d12,d13d_{11}, d_{12}, d_{13}d11​,d12​,d13​

在这里插入图片描述

  1. 保留最短的距离 d11d_{11}d11​

在这里插入图片描述

  1. 计算 a2a_2a2​ 和 b1,b2,b3b_1, b_2, b_3b1​,b2​,b3​ 的距离 d21,d22,d23d_{21}, d_{22}, d_{23}d21​,d22​,d23​

在这里插入图片描述

  1. 保留最短的距离 d23d_{23}d23​

在这里插入图片描述

  1. d11d_{11}d11​ 和 d23d_{23}d23​ 中较大者即为 Hausdorff 距离 h(A,B)=d(a1,b1)h(A, B) = d(a_1, b_1)h(A,B)=d(a1​,b1​)

在这里插入图片描述

  1. 我们可以得到 AAA 中的任意点到 BBB 部分点的距离,至多为 h(A,B)h(A, B)h(A,B)

在这里插入图片描述

3.3. 双向 Hausdorff distance

计算公式:
H(A,B)=max{h(A,B),h(B,A)}H(A, B) = max\{ h(A, B), h(B, A) \}H(A,B)=max{h(A,B),h(B,A)}

双向 Hausdorff 距离取单向 Hausdorff 距离中的最大值,度量了两个点集间的不相似程度(双向 Hausdorff 距离越小,匹配程度越高)

3.4. 部分 Hausdorff distance

但是,在图像存在噪声污染或遮挡等情况时,上述的 Hausdorff 距离很容易造成误匹配,如下图:

在这里插入图片描述

B 集合中距离 A 集合最近的点 bjb_jbj​,A集合中距离 bjb_jbj​ 最远的点是 a2a_2a2​,但是由于存在噪声,Hausdorff 距离并没有取 a2a_2a2​ 与 bjb_jbj​ 之间的距离,而是噪声与 bjb_jbj​ 之间的距离,导致错误。

  • 部分单向 Hausdorff 距离:
    • 计算公式:
      • hfF(A,B)=fFth⁡ai∈Amin⁡bj∈B∣∣ai−bj∣∣h^{f_F}(A, B) = f_F \displaystyle\th_{a^i \in A} \displaystyle\min_{b_j \in B}|| a^i - b^j ||hfF​(A,B)=fF​thai∈A​bj​∈Bmin​∣∣ai−bj∣∣
      • hfR(B,A)=fRth⁡bj∈Bmin⁡ai∈A∣∣bj−ai∣∣h^{f_R}(B, A) = f_R \displaystyle\th_{b^j \in B} \displaystyle\min_{a_i \in A}|| b^j - a^i ||hfR​(B,A)=fR​thbj∈B​ai​∈Amin​∣∣bj−ai∣∣
    • 参数含义:
      • fF,fR∈[0,1]f_F, f_R \in [0, 1]fF​,fR​∈[0,1] 分别称为前向分数和后向分数,控制着前向距离和后向距离
      • ththth 表示排序
      • 当 fF=fR=1f_F = f_R = 1fF​=fR​=1 时,该公式退化为原始的单向 Hausdorff 距离
  • 部分双向 Hausdorff 距离:
    • HfFfR(A,B)=max{hfF(A,B),hfR(B,A)}H^{f_F f_R} (A, B) = max\{ h^{f_F}(A, B), h^{f_R}(B, A) \}HfF​fR​(A,B)=max{hfF​(A,B),hfR​(B,A)}

4. Average surface distance

4.1. 概念

Mean surface distance 这个指标就是 P 中所有点的表面距离的平均,这个指标又可称为Average Symmetric Surface Distance (ASSD)。

通过对体素数据,体素点与体素点之间的距离进行编码,建立查找表,从而极大减小了运算量和算法复杂度,从而计算点与点之间的距离。这里需要注意的是,体素与体素之间的距离计算是以单位体积进行计算的

  • ASD 计算公式:
    • XXX 集合中所有点到 YYY 集合表面距离的平均,点 xxx 到集合 YYY 的距离,就是点 xxx 到 YYY 最近的距离
      ASD(X,Y)=∑x∈Xminy∈Yd(x,y)/∣X∣ASD(X, Y) = \displaystyle\sum_{x \in X} min_{y \in Y} d(x, y) / |X|ASD(X,Y)=x∈X∑​miny∈Y​d(x,y)/∣X∣
    • 参数含义:
      • d(x,y)d(x, y)d(x,y) 是由两个图像体 XXX 和 YYY 之间的欧几里得距离组成的三维矩阵
  • ASSD 计算公式
    • XXX 到 YYY 的平均表面距离,和 YYY 到 XXX 的平均表面距离的平均
      ASSD(X,Y)={ASD(X,Y)+ASD(Y,X)}/2ASSD(X, Y) = \{ ASD(X, Y) + ASD(Y, X) \} / 2ASSD(X,Y)={ASD(X,Y)+ASD(Y,X)}/2

4.2. 计算过程

输入 A 和 B:

  • 类似 marching cube 等值面,建立相交点构成平面的法向量,根据法向量和
    voxel spacing,获得 surface distance 的查找表(长度为 256 的 list)
  • 判断数据类型 (bool),crop 有效区域
  • 通过 kernel 卷积进行编码(记为 CODE
  • 将大于 0 的像素值均变为 1,同时要求该像素值不为 255 (borders)
  • 距离转换,计算图像中非零点到最近背景点(即 0) 的距离,构造距离图
  • CODE 为输入,0~255 对应 index 的 element,和查找表进行映射,取面积距离值,构成面积距离图 (surface map)
  • 以 A 的 borders 大于 0 的像素作为索引(相当于选点的过程),获得 B 的 distance 的映射结果,即 A 集合中的体素与 B 中 border 的距离图(记为 (distances_ map, 1 dimension))
  • 以 A 的 borders 大于 0 的像素作为索引,获得 A 的 surface_ map 的映射结果(记为 (surfel map, 1 dimension)
    • 相当于获得体素边界表面面积距离图
  • 求均值:(distances map * srufel map) / sum(surfel map),即得到了 ASD
    • 可以看到这里的边界表面面积距离图起到了权重的作用,能够有效平滑尖锐区域带来的误差

在这里插入图片描述

在这里插入图片描述


总结

主要总结了有关医学图像分割领域几种常用的模型评价标准,会根据在后续论文中遇到的指标进行补充和修改

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...