为什么分割任务使用 Dice Coefficient 而不是 IOU?
Why Dice Coefficient and not IOU for segmentation tasks?
我看到有人使用 IOU
作为 detection
任务的指标,Dice Coeff
作为 segmentation
任务的指标。这两个指标在等式方面看起来非常相似,除了骰子给交叉部分的权重是两倍。如果我是对的,那么
Dice: (2 x (A*B) / (A + B))
IOU : (A * B) / (A + B)
是否有任何特殊原因更喜欢使用 dice 进行分割和使用 IOU 进行检测?
这不完全正确。
Dice 系数(也称为 Sørensen–Dice 系数和 F1 分数)定义为 A 和 B 相交面积的两倍除以 A 和 B 面积之和:
Dice = 2 |A∩B| / (|A|+|B|) = 2 TP / (2 TP + FP + FN)
(TP=真阳性,FP=假阳性,FN=假阴性)
IOU(Intersection Over Union,也称为Jaccard Index)定义为交集的面积除以并集的面积:
Jaccard = |A∩B| / |A∪B| = TP / (TP + FP + FN)
请注意,A和B的面积之和与A和B的并集面积不同。特别是,如果有100%的重叠,那么一个是另一个的两倍。这就是骰子系数中 "two times" 的原因:它们都被定义为,重叠 100% 时值为 1,重叠率为 0% 时值为 0。
使用哪个取决于个人喜好和每个领域的习惯。你看到一个人在一个领域使用得更多,这与机会有关,而不是其他任何事情。有人开始使用 Dice 系数进行分割,而其他人则紧随其后。有人开始使用 IOU 进行检测,其他人也只是跟着做。
在分割任务中,Dice Coeff (Dice loss = 1-Dice coeff)
被用作损失函数,因为它在 IoU 不可微的地方是可微的。
两者都可以用作评估模型性能的指标,但作为损失函数仅使用 Dice Coeff/loss
我看到有人使用 IOU
作为 detection
任务的指标,Dice Coeff
作为 segmentation
任务的指标。这两个指标在等式方面看起来非常相似,除了骰子给交叉部分的权重是两倍。如果我是对的,那么
Dice: (2 x (A*B) / (A + B))
IOU : (A * B) / (A + B)
是否有任何特殊原因更喜欢使用 dice 进行分割和使用 IOU 进行检测?
这不完全正确。
Dice 系数(也称为 Sørensen–Dice 系数和 F1 分数)定义为 A 和 B 相交面积的两倍除以 A 和 B 面积之和:
Dice = 2 |A∩B| / (|A|+|B|) = 2 TP / (2 TP + FP + FN)
(TP=真阳性,FP=假阳性,FN=假阴性)
IOU(Intersection Over Union,也称为Jaccard Index)定义为交集的面积除以并集的面积:
Jaccard = |A∩B| / |A∪B| = TP / (TP + FP + FN)
请注意,A和B的面积之和与A和B的并集面积不同。特别是,如果有100%的重叠,那么一个是另一个的两倍。这就是骰子系数中 "two times" 的原因:它们都被定义为,重叠 100% 时值为 1,重叠率为 0% 时值为 0。
使用哪个取决于个人喜好和每个领域的习惯。你看到一个人在一个领域使用得更多,这与机会有关,而不是其他任何事情。有人开始使用 Dice 系数进行分割,而其他人则紧随其后。有人开始使用 IOU 进行检测,其他人也只是跟着做。
在分割任务中,Dice Coeff (Dice loss = 1-Dice coeff)
被用作损失函数,因为它在 IoU 不可微的地方是可微的。
两者都可以用作评估模型性能的指标,但作为损失函数仅使用 Dice Coeff/loss