本文主要是介绍Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally
摘要
卷积神经网络(CNN)在生物医学图像分析中的广泛兴趣广泛传播,但其成功受到生物医学成像缺乏大量标注数据集的阻碍。标注生物医学图像不仅繁琐而且耗时,而且要求昂贵,专业化的知识和技能不容易获取。为了大大降低标注成本,本文提出了一种称为AIFT(主动,增量微调)的新颖方法,将主动学习和迁移学习自然地整合到一个框架中。 AIFT直接启动了一个预训练的CNN,从未注明的“标注”样本中寻找“有价值的”样本,并通过在每次迭代中并入新标注的样本来不间断地调整(微调)CNN,以增强CNN的性能。我们已经在三种不同的生物医学成像应用中评估了我们的方法,证明标注的成本可以减少至少一半。这种性能归功于我们的AIFT方法的高级主动和增量能力的几个优点。
1. Introduction
卷积神经网络(CNN)[14]由于大量标注数据集,如ImageNet [6]和Places [27],引起了计算机视觉革命。 IEEE TMI特刊[8]和两本即将出版的书籍[28,17]证明,在生物医学图像分析中应用CNN的强烈兴趣广泛传播,但是由于缺乏生物医学成像中这样大量的标注数据集,阻碍了其成功。标注生物医学图像不仅繁琐而且耗时,而且要求昂贵,专业化的知识和技能不容易获取。因此,我们试图回答这个关键问题:在生物医学成像中应用CNN时如何显著降低标注成本。在这样做的过程中,我们提出了一种称为AIFT(主动,增量微调)的新颖方法,将主动的学习和迁移学习自然地整合到一个框架中。我们的AIFT方法直接使用预训练的CNN从未标注的“标注”样本中寻找“显著”样本,并通过用新标注的样本逐步扩大训练数据集来不断地调整(微调)CNN。我们已经在三种不同的应用中评估了我们的方法,包括结肠镜检查框架分类,息肉检测和肺栓塞(PE)检测,证明标注成本可以减少至少一半。这个出色的表现归功于一个简单而强大的观察:为了提高CNN在生物医学成像中的表现,通常通过数据扩张为每个candidate自动生成多个patches; 从同一candidate生成的这些patches共享相同的标签,并且当前CNN在扩展到训练数据集之前自然预期具有类似的预测。 因此,他们的熵和多样性为提高当前CNN的性能的candidate的“权力”提供了有用的指标。 然而,自动数据扩张不可避免地为一些candidate产生“hard”样本,注入噪声标签; 因此,为了显著增强我们方法的鲁棒性,我们根据当前CNN的预测,仅选择每个候选的patches的一部分来计算熵和多样性。几位研究人员已经证明了使用CNN进行生物医学图像分析的实用性,但是它们只进行了一次性微调,也就是简单地对一个预先训练的CNN进行了微调,一次使用了没有主动选择过程的可用训练样本(例如, [4,19,5,2,21,7,18,24])。 据我们所知,我们提出的方法是首先将主动学习整合到微调CNN中,以使CNN更适合生物医学图像分析,目的是大幅削减标注成本。 与传统的主动学习相比,我们的AIFT方法具有以下几个优点:
1.从一个完全空白的标记数据集开始,不需要初始的种子标记样品(见Alg。1);
2.通过不断的微调,而不是反复重新训练,逐渐改善学习者(见3.1节);
3.自然地利用与每个candidate相关的patches之间的预期一致性,以选择“有价值的”标签的样本(见第3.2节);
4.自动处理嘈杂的标签,因为每个candidate中只有一部分(例如四分之一)的patches参与选择过程(见第3.3节);
5.在每个candidate中少量patches本地计算熵和分集,大大节省计算时间(见第3.3节)。
更重要的是,我们的方法有可能对生物医学成像中的计算机辅助诊断(CAD)产生重大影响,因为目前的法规要求将CAD系统部署在“封闭”环境中,其中所有CAD结果都将被检查和错误 如有放射科医师纠正; 因此,假设所有假阳性都被提供,并且提供所有假阴性,即时在线反馈,可以使CAD系统自我学习和部署后改善可能,因为我们的方法的连续微调能力。
2. Related work
2.1. Transfer learning for medical imaging
Gustavo等人[2]用新的逻辑层替换了预先训练的CNN的完全连接的层,并且仅将附加的层与标记的数据进行训练,同时保持网络的其余部分相同,为未注册的多视图乳房X线照片的分类产生有希望的结果。在[5]中,应用微调预训练的CNN来定位超声图像中的标准平面。高等[7]对所有层次的训练有素的CNN进行了微调,用于间质性肺疾病的自动分类。在[21]中,Shin等使用微调的预训练的CNN自动将医学图像映射到文档级主题,文档级子主题和句子级主题。在[18]中,使用微调预训练的CNNs自动从磁共振成像中检索丢失或嘈杂的心脏采集平面信息,并预测五个最常见的心脏视图。 Schlegl等人[19]探讨了CNN的无监督预训练,从没有标注的站点或图像类中注入信息,并且表明,与模型参数的随机初始化相比,这种跨站点预训练提高了分类精度。 Tajbakhsh等人[24]系统地研究了几种医学成像应用中迁移学习的能力。然而,他们都执行一次性微调 - 只需使用可用的训练样本简单地调整预训练的CNN一次,既不涉及主动选择过程也不涉及连续微调。
2.2. Integrating active learning with deep learning
一般主动学习与深度学习的文献丰富深入[8,28,17,20,9,10,26]。 然而,旨在将主动学习与深度学习相结合的研究是稀疏的:王和尚[25]可能是第一个将主动学习与深度学习相结合的方法,并将其应用于堆叠限制玻尔兹曼机器和堆叠自动编码器。 报道了高光谱图像分类的一个类似的想法[15]。 Stark等人 [22]应用主动学习来提高CNNs对CAPTCHA识别的表现,而Al Rahhal等 [1]利用深度学习进行主动的心电图分类。 所有这些方法与我们的AIFT方法截然不同,因为在每次迭代中,它们都从头开始重新训练学习者,同时以增量方式不断调整(微调)CNN,提供了Sec。1。
3. Proposed method
我们在生物医学成像中的计算机诊断(CAD)的背景下呈现我们的AIFT方法。 CAD系统通常具有候选发生器,其可以快速产生一组候选者,其中一些是真正的肯定,一些是假阳性。candidate生成后,任务是训练一个分类器,尽可能多地消除真假,同时保持尽可能多的真实积极性。要训练一个分类器,每个candidate都必须贴上标签。我们假设每个candidate都采用| Y |之一可能的标签。为了提高CAD系统的CNN的性能,通常通过数据扩张为每个候选者自动生成多个patches;从同一candidate生成的这些patches继承了candidate的标签。换句话说,所有标签都是在候选级别获得的。在数学上,给定一组候选,U = {C1,C2,...,Cn},其中n是候选数,并且每个候选Ci = {x1i,x2i,...,xmi}与m相关联patches,我们的AIFT算法迭代地选择一组候选标签(如图1所示)。
3.1. Continuous finetuning
一开始,标记的数据集L为空; 我们接受预先训练的CNN(例如AlexNet),并在U上运行以选择b个candidate进行标签。 新签名的candidate将被并入L,以不断地微调CNN,直到表现令人满意。 几位研究人员已经表明,微调提供了更好的性能,比从头开始训练更加强大。 从我们的实验中,我们发现,在以前的迭代中,随着扩展数据集的微调,CNN的不断微调收敛速度比反复微调原来的预训CNN要快。 我们还发现,只有新标注的数据不断微调CNN需要仔细的元参数调整。
3.2. Active candidate selection
在主动学习中,关键是制定确定candidate标注的“有价值”的标准。我们的标准是基于一个观察:从同一candidate生成的所有patches共享相同的标签;预计目前的CNN也有类似的预测。因此,他们的熵和多样性为提高当前CNN的性能的candidate的“权力”提供了有用的指标。直观地,熵捕获分类的确定性 - 更高的不确定性值表示较高程度的信息;而分集指示候选者之间的片之间的预测一致性较高的分集值表示候选者之间的片之间的预测不一致的较高程度。因此,具有较高熵和更高分化度的candidate预计将有助于提升当前CNN的业绩。正式地假设当前CNN对patchesxji的预测是pji,我们将其熵定义为:
3.3. Handling noisy labels via majority selection
自动数据增强对于提高CNN的性能至关重要,但如图1和图2(c)所示,对于某些candidate来说,不可避免地会产生“hard”样本,注入噪声标签; 因此,为了显著增强我们方法的鲁棒性,我们根据当前CNN的预测,仅选择每个候选的patches的一部分来计算熵和多样性。 特别地,对于每个候选Ci,我们首先计算其所有patches的平均概率预测:
其中m是候选Ci中的patches数,pji是patchesxji的预测概率。 如果ai> 0.5,我们选择顶部_百分比patches; 否则,底部百分比patches。 基于选定的patches,我们使用Eq。 为U中的每个候选Ci构造大小_m×_m的得分矩阵Ri。由于我们的低置信度,我们提出的多数选择方法自动排除具有噪声标签的patches。 我们应该注意,组合熵和多样性的想法是受到[3]的启发,但是有一个根本的区别,因为它们在整个未标记的数据集中计算R,时间复杂度为O(m2),这是非常计算的昂贵的,而我们计算 Ri(j,l)局部在每个候选中的选定patches上,节省计算时间与时间复杂度O(_2m2),其中_ =我们的实验中的1/4。
3.4. An illustration of prediction patterns
给定未标记的候选U = {C1,C2,…,Cn},其中Ci = {x1i,x2i,…,xmi},假设当前CNN对patchesxji的预测是pji,我们称之为pji 对于j 2 [1,m]候选Ci的预测模式。 如Tab。的第1栏所示。 1,有七种典型的预测模式:
>模式A:patches的预测主要集中在0.5,具有较高的不确定性。 最积极的学习算法[20,9]赞成这种candidate,因为它有利于减少不确定性。
>模式B:比模式A更平坦,因为patches的预测从0扩展到1,导致更高程度的不一致。 由于属于candidate的所有修补程序都是通过数据论证生成的,所以它们(至少大多数)预计会有类似的预测。 这种类型的candidate有可能为加强当前CNN的业绩作出重大贡献。
>模式C:patches的预测集中在两端,导致更高程度的多样性。 如图1所示,这种类型的候选者最有可能与patches级别的噪声标签相关联,并且在主动选择中是最不利的,因为它可能导致微调CNN的混乱。
>模式D和E:patches的预测集中在一端(即0或1),具有较高的确定性。 这一类candidate在现阶段的标注应该推迟,因为目前的CNN最有可能正确地预测这些candidate; 他们对微型当前CNN的贡献很小。 然而,这些candidate可能会演变成不同的模式,值得注意,更精细。
>模式F和G:他们在一些patches的预测中具有更高的确定性,并且与patches预测中的一些异常值相关联。 这些类型的candidate是有价值的,因为他们能够顺利地提高CNN的表现。 虽然他们可能没有作出重大贡献,但不应对CNN的表现产生重大的伤害。
4. Applications
在本节中,我们将方法应用于三种不同的应用,包括结肠镜框架分类,息肉检测和肺栓塞(PE)检测。 我们的AIFT算法是在Caffe框架[11]中实现的,基于预先训练的AlexNet模型[12]。 在下文中,我们将评估包括Diversity1 / 4(在每个候选者的1/4的片段上使用多样性),多样性(使用每个候选者的所有片段上的多样性)的AIFT(主动增量精细化) 熵1/4,熵,(熵+分集)1/4,(熵+分集),并与IFT随机(随机候选选择的增量微调)和从临时学习(AUC)(ROC曲线下的面积)。
4.1. Colonoscopy Frame Classification
结肠镜检查程序的客观质量评估对于确保高质量的结肠镜检查至关重要。 结肠镜检查视频通常包含大量非信息图像,其结肠可视化较差,不适用于检查结肠或执行治疗行为。 视频中非信息图像的分数越大,结肠可视化的质量越低,因此结肠镜检查的质量越低。 因此,测量结肠镜检查程序的质量的一种方法是监测拍摄图像的质量。 在技术上,结肠镜检查的图像质量评估可以被形成为图像分类任务,其中输入图像被标记为信息性或非信息性。对于实验,从6个完整的结肠镜检查视频中选择4,000个结肠镜检查框架。 然后训练有素的专家手动将收集的图像标记为信息性或非信息性。 胃肠病学家进一步审查了标记的图像进行修正。 视频级别的标记帧分为训练和测试集,每组包含大约2000个结肠镜检查帧。 对于数据扩张,我们从每个帧中提取了21个patches。在所有三个应用程序中,我们的AIFT从空的训练数据集开始,直接使用ImageNet上预先训练的AlexNet。图3显示在第一步(查询2个标签),IFT随机产生最佳性能。有两个可能的原因:(1)随机选择给出具有与测试数据集兼容的正/负比率的样本; (2)预先训练的AlexNet对我们的数据集进行了较差的预测,因为它被自然图像而不是生物医学图像训练。其输出概率主要是混淆甚至不正确,导致选择分数不佳。然而,AIFT多样性1/4,熵,熵1/4在第一次微调之后快速超过IFT随机,因为它们选择重要的微调样本,使得训练过程比从剩余的训练数据集中随机选择更有效。只有4个标签查询的AIFT熵和分集1/4可以实现具有18个标签查询的IFT随机性能,以及22个随机选择的帧的“从Scratch学习”的性能。因此,IFT Random可以节省75%以上的贴标费用,从Scratch学习中可以节省80%的标签成本。AIFT多样性的工作比IFT Random更差,因为通过数据扩张产生的噪音标签。 AIFT多样性强烈地支持预测模式类似于模式C的帧(见表1)。 自然地,它很可能会选择一个模糊的框架,如图1和图2(c),因为它的patches的预测是高度多样化的。 从同一帧生成的所有patches都将继承与该帧相同的标签; 因此,在patches级别,标签对于不明确的帧是非常嘈杂的。 AIFT熵,Entropy1 / 4和Diversity1 / 4可以自动排除嘈杂的标签,自然会产生出色的表现。 鉴于AIFT熵,Entropy1 / 4和Diversity1 / 4的出色表现,可以考虑组合熵和多样性,但不幸的是,组合并不总是提供更好的性能,因为在熵和多样性之间找到一个很好的平衡是棘手的,如 我们的示例分析在Tab。 1和补充材料。
4.2. Polyp Detection
结肠镜检查是结肠癌筛查和预防的首选技术。 结肠镜检查的目的是找到并去除结肠癌的结肠息肉前体,如图4所示。对于息肉检测,我们的数据库包含38例不同患者的38例短结肠镜检查视频,并将其分为训练数据集(21 视频; 11个息肉和10个无息肉)和测试数据集(17个视频; 8个视频与息肉和9个视频没有息肉)。 训练数据集和患者级别的测试数据集之间没有重叠。 数据集中的每个结肠镜框都带有二进制地面真实图像。 分别从训练数据集和测试数据集生成了16300名candidate和11950名candidate。
在具有给定边界框的每个息肉候选位置处,我们以因子f 2 {1.0,1.2,1.5}进行数据扩张。 在每个尺度上,我们在candidate在垂直和水平方向翻译10%的缩放边界框之后提取patches。 我们通过镜像和翻转进一步旋转每个结果片8次。 由数据扩张产生的patches属于同一候选者。
图5显示,AIFT(熵+分集)1/4和Diversity1 / 4达到了610个标签查询的峰值性能,而IFT随机需要5711个查询,表明AIFT可以减少IFT随机所需的标注成本的近90% 。 AIFT(熵+分集)1/4和Diversity1 / 4的快速收敛归因于多数选择方法,可以有效地选择信息和代表性候选,同时排除具有噪声标签的候选者。当查询次数约为5000时,AIFT Entropy1 / 4达到其最佳性能。原因是熵只能衡量信息,所以查询样本很可能相似。它需要更多的查询来选择大多数信息性candidate。由于嘈杂的标签,AIFT多样性和(熵+多样性)不能与多数选择的同行一样好。即使使用所有训练样本,与Scratch一致也不能实现微调的性能,这与[24]是一致的。
4.3. Pulmonary Embolism Detection
我们的实验是基于由[16]中提出的方法产生的PE候选者和如图7所示的[23]中引入的图像表示。我们采用2通道表示,因为它一致地捕获PE的横截面和船舶的纵向视图,实现更高的分类准确性和加速CNN训练过程。为了将RGB样贴片馈送到CNN中,通过复制第二个通道将2通道贴片转换为3通道RGB样贴片。对于实验,我们使用由121个CTPA数据集组成的数据库,总数为326个PE。滑行加速算法[16]被应用于获得粗略的PE候选。产生了6255名candidate,其中5568人为假阳性,687人为真阳性。为了训练CNN,我们提取3种不同物理尺寸的贴片,即10mm,15mm和20mm宽。然后,我们沿着受影响的船只的方向翻译每个候选位置3次,高达每个patches物理大小的20%。然后,通过围绕血管轴线旋转纵向和横截面的血管平面来进行训练数据集的数据扩张,从而为每个比例和平移产生5个额外的变化。最后,将生成一个分层训练数据集,其中包含434个真正的正面临床candidate和3406个假阳性PEcandidate,用于训练和逐步微调CNN和一个具有253个真正的正面临床candidate和2162个假阳性PEcandidate的测试数据集。 通过在数据扩张之后对在PE候选中的patches生成的概率预测进行平均来计算总体PE概率。
图8比较了测试数据集上的8种方法。 2000查询后,每种方法的性能饱和。 AIFT(熵+多样性)1/4和Diversity1 / 4在8种方法中收敛最快,产生最佳的整体性能,归功于本工作提出的多数选择方法。 AIFT(熵+分集)1/4和Diversity1 / 4只需要1000个标签即可实现从AlexNet(IFT Random)中随机选择2200个标签的性能。 请注意,即使AIFT多样性达到峰值性能,因为PE数据集注入了一些嘈杂的标签,所以约3100个样品被查询。 由于熵有利于不确定的模糊样本,所以AIFT Entropy1 / 4和熵都在开始时表现不佳。 IFT随机在前几个步骤中胜出,如第二节所述。 4.1,但总体增长缓慢。 基于此分析,我们的方法可以减少标注成本至少一半。
4.4. Observations on selected patterns
我们仔细监测了主动选择过程,并检查了选定的candidate,例如,我们在补充材料中将结肠镜检查框架分类中的六种AIFT方法选择的前10名candidate包括在迭代3中(见图10)。 从这个过程中,我们观察到以下内容:
> 模式A和B在AIFT的早期阶段占主导地位,因为CNN没有被适当地调整到目标域。
> 模式C,D和E在AIFT的后期主导,因为CNN已经在目标数据集上进行了很大程度的调整。
> 多数选择 - AIFT Entropy1 / 4,Diversity1 / 4或(熵+分集)1/4有效排除模式C,D和E,而AIFT熵(不具有多数选择)可以处理模式C, D和E相当好。
>模式B,F,G一般对提升当前CNN的表现做出了很大的贡献。
> AIFT熵和熵1/4有利于模式A,因为它具有更高的不确定度,如图10所示。
>AIFT分集1/4优先选择模式B,而AIFT分集则更喜欢模式C(图10)。 这就是为什么AIFT多样性可能会导致CNN性能突然的干扰,为什么AIFT Diversity1 / 4应该是一般的首选。
> 组合熵和多样性是非常可取的,但它们之间的平衡并不是微不足道的,因为它需要特定于应用的_1和_2(参见等式3),需要进一步的研究。
5. Conclusion, discussion and future work
我们开发了一种主动,增量的微调方法,将主动学习与迁移学习相结合,提供了几个优点:它从一个完全空白的标签数据集开始,并通过持续微调逐步提高CNN的性能,主动选择最有信息, 代表性样品。 它还可以通过多数选择自动处理噪声标签,并且在每个候选中的少量patches上本地计算熵和分集,大大节省了计算时间。 我们已经在三种不同的生物医学成像应用中评估了我们的方法,证明标注的成本可以减少至少一半。 这种性能归功于我们的AIFT方法的高级主动和增量功能。我们基于我们对AlexNet架构的实验,因为Caffe图书馆中提供了一个预先训练的AlexNet模型,其架构在深度上取得了很好的平衡:它足够深入,可以调查AIFT对预训练性能的影响 CNNs也很浅,我们可以快速进行实验。 或者,可以使用诸如VGG,GoogleNet和残留网络之类的更深层的体系结构,并且对于具有挑战性的计算机视觉任务而言显示出相对较高的性能。 然而,这项工作的目的不是为了实现不同生物医学图像任务的最高性能,而是回答关键问题:如何在将生物医学成像应用CNN时大幅降低标注成本。 补充材料中报告了结构和学习参数。在现实世界中,数据集通常是不平衡的。 为了达到良好的分类性能,两类样品应用于训练。 图9显示了在结肠镜检查质量应用中的每次迭代中通过六种方法选择的样品的阳性/阴性标签比。 对于随机选择,该比率与整个训练数据集几乎相同,因此IFT Random在冷启动时具有稳定的性能。 AIFT多样性1/4,Entropy1 / 4和熵似乎能够自动保持数据集平衡,这一新观察值得在未来得到更多的调查。我们选择在候选级别选择,分类和标记样品。 标签在患者层面肯定会降低标注成本,但会引入更严重的标签噪音; patches级别的标签将会处理标签噪音,但对标注专家施加了更重的负担。 我们相信,candidate的标签在我们的三个应用程序中提供了合理的平衡。最后,在本文中,我们只用熵和多样性作为标准。 在理论上,可以设计大量的主动选择方法,但是我们发现,第二节总结了七个基本模式。3.4。 因此,我们可以方便地重点比较七种模式,而不是多种方法。 可以使用多种方法来选择特定模式:例如,熵,高斯距离和标准偏差将寻求模式A,而分集,方差和散度寻找模式C.我们不会期望内部方法之间的显著性能差异 每个组,根据现实世界的临床应用,产生六种主要的选择方法进行深度比较。
这篇关于Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!