刚刚结束的 MICCAI2019 会议的论文集分为6个部分,这段时间刷了一遍 Part I,在这儿和大家做一个简单的分享交流
- 由于本人主要专注于分割领域和半监督弱监督等学习策略,下面给出的综述可能多涉及该方向。
- 选出的文章主要突出其中的闪光点,如果感兴趣还望各位移步 MICCAI 官网获取原文。
- 如有代码,我也会附在下文中。
文章目录
- @[toc]
- 1. Dual Encoding U-Net for Retinal Vessel Segmentation
- # 闪光点:
- 2. A Deep Learning Design for Improving Topology Coherence in Blood Vessel Segmentation
- # [code is available](https://github.com/rjtaraujo/dvae-refiner)
- # 闪光点
- # 总结
- 3. Boundary and Entropy-Driven Adversarial Learning for Fundus Image Segmentation
- # [code is available](https://github.com/EmmaW8/BEAL)
- # 闪光点
- # 总结
- 4. Unsupervised Ensemble Strategy for Retinal Vessel Segmentation
- # 闪光点
- 5. Multi-scale Microaneurysms Segmentation Using Embedding Triplet Loss
- # 闪光点
- 6. Uncertainty Guided Semi-supervised Segmentation of Retinal Layers in OCT Images
- # 闪光点
- # 总结
- 7. Triple ANet: Adaptive Abnormal-aware Attention Network for WCE Image Classification
- # [code is available](https://github.com/Guo-Xiaoqing/Triple-ANet)
- # 闪光点
- # 总结
- 8. Multi-view Learning with Feature Level Fusion for Cervical Dysplasia Diagnosis
- # 闪光点
- # 总结
- 9. Improving Nuclei/Gland Instance Segmentation in Histopathology Images by Full Resolution Neural Network and Spatial Constrained Loss
- # [code is available](https://github.com/huiqu18/FullNet-varCE)
- # 闪光点
- # 总结
- 10. ET-Net: A Generic Edge-aTtention Guidance Network for Medical Image Segmentation
- # [Code is avaliable](https://github.com/ZzzJzzZ/ETNet.)
- # 闪光点
- # 总结
- 11. Pancreatic Cancer Detection in Whole Slide Images Using Noisy Label Annotations
- # 闪光点
- # 总结
- 12. Local and Global Consistency Regularized Mean Teacher for Semi-supervised Nuclei Classification
- # 闪光点
- # 总结
- 13. Precise Separation of Adjacent Nuclei Using a Siamese Neural Network
- # 闪光点
- # 总结
- 14. Evidence Localization for Pathology Images Using Weakly Supervised Learning
- # 闪光点
- # 总结
- 15. IRNet: Instance Relation Network for Overlapping Cervical Cell Segmentation
- # 闪光点
- # 总结
- 16. Multiclass Deep Active Learning for Detecting Red Blood Cell Subtypes in Brightfield Microscopy
- # 闪光点
- # 总结
- 17. Nuclei Segmentation in Histopathological Images Using Two-Stage Learning
- # 闪光点
- # 总结
- 18. ACE-Net: Biomedical Image Segmentation with Augmented Contracting and Expansive Paths
- # 闪光点
- # 总结
- 19. CS-Net: Channel and Spatial Attention Network for Curvilinear Structure Segmentation
- # 闪光点
- # 总结
- 20. Multi-task Neural Networks with Spatial Activation for Retinal Vessel Segmentation and Artery/Vein Classification
- # 闪光点
- #总结
- MICCAI2019 PART① 总结
文章目录
- @[toc]
- 1. Dual Encoding U-Net for Retinal Vessel Segmentation
- # 闪光点:
- 2. A Deep Learning Design for Improving Topology Coherence in Blood Vessel Segmentation
- # [code is available](https://github.com/rjtaraujo/dvae-refiner)
- # 闪光点
- # 总结
- 3. Boundary and Entropy-Driven Adversarial Learning for Fundus Image Segmentation
- # [code is available](https://github.com/EmmaW8/BEAL)
- # 闪光点
- # 总结
- 4. Unsupervised Ensemble Strategy for Retinal Vessel Segmentation
- # 闪光点
- 5. Multi-scale Microaneurysms Segmentation Using Embedding Triplet Loss
- # 闪光点
- 6. Uncertainty Guided Semi-supervised Segmentation of Retinal Layers in OCT Images
- # 闪光点
- # 总结
- 7. Triple ANet: Adaptive Abnormal-aware Attention Network for WCE Image Classification
- # [code is available](https://github.com/Guo-Xiaoqing/Triple-ANet)
- # 闪光点
- # 总结
- 8. Multi-view Learning with Feature Level Fusion for Cervical Dysplasia Diagnosis
- # 闪光点
- # 总结
- 9. Improving Nuclei/Gland Instance Segmentation in Histopathology Images by Full Resolution Neural Network and Spatial Constrained Loss
- # [code is available](https://github.com/huiqu18/FullNet-varCE)
- # 闪光点
- # 总结
- 10. ET-Net: A Generic Edge-aTtention Guidance Network for Medical Image Segmentation
- # [Code is avaliable](https://github.com/ZzzJzzZ/ETNet.)
- # 闪光点
- # 总结
- 11. Pancreatic Cancer Detection in Whole Slide Images Using Noisy Label Annotations
- # 闪光点
- # 总结
- 12. Local and Global Consistency Regularized Mean Teacher for Semi-supervised Nuclei Classification
- # 闪光点
- # 总结
- 13. Precise Separation of Adjacent Nuclei Using a Siamese Neural Network
- # 闪光点
- # 总结
- 14. Evidence Localization for Pathology Images Using Weakly Supervised Learning
- # 闪光点
- # 总结
- 15. IRNet: Instance Relation Network for Overlapping Cervical Cell Segmentation
- # 闪光点
- # 总结
- 16. Multiclass Deep Active Learning for Detecting Red Blood Cell Subtypes in Brightfield Microscopy
- # 闪光点
- # 总结
- 17. Nuclei Segmentation in Histopathological Images Using Two-Stage Learning
- # 闪光点
- # 总结
- 18. ACE-Net: Biomedical Image Segmentation with Augmented Contracting and Expansive Paths
- # 闪光点
- # 总结
- 19. CS-Net: Channel and Spatial Attention Network for Curvilinear Structure Segmentation
- # 闪光点
- # 总结
- 20. Multi-task Neural Networks with Spatial Activation for Retinal Vessel Segmentation and Artery/Vein Classification
- # 闪光点
- #总结
- MICCAI2019 PART① 总结
1. Dual Encoding U-Net for Retinal Vessel Segmentation
# 闪光点:
- 在 spatial path 中使用大的卷积核来保持空间信息,在 context path 中使用 multi-scale 特征来获得更多语义信息。
- 在 skip connection 中使用 channel attention,即上图中的 ASM 模块。
2. A Deep Learning Design for Improving Topology Coherence in Blood Vessel Segmentation
# code is available
# 闪光点
最近两年出了一些关于如何在深度学习框架中引入形状约束,即本文提到的拓扑一致性约束的策略。而不同的是这个工作采用的是一种端对端的框架,同时采用变分自编码器来隐式地编码拓扑约束。其具体来说,是采用粗分割-细分割两步走的策略,首先用传统的分割框架得到粗分割结果,然后用 variational auto-encoder 来从粗分割重建出金标准,其学习得到的隐空间能够避免 topological incoherence。框架如下:
# 总结
其实这个方法被常常用于 noise reduction 工作中,即中间结果是不能获得的无噪声的结果,而网络的监督是有噪声的结果,然后通过这种类似自编码的方法来模拟一种潜在的噪声过程。但是用在这儿本人持保守态度,因为本身血管分割就是属于 fine-grained 工作,这样的自编码器操作并不能得到很好的空间保持性,是否会影响最后的分割精度呢?
3. Boundary and Entropy-Driven Adversarial Learning for Fundus Image Segmentation
# code is available
# 闪光点
为了解决不同数据库中分割的 domain shift 问题,提出了 boundary and entropy-driven 的无监督域适应方法。其采用对抗学习的方法使边界预测和分割不确定性在 target domain 中保持和 source domain 接近,从而得到准确地边缘和分割结果。
- Boundary-Driven adversarial learning
采用判别网络 D b D_b Db 区分边缘预测结果是来源于 source domain 还是 target domain。因此对于 D b D_b Db 的训练目标定义为 L D b = 1 N ∑ x s ∈ T S L D ( p x s b , 1 ) + 1 M ∑ x t ∈ I T L D ( p x t b , 0 ) \mathcal{L}_{D_{b}}=\frac{1}{N} \sum_{x_{s} \in \mathcal{T}_{S}} \mathcal{L}_{D}\left(p_{x_{s}}^{b}, 1\right)+\frac{1}{M} \sum_{x_{t} \in \mathcal{I}_{T}} \mathcal{L}_{D}\left(p_{x_{t}}^{b}, 0\right) LDb=N1∑xs∈TSLD(pxsb,1)+M1∑xt∈ITLD(pxtb,0),同时对应的对抗目标定义为 L a d v b = 1 M ∑ x t ∈ I T L D ( p x t b , 1 ) \mathcal{L}_{a d v}^{b}=\frac{1}{M} \sum_{x_{t} \in \mathcal{I}_{T}} \mathcal{L}_{D}\left(p_{x_{t}}^{b}, 1\right) Ladvb=M1∑xt∈ITLD(pxtb,1)。 - Entropy-Driven Adversarial Learning
和上面提到的边缘对抗差不多,只不过这边需要对抗的输入不是概率图,而是熵值图 E ( x ) = p x m ⋅ log ( p x m ) E(x)=p_{x}^{m} \cdot \log \left(p_{x}^{m}\right) E(x)=pxm⋅log(pxm)。 - 训练策略
采用交替训练的方式训练分割网络和判别器。为了训练边缘判别器 D b D_b Db 和 D e D_e De,我们优化 L D b \mathcal{L}_{D_{b}} LDb 和 L D e \mathcal{L}_{D_{e}} LDe;然后优化分割网络,我们优化来自 target domain 图像对应的边界回归 loss L b = 1 N ∑ x s ∈ I S ( y x s b − p x s b ) 2 \mathcal{L}_{b}=\frac{1}{N} \sum_{x_{s} \in \mathcal{I}_{S}}\left(y_{x_{s}}^{b}-p_{x_{s}}^{b}\right)^{2} Lb=N1∑xs∈IS(yxsb−pxsb)2和分割的 loss L m = − 1 N ∑ x s ∈ I S [ y x s m ⋅ log ( p x s m ) + ( 1 − y x s m ) ⋅ log ( 1 − p x s m ) ] \mathcal{L}_{m}=-\frac{1}{N} \sum_{x_{s} \in \mathcal{I}_{S}}\left[y_{x_{s}}^{m} \cdot \log \left(p_{x_{s}}^{m}\right)+\left(1-y_{x_{s}}^{m}\right) \cdot \log \left(1-p_{x_{s}}^{m}\right)\right] Lm=−N1∑xs∈IS[yxsm⋅log(pxsm)+(1−yxsm)⋅log(1−pxsm)]; 以及对抗 loss L a d v b \mathcal{L}_{a d v}^{b} Ladvb 和 L a d v e \mathcal{L}_{a d v}^{e} Ladve,为了欺骗对应的判别器。
# 总结
属于 solid work,文章写得很棒从 motivation 开始阐述了 target domain 和 source domain 的联系,从而铺垫了为什么要采用对抗学习的方式来实现无监督 domain adaptation 的问题。
4. Unsupervised Ensemble Strategy for Retinal Vessel Segmentation
# 闪光点
文章考虑了一个新的问题,如何更好的进行模型 ensemble。即采用一种能够 no-reference 的网络自动判断分割质量,然后根据分割质量就可以得到对应分割方法的权重,进而完成无监督的模型 ensemble。
5. Multi-scale Microaneurysms Segmentation Using Embedding Triplet Loss
# 闪光点
多尺度的输入 (multi-scale patch-wise) 送入分割网络中然后通过分类模型进行精修。为了提高分类模型的性能, 这个工作联合 triplet embedding loss 和 选择性采样方法。
- Hypothesis Generation Network (HGN)
为了更好的处理不同尺度的血管,采用两个分辨率的输入图像,然后采用 dice loss 和 BCE 进行训练。 - Patch-Wise Refinement Network (PRN)
这个网络是一个分类网络,输入是图像块,输出是图像块中心点的分类结果。HGN 的分割结果作为 PRN 的 ROI 区域,潜在的优势在于这样级联的方式显著的增大了感受野。训练 PRN 除了采用常用的 BCE loss 之外,还采用了在 Image retrieval 中常用的 triplet loss,使得 d d d-维空间中具有相同标签的像素更加接近,而不同标签的像素更远:
L triplet = ∑ i N [ d ( f ( x i a ) , f ( x i p ) ) − d ( f ( x i a ) , f ( x i n ) ) + a ] + \mathcal{L}_{\text {triplet}}=\sum_{i}^{N}\left[d\left(f\left(x_{i}^{a}\right), f\left(x_{i}^{p}\right)\right)-d\left(f\left(x_{i}^{a}\right), f\left(x_{i}^{n}\right)\right)+a\right]_{+} Ltriplet=∑iN[d(f(xia),f(xip))−d(f(xia),f(xin))+a]+。
6. Uncertainty Guided Semi-supervised Segmentation of Retinal Layers in OCT Images
# 闪光点
采用 student-teacher 框架利用有限的有标注的样本和未标注的样本来训练分割模型 (不确定性引导的半监督学习)。一般而言,student-teacher 模型通常先用有标注的样本训练 teacher 模型,为剩余未标记的样本生成对应的 soft-label (可以理解为伪标签) 和不确定度量;接着基于上述 teacher 模型输出的 soft-label 和不确定度量来更新 student 模型。更新 student 模型的时候也考虑类别之间的不均衡性设计损失函数。整个算法框架如下:
# 总结
个人觉得这篇文章的创新性还是比较弱的,不如所提到的 semi-supervised learning 采用的 teacher-student 模型也就是很久之前用的比较多的 distillation 方法,而且 uncertainty guided 训练方式也是比较传统的处理未标记数据的方法。
7. Triple ANet: Adaptive Abnormal-aware Attention Network for WCE Image Classification
# code is available
# 闪光点
这个工作属于改进框架式的工作,关键在于 adaptive dense block 和 abnormal-aware attention module。
- Adaptive dense block (ADB) 对于每个 dense connection 设置 attention score,从而反映不同特征图的重要性。
- Abnormal-aware attention module (AAM) 能够对于不正常的区域调整感受野,从而有效地结合局部上下文信息有助于网络关注在不正常区域。具体来说这个模块分成两个 deformable conv 和 一个 1*1 卷积构成的分支,其中得到的 β \beta β 可以理解成类似于 self-attention 得到的 similarity map,然后本质上这个模块就是为了得到 feature map 的权重。
- Angular contrastive (AC) loss 来减小类内方差同时增大类间差异。
# 总结
这边的 attention module 和 adaptive dense 操作还是值得使用的,包括 (1) 加权的 identify operation 和 (2) 如何使用 self-attention —— two-streams conv -> sequence -> softmax 得到 correlation map -> 乘到原来的 feature map 上完成加权过程即 attention 过程。
8. Multi-view Learning with Feature Level Fusion for Cervical Dysplasia Diagnosis
# 闪光点
考虑多角度学习中的特征融合问题,即如何高效地利用不同视角之间的相关性 —— 提出了新的特征层面的融合方法,捕获两个角度之间的关系。具体来说,方法主要基于 attention 机制,使得一个角度去辅助另外一个角度的学习;或者两个角度相互促进以更好的学习。下图展示了传统的 multi-view 融合方法和这个工作所提出方法的区别:
其中融合的方法为下图的 assistant module:首先通过 1*1 的卷积进行降维,再通过一系列的卷积核进行语义提炼 (采用 bottleneck 结构和大卷积核) 增大感受野而且能够更好的利用已经学习到的特征信息;接着再升维到原来的维度经过 sigmod 操作变换到 0-1 之间 (尺度等于 2 n d 2^{nd} 2nd角度的特征图);最后再逐像素乘到特征图上去,进行加权 attention 操作。
# 总结
感觉上面的 assistant module 的 attention 操作也是值得学习:-> conv -> conv -> conv -> sigmod 得到加权值 -> 加权到特征图上完成 attention 操作。
9. Improving Nuclei/Gland Instance Segmentation in Histopathology Images by Full Resolution Neural Network and Spatial Constrained Loss
# code is available
# 闪光点
- 采用 dilated convolution 操作,使得不用 max-pooling 的同时保证感受野的快速增大,而且兼顾特征图的分辨率不降低。
- 考虑细胞空间性质的损失函数 —— 除了传统的交叉熵 L triplet = ∑ i N [ d ( f ( x i a ) , f ( x i p ) ) − d ( f ( x i a ) , f ( x i n ) ) + a ] + \mathcal{L}_{\text {triplet}}=\sum_{i}^{N}\left[d\left(f\left(x_{i}^{a}\right), f\left(x_{i}^{p}\right)\right)-d\left(f\left(x_{i}^{a}\right), f\left(x_{i}^{n}\right)\right)+a\right]_{+} Ltriplet=∑iN[d(f(xia),f(xip))−d(f(xia),f(xin))+a]+,还有一个考虑像素的空间关系的损失函数 L v a r ( y , t ) = 1 C ∑ c = 1 C 1 ∣ S c ∣ ∑ i = 1 ∣ S c ∣ ( μ c − y ^ i ) 2 \mathcal{L}_{v a r}(y, t)=\frac{1}{C} \sum_{c=1}^{C} \frac{1}{\left|S_{c}\right|} \sum_{i=1}^{\left|S_{c}\right|}\left(\mu_{c}-\hat{y}_{i}\right)^{2} Lvar(y,t)=C1∑c=1C∣Sc∣1∑i=1∣Sc∣(μc−y^i)2。注意这个损失函数直接对属于同一个 instance 的像素给出了局部空间约束。然后最后的整体损失函数是 L v a r C E = L C E + α L v a r \mathcal{L}_{v a r C E}=\mathcal{L}_{C E}+\alpha \mathcal{L}_{v a r} LvarCE=LCE+αLvar。
# 总结
- 其实对于第一个 contribution,我还是持怀疑态度的。原因有两点:首先,仅仅采用 dilated convolution 的操作会导致 feature map 不会有任何的分辨率损失但是也使得 feature map 的数量大大降低了。如此低的 channel number 难道也能确保高语音信息能够有效提取吗?其次,文中所谓的 full resolution neural network 其实在很久之前就已经被发表在 TPAMI 的一篇交互式分割的文章中了,这个思路也是完全一致。
- 第二个 contribution 还是挺有意思的,感觉在 instance segmentation 中会有比较大的帮助。
10. ET-Net: A Generic Edge-aTtention Guidance Network for Medical Image Segmentation
# Code is avaliable
# 闪光点
工作考虑的重点在如何使分割工作能够对于边缘有很好的关注性。因此有了 edge-attention 的说法,用 edge-attention 来引导分割过程。整个算法框架如下:
-
Edge guidance module (EGM) 来进行 edge-attention 的表示,而且在浅层保持住局部的边缘特征。这个模块有两个特性:(1) 提供关注边缘的特征表示引导 decoder 中的分割过程;(2) 采用 edge detection loss (具有更好的 class imbalanced 鲁棒性) 来监督浅层网络 L = 1 C ∑ c ∈ C Δ J c ‾ ( m ( c ) ) , and m i ( c ) = { 1 − p i ( c ) if c = y i ( c ) p i ( c ) otherwise \mathcal{L}=\frac{1}{C} \sum_{c \in C} \overline{\Delta_{J_{c}}}(m(c)), \quad \text { and } \quad m_{i}(c)=\left\{\begin{array}{cl}{1-p_{i}(c)} & {\text { if } c=y_{i}(c)} \\ {p_{i}(c)} & {\text { otherwise }}\end{array}\right. L=C1∑c∈CΔJc(m(c)), and mi(c)={1−pi(c)pi(c) if c=yi(c) otherwise
-
Weighted aggregation module (WAM) 整合不同尺度上的 decoder 的输出,而且将 edge attention 的表示转移到高语义层进而实现对于边缘的很好响应。注意不同尺度的 decoder 的输出其实是经过 weighted block 这样一个 channel attention 模块:
-
整个网络的损失函数也是由 浅层的 edge detection loss 和最后的 segmentation loss 构成:
L total = α ⋅ L s e g + ( 1 − α ) ⋅ L e d g e \mathcal{L}_{\text {total}}=\alpha \cdot \mathcal{L}_{s e g}+(1-\alpha) \cdot \mathcal{L}_{e d g e} Ltotal=α⋅Lseg+(1−α)⋅Ledge
# 总结
本质上从方法论角度来说这篇文章最大的亮点 edge attention 其实并没有很深的创新性,也就是引入了类似 deep supervision 的思路,只不过这里监督的是 edge 而并不是 segmentation/classification。另外在分割结果融合部分也是考虑了 channel attention,即 conv -> global pooling -> conv -> conv -> sigmoid 得到权重 -> 相乘完成 attention 过程。
11. Pancreatic Cancer Detection in Whole Slide Images Using Noisy Label Annotations
# 闪光点
虽然题目中说是 using noisy label annotations,但是文章解决的确是 a small set of clean training samples + a large set of noisy training samples。解决问题的思路也就是用 noisy label classification 然后 online 的方式给具有噪声标签的样本不同的权重。
其中采用 ensemble 的方法融合 noisy label classification 和 没有任何 anti-noise 的 baseline-noisy,原因在于观察到的一个现象 —— NLC 在 cancer 区域效果比较好,baseline noisy 模型在 non-cancer 区域效果比较好。
# 总结
其实这篇文章的核心点在于很好的 motivation 和 observation,包括对于 noisy labels 区域的定义和为什么要采用 ensemble 方式。但是这样也会导致这样的方法并不是一个很通用的策略,在别的部位或者病变上效果并不好。
12. Local and Global Consistency Regularized Mean Teacher for Semi-supervised Nuclei Classification
# 闪光点
目标依然是半监督任务。
-
Mean-teacher 方法。给定标注的样本集 X l = { x 1 , x 2 , ⋯ , x n } ⊂ R m \mathcal{X}_{l}=\left\{x_{1}, x_{2}, \cdots, x_{n}\right\} \subset \mathbb{R}^{m} Xl={x1,x2,⋯,xn}⊂Rm 和未标注的样本集 X u = { x n + 1 , x n + 2 , ⋯ , x N } ⊂ R m \mathcal{X}_{u}=\left\{x_{n+1}, x_{n+2}, \cdots, x_{N}\right\} \subset \mathbb{R}^{m} Xu={xn+1,xn+2,⋯,xN}⊂Rm。 mean-teacher 方法还是依赖于两个模型,即 student model 和 teacher model,并且 teacher model 的模型的参数是 student model 的滑动平均得到 : θ τ ′ = α θ τ − 1 ′ + ( 1 − α ) θ τ \theta_{\tau}^{\prime}=\alpha \theta_{\tau-1}^{\prime}+(1-\alpha) \theta_{\tau} θτ′=αθτ−1′+(1−α)θτ,其中 α \alpha α 是滑动平均系数, θ ′ \theta^{\prime} θ′ 是 teacher model 参数 而 θ \theta θ 是 student model 参数。所采用的的损失函数不仅仅需要考虑传统损失比如 BCE loss,而且需要考虑相同数据在不同扰动下在 teacher model 和 student model 上的预测结果的一致性: Loss m t = 1 n ∑ i n ( − y i log f θ ( x i ) ) + w ( τ ) λ E M A E x , η , η ′ [ ∥ f θ ′ ( x j , η ′ ) − f θ ( x j , η ) ∥ ] \text {Loss }_{m t}=\frac{1}{n} \sum_{i}^{n}\left(-y_{i} \log f_{\theta}\left(x_{i}\right)\right)+w(\tau) \lambda_{E M A} \mathbb{E}_{x, \eta, \eta^{\prime}}\left[\left\|f_{\theta^{\prime}}\left(x_{j}, \eta^{\prime}\right)-f_{\theta}\left(x_{j}, \eta\right)\right\|\right] Loss mt=n1∑in(−yilogfθ(xi))+w(τ)λEMAEx,η,η′[∥fθ′(xj,η′)−fθ(xj,η)∥]。尤其需要注意第二项,强化了 student model 和 teacher model 的预测一致性,而且这样的一致性是在所有数据而不仅仅是在部分标注数据上进行。
-
Mean-teacher with Label Propagation。 上述的 mean-teacher 方法没有考虑数据之间的结构,如 local consistency 和 global consistency 。为了解决这个问题这个工作采用了在 teacher model 上标签传递的策略,因为 teacher model 作为一个 ensemble 模型具有更好的 embedding 过程,即可以构建更好的一个具有标记的样本的 graph 空间,再次基础上进行 label propagation。对于得到的标签计算 student model 上的 contrastive Siamese loss 使得具有相同类的样本更加接近而不同类的样本更远: L s = { ∥ z i − z j ∥ 2 , if A i j = 1 max ( 0 , m − ∥ z i − z j ∥ 2 ) , if A i j = 0 L_{s}=\left\{\begin{array}{ll}{\left\|z_{i}-z_{j}\right\|^{2},} & {\text { if } A_{i j}=1} \\ {\max \left(0, m-\left\|z_{i}-z_{j}\right\|^{2}\right),} & {\text { if } A_{i j}=0}\end{array}\right. Ls={∥zi−zj∥2,max(0,m−∥zi−zj∥2), if Aij=1 if Aij=0
-
最后整体的损失函数是 L t o t a l = L o s s m t + w ( τ ) ( λ g 1 ∑ x i , x j ∈ X l L s 1 + λ g 2 ∑ x i ∈ X l , x j ∈ X u L s 2 ) L_{t o t a l}=L o s s_{m t}+w(\tau)\left(\lambda_{g 1} \sum_{x_{i}, x_{j} \in \mathcal{X}_{l}} L_{s 1}+\lambda_{g 2} \sum_{x_{i} \in \mathcal{X}_{l}, x_{j} \in \mathcal{X}_{u}} L_{s 2}\right) Ltotal=Lossmt+w(τ)(λg1∑xi,xj∈XlLs1+λg2∑xi∈Xl,xj∈XuLs2)。
# 总结
要理解清楚 mean-teacher 和 上面提到第 6 篇文章所用的 teacher-student model 的区别,注意 mean-teacher 实际上就是 model ensemble 的过程。这里使用的 label propagation 也就是完成对于 student model 的细化而已。
13. Precise Separation of Adjacent Nuclei Using a Siamese Neural Network
# 闪光点
给定细胞的语义分割结果,这个工作提出了一种 post-processing 方法来分离相邻的细胞。不同于端对端的分割网络,在语义分割的基础上生成个体标记,然后不断的融合可能为同一个个体的部分为一体。步骤如下:
- 生成过分割 (第二列) 和欠分割结果 (第三列),然后生成 instance marker。
- 用孪生网络判断两个 instance marker 是否属于同一个细胞个体。具体来说是,孪生网络的每个分支输入原图 + concat 的 单个 instance marker,用来判断生成的 feature map 是否属于同一个细胞个体。值得注意的是,采用逐通道的矩阵乘法来确保两个 stream 之间的信息共享;而且 encoder 之后得到的 feature map 通过额外的卷积层和全连接层来判断同一个体的概率。该概率也乘上 dice score 来优化 decoder 得到的分割结果。
# 总结
这样的思路个人觉得还是蛮新颖的,即采用孪生网络来提取潜在不同 instance 的特征,最后类似于在一个 multi-task 框架下完成语义分割和判断是否是同一个个体的分类问题。
14. Evidence Localization for Pathology Images Using Weakly Supervised Learning
# 闪光点
用弱监督的方法来定位病灶 (即给出诊断结果 (image-level),然后在图像中找出对应诊断结果的图像区域 (pixel-level))。整体框架如下,训练时候目标得到一张图片的得癌症的分数,在测试阶段除了也预测得癌症的概率而且也能定位到对应最显著的区域。
- 病灶分类网络。其中每个残差块中增加了 attention module (CBAM),首先得到 channel attention 的 feature map F s q F_{sq} Fsq,然后以级联的方式得到 spatial attention ** A s = σ ( ∑ k ′ f k ′ × k ′ ( F s q ) ) A_{s}=\sigma\left(\sum_{k^{\prime}} f^{k^{\prime} \times k^{\prime}}\left(F_{s q}\right)\right) As=σ(∑k′fk′×k′(Fsq)), k ′ ∈ { 3 , 5 , 7 } k^{\prime} \in\{3,5,7\} k′∈{3,5,7} 表示了有三个尺度的 spatial attention 参与计算**。最后 A_{s} 和 F s q F_{sq} Fsq 进行逐像素相乘完成 attention 操作。
- Cancer activation map (CAM) 和 cancer saliency map (CSM) 分别通过反向传播到不同层来得到,这部分也是传统的 weakly-supervised 的操作。
- 观察到 CAM (coarse) 和 CSM (fine-grained) 的不同特性,提出了一种融合框架。首先 CAM2 和 CAM3 通过 trade-off 的方式融合成 CAM,然后再融合 CSM 通过逐像素乘 和 trade-off 的方式得到 CELM。
# 总结
感觉这个工作和传统 weakly-supervised 并没有比较大的区别,只不过分类网络采用了更好的结构 (channel + spatial attention),然后也用了更加丰富的融合方法来融合不同尺度的 activation map。
15. IRNet: Instance Relation Network for Overlapping Cervical Cell Segmentation
# 闪光点
提出 Instance Relation Network (IRNet) 来建模个体之间的关系。结构框图如下,输入图像首先经过 RPN 网络,然后对应的 feature map 进过 ROIAlign 层之后分别输入 detection 和 segmentation 分支,其中 detection 分支包含 Duplicate Removal Module (DRM) 而 segmentation 分支包含 Instance Relation Module (IRM)。
- Instance Relation Module (IRM)。简而言之 IRM 考虑到不同 instance 之间的关联,使用每个 Instance 的 embedded feature 来计算 instance association matrix,在根据其中的关系传递信息。注意其中的 self-attention 机制用来刻画相关性,重新组织 feature map 的维度来考虑以 cell instance 为单位的 self-attention。得到 self-attention map 也就是 relation interaction 之后,按照对应关系加权原来的 feature map,同时加入 identify connection,得到 A p ′ = γ ∑ q = 1 n w p q A q + A p A_{p}^{\prime}=\gamma \sum_{q=1}^{n} w_{p q} A_{q}+A_{p} Ap′=γ∑q=1nwpqAq+Ap A p ′ = γ ∑ q = 1 n w p q A q + A p A_{p}^{\prime}=\gamma \sum_{q=1}^{n} w_{p q} A_{q}+A_{p} Ap′=γ∑q=1nwpqAq+Ap。通过这样的 relation 之后,得到的特征综合考虑来自其他细胞个体的上下文信息,从而增强语义一致性。
- Sparsity Regularized Duplicate Removal Module。DRM 可以认为是 NMS (非极大值抑制) 的提升版,考虑的还是 cell 之间的联系性。在这儿观察到 cell 的稀疏性因此考虑引入稀疏约束在其中,比如 排序取其中最大的 k k k 个 candidate。
# 总结
感觉这篇文章的质量比较高,而且类似的计算 relationship 的策略可以学习 —— re-arrange 之后得到对应不同 instance 的 feature map,然后再通过 self-attention 的操作得到相关性矩阵也就是目标的 relation matrix。
16. Multiclass Deep Active Learning for Detecting Red Blood Cell Subtypes in Brightfield Microscopy
# 闪光点
文中申明是第一个做 multi-class detection 问题中的 active learning —— 从 unlabeled sampels 中寻找最相关的样本并将其提交给专家进行标注。其选择策略为 (1) detection 的置信度;和 (2) 在当前图中的稀有性。
- expert-in-loop 过程,即 active learning 在 detection 任务中。
- selection measures,考虑分类和检测的不确定性;以及数据中的稀有性。不确定性在 active learning 中没什么好说的,这里还使用了所谓的 rareness —— 以解决 class unbalance,对于稀有类的检测是临床上比较感兴趣但是由于数量少而且具有比较大的 appearance variation导致其效果较差。因此对较为稀有的数据给比较大的优先级在选择查询样本时。
# 总结
其实当我看到这篇文章的时候,内心还是很疑惑的 —— 所谓第一个做 multi-class detection 中的 active learning 问题,加这么限定词之后的 first work 也能算是创新性?而且通读下来给我的感觉就是使用一下 active learning 并没有一些实质性的改进,甚至连对于 selection measure 的 ablation experiment 都没有做,实在是让我难以信服所谓的 rareness 到底有没有效果。
17. Nuclei Segmentation in Histopathological Images Using Two-Stage Learning
# 闪光点
提出了所谓的 two-stage learning 策略 —— 具体来说就是将原来的用于 cell instance segmentation 的类似 DCAN 方法,拆开成两个阶段:(1) 3-classes segmentation 关注细胞内外以及 boundary -> (2) 2-classes segmentation 能够更好的分离 overlapping 的细胞。思路上来说非常简单,但是文中给的解释很有意思,说这个类似于 curriculum learning 即从易到难的学习有利于更好的完成分割任务。比如第一阶段的粗略的边界分割有助于辅助第二阶段中对于粘连细胞的分离。
# 总结
分割框架也不是自己提出的,整体上感觉有点 UNet++ 的味道,然后 two-stage 的训练框架也是形同鸡肋,食之无味弃之可惜 —— 将原来的工作流拆成两个效果的提升能有多少,问题还是没有给出试验验证 —— 你最起码给一个 instance segmentation 的实验结果吧,但是文中比较的全是 semantic segmentation 的结果。这个实验结果实在是让我难以信服所提出的 contribution 的合理性和有效性。
18. ACE-Net: Biomedical Image Segmentation with Augmented Contracting and Expansive Paths
# 闪光点
另外一篇在 U-net 上提升性能的文章 —— ACE-net 用各种新提出的模块包括 ASPP,Dense connection 和 Deep supervision 等策略提升 U-net 中的 contracting 和 expansive path,能够更好的提升特征表示能力也可以更好的利用 multi-scale 和 multi-reception fields 的信息。
- Augmented Contrasting Block (ACB)。除了传统2个的 3 × 3 3\times3 3×3 卷积之外,intensive context modeling (ICM) 用来进行特征增强,其中包括首先的 1 × 1 1\times1 1×1 卷积进行特征进一步提取,然后 concat + 1 × 1 1\times1 1×1 卷积进行特征维度正则化;接着 ASPP 模块用来建模不同感受野层面的 context information ,再进过 1 × 1 1\times1 1×1 卷积之后送入 expansive block 进行 skip connection;除此之外,并行于 ASPP 模块 也有 1*1 卷积用来进行 deep supervision。
- Augmented Expansive Block (AEB)。其中包含 multi-source aggregation 模块,融合4种 feature map 作为输入:来自第一个 (或者前一个) AEB 的输出,对应 ACB 中 ASPP 分支的输出, 原始图像 和 前面所有AEB模块输出的 dense connection。这样丰富的不同来源的具有不同尺度不同感受野的特征 concat 在一起有助于解决分割语义歧义问题,而且有助于提高边缘分割精度。
# 总结
感觉这篇文章的亮点在于如何在 U-Net 这样的一个 backbone 基础上融合 ASPP 等多种策略 —— ASPP 放在 contracting block 部分用来将其引导后续 expansive block 这点还是可以学习一下;包括后续在 expansive block 部分如何利用不同来源的 feature map 进行 concat 也是值得思考的。
19. CS-Net: Channel and Spatial Attention Network for Curvilinear Structure Segmentation
# 闪光点
还是在 U-net 基础上的改进,提出了 channel 和 spatial attention 模块,这两个模块放置在 encoder 的最后面 (decoder 的最前面)。
- 空间注意力模块来编码局部特征中的上下文信息,来提高其表示能力。具体的注意力生成方式是通过 1 × 3 1\times3 1×3 和 3 × 1 3\times1 3×1 的两种卷积捕获不同方向的树状结构的边缘信息,然后将其 re-arrange 成列向量 (或者行向量),再进行点乘和 sigmoid 操作得到 attention map (空间相关性 map): S ( x , y ) = exp ( K ( x ) ⋅ Q ( y ) T ) ∑ x = 1 N exp ( K ( x ) ⋅ Q T ( y ) ) \mathcal{S}_{(x, y)}=\frac{\exp \left(K_{(x)} \cdot Q_{(y)}^{\mathrm{T}}\right)}{\sum_{x=1}^{N} \exp \left(K_{(x)} \cdot Q^{\mathrm{T}}(y)\right)} S(x,y)=∑x=1Nexp(K(x)⋅QT(y))exp(K(x)⋅Q(y)T),然后将其逐像素乘到经过 1 × 1 1\times1 1×1 卷积的特征上,最后再和原始的特征求和。这样的空间注意力知己有助于获得全局上下文联系,并且能够选择性的考虑最有意义的区域。
- 通道注意力模块。本质上类似于上面的空间注意力模块,在此不再具体说了。
# 总结
这里的空间注意力机制还是依赖于 self-attention 策略,通过不同方向的卷积如 1 × 3 1\times3 1×3 和 3 × 1 3\times1 3×1 捕获针对不同方向的 feature map,然后还是类似于计算 relation 的方式得到 每个像素和其余所有像素之间的关系。最后再将其进行 sigmoid 得到 attention map 进而加权原始 feature map,注意这里还有一个 identify connection。
20. Multi-task Neural Networks with Spatial Activation for Retinal Vessel Segmentation and Artery/Vein Classification
# 闪光点
提出 multi-task 框架,能够分割出所有的血管并且能够区分出其中的动静脉。其中关键点如下,(1 ) 使用血管分割 —— 这一相对简单的任务来提高动静脉的分类效果。(2) 对于 encoder 的浅层使用 deep supervision 来提高浅层特征的语义性。
- 多输入模块。输入不仅仅是原始 RGB 图,还有 Gabor filtering 和 Iine detector 得到的结果,这样集合在一起输入网络有助于解决 RGB图 容易受到不均一光照影响的缺陷。
- 带空间注意力机制的网络构架。设计了多任务输出模块来进行所有的血管分割和动静脉分类。但是本质上**分割和分类其实对于语义层的要求不太一样 —— 对动静脉分类需要对于动静脉更加具有判别性的特征,但是这样就不利于对所有血管的分割,因此需要网络同时能够学习动静脉之间共有的特征。**所以在多任务输出模块中设计了两个并行的分支,一个分支用来提取动静脉之间共有的特征,进而得到血管分割结果;另外一个分支用来得到动静脉之间具有判别性的特征。另外需要注意的是如何利用相对简单的分割任务对动静脉分类任务有一个显式地促进,尤其是对于毛细血管部分?所以设计了 activation block,通过增强毛细血管部分的权重,来加强对于毛细血管动静脉分类能力: m ( x ) = σ ( e − ( x − 0.5 ) 2 − e − 1 4 ) + 1 m(x)=\sigma\left(e^{-(x-0.5)^{2}}-e^{-\frac{1}{4}}\right)+1 m(x)=σ(e−(x−0.5)2−e−41)+1
- Deep supervision 模块根据不同的层有不同的卷积层数量设置,能够更好的确保浅层的语义信息。
#总结
- 这篇文章对于动静脉分类 与 血管分割,这两个任务之间关系的阐述很到位,并且有很好的 motivation 去设计这样的两个独立的分支在 multi-task output block 中。
- 另外这里的 attention 操作也不是传统意义上的 self-attention 操作,可以理解成就是给毛细血管部分一个比较大的权重以提升对这部分的分类效果。
MICCAI2019 PART① 总结
- 对于传统分割框架的改进很多是基于 U-Net,然后结合一些比较常用的比如 self-attention 操作,ASPP,deep supervision 等操作,尤其是 attention 操作还是非常值得理解清楚的。
- 其次就是关于各种 semi-supervised,weakly-supervised 等学习策略的研究,整个医学图像处理这边还是处于比较初级的阶段。这边给出的大部分方法笔者都有在之前的 machine learning 等领域有看到。
- 最后就是感觉很多文章的实验部分并没有很好的证明自己的 contribution 的真正有效性,很多都是直接给出了整个框架的效果,但是是否真正有效就很存疑了。