Biocybernetics & Biomedical Engineering, 2018
文章目录
1 Background and Motivation
尿沉渣检测的传统方法基于 cell segmentation, feature extraction and classification
The main characteristics of urine sediment cells images
- cell adhesion
- class confusion
- the size of most cells is small.
class confusion 从如下图可见一斑!
作者采用目标检测的方法,来做尿沉渣检测,以 FPN 为框架(roi pooling 替换成 mask rcnn 中的 roi align),观察到 rpn 的结果中 recall 很高(95%),但是头部的分类器效果却很差(指的是红细胞,红细胞 erythrocyte 和白细胞 leukocyte 的 class confusion 导致红细胞的检测效果很不理想)
基于上述问题,作者从两个方面进行了尝试
- 特征提取:把主干网络从 resnet 替换成 densenet
- 注意力机制:在头部结构中加入注意力机制
2 Advantages / Contributions
1)adding attention module in the network head
- improve 0.7 mAP with pre-trained ImageNet
- improve 1.4 with pre-trained COCO
2)用 DenseNet 后 (DenseNet 配合 attention 由于计算资源限制,融合失败)
- top result with a mAP of 86.9% on USE test set(improve 5.6 points)
- erythrocyte’s AP is greatly improved from 65.4% to 93.8%
3 Innovations
更多的是应用创新,对问题的理解,以及对 attention module 的落地方式
4 Method(attention module)
关于 FPN、Mask RCNN、ResNet、DenseNet ,由于篇幅有限,可以参考如下文章
【FPN】《Feature Pyramid Networks for Object Detection》(CVPR-2017)
【Mask RCNN】《Mask R-CNN》(ICCV-2017)
【Keras-ResNet】CIFAR-10
【DenseNet】《Densely Connected Convolutional Networks》
先回顾下 faster rcnn 的头部结构
caffe 代码
caffe 代码可视化工具
再看看作者的改进,蓝色块表示原有的 faster rcnn,绿色的表示新增的模块!
图a
图b
- channel-wise position attention module(图a中括号对应的部分)
注意 position softmax表示对 77256 中的 7*7 部分 reshape后进行 softmax,相当于热力图 - channel-agnostic position attention module(图a中非括号对应的部分)
也相当于热力图 - class-specific attention module(图b,效果好一点)
classes softmax 相当于对 classes 进行 softmax,注意 local connected,双 fc 的连接操作如下
5 Datasets
42759 labeled instances in 5377 images,7 cell categories as follows:
- cast
- crystals(cryst)
- epithelial(epith)
- epithelial nuclei(epithn)
- erythrocyte(eryth)
- leukocyte(leuko)
- mycete
train, validation and test set in the ratio of 14:1:5.(哈哈,第一次看到这样的比例)
4256,268, 852
6 Experiments
- Resnet
learning rate 0.01, and then decreased by a factor of 10 every 20 epochs. (total 50 epochs)
weight decay of 0.0001 and a momentum of 0.9 - DenseNet
25 个 epoch,learning rate 的设置同 ResNet
weight decay of 0.001 and a momentum of 0.9
作者的分析 it is suitable to infer FPN architecture with DenseNet can finely extract the fine-grained features of categories.
baseline 如下
6.1 Training stage schedule
如上图的(a),train all 效果最好
6.2 Attention modules and pre-trained model
6.1小节(b)、(c)两行的 A、B、C 也即对应着三种 attention 的方法!
(b)pre-trained by ImageNet,backbone is ResNet-50,only C 提升了效果
(c)pre-trained by COCO,backbone is ResNet-101 效果很差,其实(b)(c)两行有两个变量,不好直接对比,但看 baseline 中 resnet-50 和 resnet-101 效果相仿,也可以推测,imagenet 的 pretrain 在作者的数据集上要优于 coco,作者做出了如下的解释
6.3 Balance between classification and bounding-box regression loss
也即 6.1 小节的(d)行
λ
\lambda
λ 只作用在了头部的分类器上,
λ
=
2
\lambda=2
λ=2 结果最好!
6.4 Model size and inference speed
6.5 Summary
attention 只是 嵌入在了 resnet
resnet 换成 densenet 效果显著提升!
最惊艳的是 eryth 的提升,不过作者的洞察力也是很独特的!观测到了 class confusion 的根源,提出了增强头部分类器和增强主干网络特征提取能力的两种方案!
7 Conclusion
作者对数据处理这一块的分析也是超级值得借鉴的,很荣幸和作者在一个实验室,且坐在我旁边,给了我很多工作上的启发,哈哈哈哈!