• 各种 Dice Loss 变体


    在这里插入图片描述

    各种 Dice Loss 变体

    语雀文档:https://www.yuque.com/lart/idh721/gpix1i

    Dice Loss也是图像分割任务中非常常见的一个损失函数。本文基于 Generalised Wasserstein Dice Score for Imbalanced Multi-class Segmentation using Holistic Convolutional Networks 中的内容进行了整理。

    hard dice score for binary segmentation

    dice score 被广泛使用的针对二值分割图 S 和 G 之间成对比较的重叠度量方式。

    其可以表示为集合操作或统计性度量的形式:

    D h a r d = 2 ∣ S ∩ G ∣ ∣ S ∣ + ∣ G ∣ = 2 Θ T P 2 Θ T P + Θ F P + Θ F N = 2 Θ T P 2 Θ T P + Θ A E D_{hard}=\frac{2|S \cap G|}{|S|+|G|}=\frac{2\Theta_{TP}}{2\Theta_{TP}+\Theta_{FP}+\Theta_{FN}}=\frac{2\Theta_{TP}}{2\Theta_{TP}+\Theta_{AE}} Dhard=S+G2∣SG=2ΘTP+ΘFP+ΘFN2ΘTP=2ΘTP+ΘAE2ΘTP

    这里涉及到几项,具体含义如下:

    • S & G S \& G S&G:待评估图像和参考图像
    • Θ T P \Theta_{TP} ΘTP:正阳性样本的数量,即 S S S G G G 都为真的位置的数量。
    • Θ F P \Theta_{FP} ΘFP S S S 中真而 G G G 中为假的位置的数量。
    • Θ F N \Theta_{FN} ΘFN S S S 中假而 G G G 中为真的位置的数量。
    • Θ A E = Θ F P + Θ F N \Theta_{AE} = \Theta_{FP} + \Theta_{FN} ΘAE=ΘFP+ΘFN S S S G G G 不一致的位置的数量。

    soft dice score for binary segmentation

    对于软二值分割的扩展依赖于概率分类对的不一致概念。

    对于 S S S G G G 中的位置 i ∈ X i \in \mathbf{X} iX 对应的类别 S i S_i Si G i G_i Gi 可以被定义为标签空间 L = { 0 , 1 } \mathbf{L}=\{0,1\} L={0,1} 上的随机变量。

    概率分割可以被表示为标签概率图,其中 P ( L ) P(\mathbf{L}) P(L) 表示标签概率向量的集合:

    • p = { p i : = P ( S i = 1 ) } i ∈ X p=\{p^i:=P(S_i=1)\}_{i \in \mathbf{X}} p={pi:=P(Si=1)}iX
    • g = { g i : = P ( G i = 1 ) } i ∈ X g=\{g^i:=P(G_i=1)\}_{i \in \mathbf{X}} g={gi:=P(Gi=1)}iX

    由此可以将前面的关于数据的统计量 Θ T P & Θ A E \Theta_{TP} \& \Theta_{AE} ΘTP&ΘAE 扩展到软分割情形:

    • Θ A E = ∑ i ∈ X ∣ p i − g i ∣ \Theta_{AE}=\sum_{i \in \mathbf{X}} |p^i-g^i| ΘAE=iXpigi
    • Θ T P = ∑ i ∈ X g i ( 1 − ∣ p i − g i ∣ ) \Theta_{TP}=\sum_{i \in \mathbf{X}} g^i(1-|p^i-g^i|) ΘTP=iXgi(1pigi)

    对于一般情形中的 g g g,即 ∀ i ∈ X , g i ∈ { 0 , 1 } \forall i \in \mathbf{X}, g^i \in \{0, 1\} iX,gi{0,1},此时有:

    • Θ A E = ∑ i ∈ X g i ( 1 − p i ) + ( 1 − g i ) p i = ∑ i ∈ X g i + p i − 2 g i p i \Theta_{AE}=\sum_{i \in \mathbf{X}} g^i(1-p^i)+(1-g^i)p^i=\sum_{i \in \mathbf{X}} g^i+p^i-2g^ip^i ΘAE=iXgi(1pi)+(1gi)pi=iXgi+pi2gipi
    • Θ T P = ∑ i ∈ X g i p i \Theta_{TP}=\sum_{i \in \mathbf{X}} g^ip^i ΘTP=iXgipi

    对应的 soft dice score 可以表示为:

    D s o f t ( p , g ) = 2 ∑ i g i p i ∑ i ( g i + p i ) D_{soft}(p,g)=\frac{2\sum_i g^ip^i}{\sum_i(g^i+p^i)} Dsoft(p,g)=i(gi+pi)2igipi

    当然,也有引入平方形式的变体。

    soft multi-class dice score

    前面直接讨论的是二值分割的情形,而对于多分类情况则需要考虑不同类别计算的整合方式。

    最简单的方式就是直接考虑所有类别的平均。

    可以称为 mean dice score,这里对应包含 ∣ L ∣ |\mathbf{L}| L 个不同的类别:

    D m e a n ( p , g ) = 1 ∣ L ∣ ∑ l ∈ L 2 ∑ i g l i p l i ∑ i g l i + p l i D_{mean}(p,g)=\frac{1}{|\mathbf{L}|}\sum_{l \in \mathbf{L}}\frac{2\sum_{i}g^i_lp^i_l}{\sum_{i}g^i_l+p^i_l} Dmean(p,g)=L1lLigli+pli2iglipli

    上式的推广形式可以通过引入类别权重参数 w l = 1 ( ∑ i g l i ) 2 , l ∈ L w_l = \frac{1}{(\sum_{i}g^i_l)^2}, l\in \mathbf{L} wl=(igli)21,lL 而得到。即从而将上式转化为加权平均的形式。这被称为 generalised soft multi-class dice score。

    最终可以表示为:

    D g e n e r a l i s e d ( p , g ) = 2 ∑ l w l ∑ i g l i p l i ∑ l w l ∑ i ( g l i + p l i ) D_{generalised}(p,g)=\frac{2\sum_l w_l \sum_i g^i_lp^i_l}{\sum_l w_l \sum_i (g^i_l+p^i_l)} Dgeneralised(p,g)=lwli(gli+pli)2lwliglipli

    soft multi-class wasserstein dice score

    前面的 dice score 的形式中,对于 p i p^i pi g i g^i gi 的相似性的度量方式可以看做是 L1 距离,而这里将 wasserstein distance 引入来自然地以一种语义上有意义的方式比较两个标签概率向量。

    这里首先介绍 wasserstein distance。

    wasserstein distance

    这也被称为 earth mover’s distance。用于表示将一个概率向量 p p p 变换为另一个概率向量 q q q 所需要的最小成本。

    对于所有的 l , l ′ ∈ L l,l' \in \mathbf{L} l,lL,从 l l l 移动到 l ′ l' l 的距离的集合定义为 l l l l ′ l' l 之间的距离矩阵 M l , l ′ M_{l,l'} Ml,l,这一矩阵是固定的,可以认为是已知的。

    这是一种将 L \mathbf{L} L 上的距离矩阵 M M M(通常亦可以称为 ground distance matrix)映射为 P ( L ) P(\mathbf{L}) P(L) 上的距离的方式,这里用了关于 L \mathbf{L} L 的先验知识。

    L \mathbf{L} L 为有限集合的情况下,对于 p , q ∈ P ( L ) p,q \in P(\mathbf{L}) p,qP(L),二者关于 M M M 的 wasserstein distance 可以被定义为一个线性规划问题的解。

    W M ( p , q ) = min ⁡ T l , l ′ ∑ l , l ′ ∈ L T l , l ′ M l , l ′ subject to  ∀ l ∈ L , ∑ l ′ ∈ L T l , l ′ = p l ,  and  ∀ l ′ ∈ L , ∑ l ∈ L T l , l ′ = q l ′ WM(p,q)=minTl,ll,lLTl,lMl,lsubject to lL,lLTl,l=pl, and lL,lLTl,l=ql

    WM(p,q)subject to lL,lLTl,l and lL,lLTl,l=minTl,ll,lLTl,lMl,l=pl,=ql
    WM(p,q)subject to lL,lLTl,l and lL,lLTl,l=Tl,lminl,lLTl,lMl,l=pl,=ql

    这里的 T = ( T l , l ′ ) l , l ′ ∈ L T=(T_{l,l'})_{l,l' \in \mathbf{L}} T=(Tl,l)l,lL ( p , q ) (p,q) (p,q) 的联合概率分布,且有着边界分布 p p p q q q

    上式最小的 T ^ \hat{T} T^ 被称作对于距离矩阵 M M M p p p 和之间 q q q 的最优传输。

    关于 wasserstein distance 的解释可以阅读:

    soft multi-class wasserstein dice score

    这里使用 wasserstein distance 来扩展标签概率向量对之间的差异性度量,从而得到如下扩展形式:

    • Θ A E = ∑ i ∈ X W M ( p i , g i ) \Theta_{AE}=\sum_{i \in \mathbf{X}}W^{M}(p^i,g^i) ΘAE=iXWM(pi,gi)
    • Θ T P l = ∑ i ∈ X g l i ( M l . b − W M ( p i , g i ) ) , ∀ l ∈ L ∖ { b } \Theta^l_{TP}=\sum_{i \in \mathbf{X}}g^i_l(M_{l.b}-W^M(p^i,g^i)), \forall l \in \mathbf{L} \setminus \{b\} ΘTPl=iXgli(Ml.bWM(pi,gi)),lL{b}

    M M M 选择为使得背景类别 b b b 总是离其他类最远的情况。

    Θ T P = ∑ i ∈ X α l Θ T P l \Theta_{TP}=\sum_{i \in \mathbf{X}}\alpha_l \Theta^l_{TP} ΘTP=iXαlΘTPl

    这里同样使用加权的方式对各个类别的统计结果进行了组合。

    通过选择 α l = W M ( l , b ) = M l , b \alpha_l = W^{M}(l, b) = M_{l,b} αl=WM(l,b)=Ml,b 来使得背景位置并不对 Θ T P \Theta_{TP} ΘTP 发挥作用。

    最终,关于 M M M 的 wasserstein dice score 可以定义为:

    D M ( p , q ) = 2 ∑ l M l , b ∑ i g l i ( M l , b − W M ( p i , g i ) ) 2 ∑ l M l , b ∑ i g l i ( M l , b − W M ( p i , g i ) ) + ∑ i W M ( p i , g i ) D^M(p,q)=\frac{2\sum_lM_{l,b}\sum_ig^i_l(M_{l,b}-W^M(p^i,g^i))}{2\sum_lM_{l,b}\sum_ig^i_l(M_{l,b}-W^M(p^i,g^i))+\sum_iW^M(p^i,g^i)} DM(p,q)=2lMl,bigli(Ml,bWM(pi,gi))+iWM(pi,gi)2lMl,bigli(Ml,bWM(pi,gi))

    对于二值情况,可以设置:

    M = [ 0 1 1 0 ] M = [0110]

    [0110]
    M=[0110]

    由此有

    W M ( p i , g i ) = ∣ p i − g i ∣ , M l , b → l ≠ b W^M(p^i,g^i)=|p^i-g^i|, M_{l,b} \rightarrow l \ne b WM(pi,gi)=pigi,Ml,bl=b

    此时 wasserstein dice score 就退化为了 soft binary dice score:

    D M ( p , q ) = 2 ∑ i g i ( 1 − ∣ p i − g i ∣ ) 2 ∑ i g i ( 1 − ∣ p i − g i ∣ ) + ∑ i ∣ p i − g i ∣ = 2 ∑ i p i g i 2 ∑ i p i g i + ∑ i [ p i ( 1 − g i ) + ( 1 − p i ) g i ] = 2 ∑ i g i p i ∑ i ( g i + p i ) DM(p,q)=2igi(1|pigi|)2igi(1|pigi|)+i|pigi|=2ipigi2ipigi+i[pi(1gi)+(1pi)gi]=2igipii(gi+pi)

    DM(p,q)=2igi(1|pigi|)2igi(1|pigi|)+i|pigi|=2ipigi2ipigi+i[pi(1gi)+(1pi)gi]=2igipii(gi+pi)
    DM(p,q)=2igi(1pigi)+ipigi2igi(1pigi)=2ipigi+i[pi(1gi)+(1pi)gi]2ipigi=i(gi+pi)2igipi

    曾经的基于 wasserstein distance 的损失受限于其计算成本,然而,对于这里主要考虑的分割情形中,优化问题的闭式解存在。

    对于 ∀ l , l ′ ∈ L \forall l,l' \in \mathbf{L} l,lL,最优传输为 T l , l ′ = p l i g l ′ i T_{l,l'}=p^i_lg^i_{l'} Tl,l=pligli,并且因此 wasserstein distance 可以简化成:

    W M ( p i , g i ) = ∑ l , l ′ ∈ L M l , l ′ p l i g l ′ i W^M(p^i,g^i)=\sum_{l,l' \in \mathbf{L}} M_{l,l'}p^i_lg^i_{l'} WM(pi,gi)=l,lLMl,lpligli

    wasserstein dice loss

    基于 M M M 可以定义为:

    L D M : = 1 − D M L_{D^M} := 1-D^M LDM:=1DM

    参考

  • 相关阅读:
    Ubuntu18.04平台下Qt开发程序打包的一些问题总结
    电脑重装系统Win10“initpki.dll”加载失败怎么办?
    说说 TCP的粘包、拆包
    软件架构设计(十三) 构件与中间件技术
    区间贪心问题合集
    Python 使用OpenCV计算机视觉(一篇文章从零毕业)【附带停车场车位智能识别项目】预计7月初更新完毕
    (二十二)devops持续集成开发——jenkins服务代理Agent搭建
    Android Fragemnt的基本使用
    性能测试分类
    数据库 第八章
  • 原文地址:https://blog.csdn.net/P_LarT/article/details/127585095