前言
医学领域的数据集具有标注样本少、图像非自然的特点,transformer已经证明了在自然图像领域下的成功,而能否应用于医学领域等少量标注样本的非自然图像领域呢?
本文研究比较了CNN和ViTs在三种不同初始化策略下在医学图像任务中的表现,研究了自监督预训练对医学图像领域的影响,并得出了三个结论。
本文来自公众号CV技术指南的论文分享系列
关注公众号CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。
代码:https://github.com/ChrisMats/medical_transformers
Background
目前已经提出了许多使transformers适应视觉任务的方法。在自然图像领域,transformers已被证明在标准视觉任务(如ImageNet分类、以及目标检测和语义分割)上优于CNN。与卷积相比,transformers的中心注意力机制提供了几个关键的优势:(1)它捕获远程关系,(2)它具有通过动态计算的self-attention权重(捕获Tokens之间的关系)进行自适应建模的能力,(3)它提供了一种内置的突显性,使人们能够洞察模型关注的是什么。
然而,有证据表明,vision transformer需要非常大的数据集才能超越CNN中,只有当谷歌的3亿张私人图像数据集JFT-300M用于预训练时,ViT的好处才变得明显起来。他们对这种规模的数据的依赖是transformers广泛应用的障碍。这个问题在医学成像领域尤其严重,那里的数据集较小,而且往往伴随着不太可靠的标签。
CNN和ViTs一样,在数据稀缺时性能较差。标准的解决方案是使用迁移学习:通常,模型在较大的数据集(如ImageNet)上预先训练,然后使用较小的、专门的数据集针对特定任务进行微调。在ImageNet上预先训练的CNN通常在最终性能和减少的训练时间方面都优于那些在医学领域从头开始训练的CNN。
自监督是一种处理未标记数据的学习方法,最近得到了广泛的关注。研究表明,在微调前对目标域中的CNN进行自监督预训练可以提高性能。ImageNet的初始化有助于自监督CNN更快地收敛,通常具有更好的预测性能。
这些处理医学图像领域缺乏数据的技术已被证明对CNN有效,但尚不清楚vision transformer是否也有类似的好处。一些研究表明,使用ImageNet对CNN进行医学图像分析的预训练并不依赖于特征复用(feature reuse)(遵循传统观点),而是由于更好的初始化和权重调整。这让人质疑transformers是否能从这些技术中获益。如果他们这样做了,几乎没有什么能阻止ViTs成为医学图像的主导架构。
在这项工作中,论文探索ViTs是否可以很容易地替代CNN用于医学成像任务,以及这样做是否有优势。论文考虑一个典型从业者的用例,它配备了有限的计算预算和访问传统医学数据集的权限,着眼于“即插即用(plug-and-play)”的解决方案。为此,论文在三个主流的公开数据集上进行了实验。
通过这些实验,得出以下结论:
-
在ImageNet上预先训练的ViTs在数据有限的情况下表现出与CNN相当的性能。
-
在应用标准训练方案和设置时,迁移学习有利于ViTs。
-
当自监督的预训之后是监督的微调时,ViTs的表现要好于CNN。
这些发现表明,医学图像分析可以从CNN无缝过渡到ViTs,同时获得更好的可解释性特性。
Methods
论文调查的主要问题是ViTs是否可以作为CNN的即插即用替代品用于医疗诊断任务。为此,进行了一系列实验,以比较ViTs和CNN在相似条件下的差异,将超参数调整保持在最低限度。为了确保比较的公正性和可解释性,选择了具有代表性的ResNet50,以及带有16x16 Tokens的Deit-S作为ViT。之所以选择这些型号,是因为它们在参数数量、内存需求和计算方面具有可比性。
如上所述,当数据不太丰富时,CNN依赖初始化策略来提高性能,医学图像就是这种情况。标准的方法是使用迁移学习-用ImageNet上预训练的权重来初始化模型,并在目标域上微调。
因此,论文考虑了三种初始化策略:(1)随机初始化权重,(2)使用监督ImageNet预训练权值的迁移学习,(3)在目标数据集上的自监督预训练,在初始化之后,如(2)所示。将这些策略应用于三个标准医学成像数据集,以覆盖不同的目标域:
APTOS 2019-在此数据集中,任务是将糖尿病视网膜病变图像分类为5类疾病严重程度。Aptos 2019包含3662张高分辨率视网膜图像。
ISIC 2019-任务是将25,333张皮肤镜图像从九种不同的皮肤损伤诊断类别中分类。
CBIS-DDSM-此数据集包含10,239张乳房X光照片,任务是检测乳房X光照片中是否存在肿块。
Experiments
CNN与ViTs在不同初始化策略下的比较
1. 随机初始化的transformer有用吗?
首先将Deit-S与具有随机初始化权重的ResNet50进行比较(Kaiming初始化)。上表中的结果表明,在这种设置下,CNN在所有方面都远远超过ViTs。这些结果与之前在自然图像领域的观察结果一致,在自然图像领域,在有限数据上训练的ViTs表现优于类似大小的CNN,