采用GAN的肺部疾病诊断模型黑盒可迁移性对抗攻击方法
2023-10-29王小银王丹孙家泽杨宜康
王小银,王丹,孙家泽,杨宜康
(1. 西安邮电大学计算机学院,710121,西安; 2. 西安邮电大学陕西省网络数据分析与智能处理重点实验室,710121,西安; 3. 西安交通大学自动化科学与工程学院,710121,西安)
受气候环境和生活习惯等因素影响,全球肺部疾病的发病率在逐年攀升,并且随着大流行疾病新冠肺炎的爆发,严重威胁了全球近80亿人的生命安全,因此准确识别肺部疾病极为重要。在传统医疗诊断中,医生通过对患者的表征及其相关的医学影像进行分析,但容易受到人为及环境因素的影响,因此仅通过人工技术难以精准快速地诊断病情。随着人工智能在医学领域的发展,基于深度学习的计算机辅助诊断技术在医疗诊断方面表现出了明显的优势和强大的生命力[1],医生可以快速地获得计算机的辅助诊断结果作为参考,有利于更准确地做出最终的诊断与决策[2]。
深度神经网络(deep neural network,DNN)在医学图像分类中表现出了令人瞩目的性能,提高了对疾病的识别精度和工作效率。但是,由于其本身的不可解释性和脆弱性,被研究人员证实容易受到对抗攻击的影响,进而导致网络的安全性和鲁棒性受到威胁,因此其在疾病诊断中的实际应用仍值得商议[3]。
2013年,Szegedy等[4]证明了在原样本上添加轻微扰动会使模型以高置信度被错误分类,因此引发了人们对DNN泛化能力的质疑,限制了深度学习在关键安全环境中的应用[5]。目前,研究人员已经提出了一系列不同的方法来进行对抗攻击。Goodfellow等[6]提出了快速梯度符号法(fast gradient sign method,FGSM),该方法在梯度变化的最大方向生成对抗扰动并添加到原图像中,使模型被错误分类。在FGSM基础上衍生了投影梯度下降法(project gradient descent,PGD)[7],该算法目前是公认的最强白盒攻击方法。此外,Carlini等[8]提出了一种基于优化的攻击方法(Carlini&Wagner,C&W),利用不同范数来限制扰动无法被察觉。Xiao等[9]受生成对抗网络(generative adversarial networks,GAN)的启发,利用生成模型提出了生成对抗样本网络(AdvGAN),该方法生成的对抗样本不仅更容易混淆目标网络,人眼看起来也更加逼真。与基于梯度和优化的方法相比,生成模型减少了对抗样本的生成时间,并且也不需要获取更多的背景知识,适合攻击难度较高的半白盒和黑盒攻击。然而,现有的生成方法在医学图像上具有两个明显的缺点:①与自然图像不同,医学图像具有复杂的生物纹理从而导致对抗扰动的敏感区域更多,因此仅使用原始的GAN网络无法提取图像中更深层次的特征信息,不能完全捕捉肺部图像特征的语义信息,生成能力受限;②大多数攻击算法只能在白盒场景中执行有效攻击,并且需要对模型的体系结构和参数进行无限次访问,在设置更实际的黑盒对抗场景时无法获得高攻击成功率[10]。
为了解决上述问题,本文提出了一种基于GAN的黑盒可迁移性对抗攻击方法,以有效地生成对抗样本。针对肺部影像构建深度学习目标模型,利用生成对抗网络生成对抗样本,并运用无数据黑盒对抗攻击框架实现可迁移性对抗攻击,获得高黑盒攻击成功率,提高对抗样本的可迁移性和攻击性能。与其他黑盒攻击场景下基于GAN的对抗方法进行实验对比,结果表明本文方法生成的对抗样本攻击效果更好,生成的图像也更接近于真实图像。
1 GAN网络对抗攻击
1.1 生成对抗网络
GAN是一种有效的深度生成模型,由生成器G和判别器D组成,如图1所示。
图1 GAN网络架构Fig.1 The network architecture diagram of GAN
生成器G用于学习真实图像的数据分布x~p(x),合成以假乱真的图像G(z)。判别器D负责判断输入图像的真假,为生成器提供指导信息。GAN损失表示为
Ez~p(z)[log(1-D(G(z)))]
(1)
在训练过程中,生成器G和判别器D通过交替优化的方式互相学习,以提高自身的生成能力和判别能力。直至判别器不足以区分真实图像和伪造图像,即生成器能够生成最为逼真的假样本时,博弈双方达到纳什平衡状态。
1.2 对抗攻击
尽管DNN诊断模型具有高性能,但研究发现其容易受到对抗攻击的影响。根据攻击场景,将对抗攻击分为白盒攻击和黑盒攻击。在白盒场景中执行攻击,可以访问目标模型的网络结构、训练参数等。但是,由于隐私和安全性,这种攻击场景在现实中通常不可用[11]。在执行更为实际的黑盒攻击时,既可以通过查询目标模型直接实施攻击,也可以利用对抗样本的可迁移性训练替代模型生成对抗样本来欺骗目标模型。由于无法直接获取目标模型的训练数据,Truong等[12]提出了在无数据黑盒场景中训练替代模型:生成模型负责合成输入图像,并在合成图像上训练替代模型来模仿目标模型。在训练过程中,替代模型和生成模型分别尝试最小化和最大化替代模型和目标模型之间的匹配率,直至替代模型收敛。然而,准确量化替代模型和生成模型之间的分歧非常困难,而且不稳定的训练过程会导致模型难以收敛甚至崩溃,继而无法在实践中达到理想的纳什均衡点。
因此,本文利用一个更优的黑盒攻击框架:改变生成模型和替代模型之间的博弈,让双方不用在最小化-最大化中直接竞争,使生成模型和替代模型具有相对独立的优化过程,并且通过平衡数据分布和促进数据多样性来缓解替代模型在训练过程中出现的模型崩溃问题,使替代模型可以更快更稳定地收敛到目标模型,实现可迁移性对抗攻击。
2 肺部疾病诊断模型黑盒对抗攻击
本文提出了一种基于GAN的肺部疾病诊断模型黑盒可迁移性对抗攻击方法BA-GAN。构建肺部疾病诊断目标模型,利用无数据黑盒对抗攻击框架(data-free black-box adversarial attack, DBAA)获得替代模型,实现黑盒可迁移性对抗攻击。利用AI-GAN(attack-inspired GAN)方法生成对抗样本,其中:使用残差神经网络(ResNet)作为生成器的基本骨架,并设计带有扩张卷积的残差块[13]和轻量高效的金字塔分割注意力机制(pyramid split attention,PSA)[14]对生成器进行改进优化,以提高网络的特征表达能力;设置带有辅助分类器的判别器对生成的样本进行分类,并且添加攻击者对判别器实施对抗训练,增强对抗样本的攻击能力和稳定GAN的训练。整体对抗攻击流程如图2所示。
图2 肺部疾病诊断模型对抗攻击流程Fig.2 The flow chart of adversarial attack
2.1 黑盒对抗攻击框架
构建无数据黑盒攻击框架,具体包括数据合成和替代模型蒸馏两个阶段。在对抗攻击时使用模型蒸馏技术,对未知的诊断模型进行参数学习和模型复制,实现对未知网络模型的高可靠攻击,增加对攻击对象的迁移性与通用性[15]。无数据黑盒对抗攻击框架如图3所示。
在第一阶段,生成器G合成分布接近于目标训练所需的数据X。为了缓解替代模型在训练过程中容易崩溃的问题以及提高替代模型的准确率,引入最大化信息熵和随机标签平滑策略,生成损失表示为
(2)
LG=Lce+αLH
(3)
在第二阶段,替代模型用合成的数据进行训练,从而有效地模仿目标模型。对替代模型和目标模型采用蒸馏技术,蒸馏损失表示为
Ld=CE(T(X),S(X))
(4)
式中:T(X)表示目标模型的输出;S(X)表示蒸馏替代模型的输出。
图3 无数据黑盒对抗攻击框架Fig.3 Data-free black box adversarial attack framework
为了获得高攻击成功率,使替代模型和目标模型具有高度一致的决策边界来促进替代模型的训练,需要在蒸馏过程中对两种类型数据多加关注[16]。第一类是目标模型和替代模型边界之间具有决策分歧的数据,给予这些数据更多权重有助于弥合两个决策边界之间的差距,由此引入边界支持损失Lb
(5)
另一类是目标模型和替代模型决策边界更加接近的数据,对这类数据给予更多权重可确保在替代模型上对抗样本可以继续朝着目标模型的方向移动,由此引入对抗样本支持损失Lv
(6)
在模型蒸馏过程中要使得目标函数最小化来确保替代模型的输出结果逐渐逼近于目标模型,用β1和β2控制损失占比,目标函数表示为
L=Ld+β1Lb+β2Lv
(7)
通过优化合成图像的蒸馏目标,得到特征非常接近黑盒目标模型的替代模型,然后对经过蒸馏提炼的网络使用白盒攻击的方式进行攻击,生成攻击性能最优的对抗样本。相比于基于查询的黑盒攻击方式,该方法能在查询预算有限的情况下显著提高黑盒攻击方式下的对抗成功率,并且利用替代模型制作对抗样本消耗的计算资源更少,在实践中更为现实。
2.2 基于AI-GAN的对抗样本生成方法
构造基于GAN的对抗样本生成模型,由生成器G、双头判别器D、攻击者、辅助分类器和攻击模型组成。采用AI-GAN方法生成对抗样本的整体架构,如图4所示。
图4 AI-GAN整体架构Fig.4 The overall architecture diagram of AI-GAN
生成器G和判别器D均以端到端的方式进行训练。生成器G将原始肺部图像x和目标类别t作为输入以生成对抗扰动G(x,t),叠加到原始图像x上获得对抗样本Xpert,并在L2范数的约束下尽可能减小扰动,从而保证生成图像的真实性。为了增强对抗样本的攻击能力,添加了攻击者进行对抗训练。在判别器中设置了辅助分类器来提高攻击效率,因此判别器既可以区分图像的真伪性,也可以对样本进行正确分类。一旦GAN网络训练结束后,就可以设置不同的目标类别对模型执行半白盒和黑盒攻击,并且能在保持图像质量的前提下显著提高对抗样本的攻击性能。
2.2.1 判别器网络结构
基于GAN的生成方法不能像基于梯度的方法一样直接在分类决策边界上运行,并且随着图像大小的增加,攻击性能会急剧下降,这是由于分类空间和生成空间存在的潜在差异引起的。因此,本文的判别器采用AC-GAN的判别器[17],在原始判别器中引入了分类器来关联生成器,将生成器中的高级特征空间与分类器的分类特征空间对齐,此时生成空间中的扰动可以映射到原始图像的分类空间以保证对抗攻击发生在模型的决策边界上,提高攻击效率。
将攻击者添加到训练过程中,增强了判别器的健壮性和鲁棒性,从而有助于稳定和加速整个训练。最终,判别器的损失函数由3部分组成:用于区分真实/扰动图像产生的损失LS,攻击者和生成器生成的对抗样本产生的分类损失La和Lg,分别定义为
LS=E[logP(Xreal)]+E[logP(Xpert)]
(8)
La=E[logP(C=y|Xadv)]
(9)
Lg=E[logP(C=y|Xpert)]
(10)
式中y代表真实的标签。最大化损失函数Ls+La+Lg促使生成图像无限逼近于真实图像,从而保证对抗样本的质量。
2.2.2 生成器网络结构
生成器采用ResNet-50作为基本模型,利用编码-解码结构进行特征提取,并且设计基于扩张卷积的残差块和金字塔分割注意力机制以提高特征表达能力,在解决深度神经网络退化问题时还能有效地增大卷积核的感受野。在医学图像中,由于病变区域或模型感知的潜在疾病表达区域改变在攻击中起决定性作用,所以将针对自然图像的攻击方法应用到医学图像特征中缺乏特异性,因此引入金字塔分割注意力机制,使扰动更多地集中发生在病变区域,生成有针对性的对抗扰动。生成器和判别器的网络结构如图5所示。
生成器的损失函数由攻击目标模型的交叉熵损失Lt和判别损失LD组成,定义为
Lt=E[logP(C=t|Xpert)]
(11)
LD=E[logP(C=t|Xpert)]
(12)
式中t是目标攻击的类别。最大化损失函数Lt+LD-LS使对抗样本在攻击过程中的结果更接近于期望值。
在原始图像输入和生成器输出之间引入金字塔分割注意力机制,该注意力模块能够充分提取多尺度特征图的空间信息,实现跨维度通道的注意力特征交互。PSA模块主要通过4个步骤实现,如图6所示。
图5 生成器和判别器网络结构Fig.5 The network structure diagram of generator and discriminator
图6 金字塔分割注意力机制Fig.6 The pyramid split attention mechanism
(1)利用SPC模块将通道切分为S组,然后针对每个通道特征图上的空间信息进行多尺度特征提取,获得多尺度特征图
F=Cat( [F0,F1,…,FS-1])
(13)
(2)采用SEWeight模块提取不同尺度特征图的通道注意力[18],得到每个尺度上的通道注意力向量
Zi=SEWeight(Fi),i=0,1,2,…,S-1
(14)
为了不破坏原始通道注意力向量的跨维度融合,以串联的方式获得整个多尺度通道注意力向量
Z=Z0⊕Z1⊕…⊕ZS-1
(15)
(3)使用Softmax函数对多尺度通道注意力向量进行特征重新标定,得到新的多尺度通道交互注意力权重
(16)
(4)对重新校准的权重和相应的特征图按像素进行点乘操作,输出一个多尺度特征信息加权之后的特征图
O=Cat( [Y0,Y1,…,YS-1])
(17)
式中Yi=tiFi,Yi的多尺度信息表示能力更加丰富。
使用PSA模块替换ResNet-50残差块中的3×3卷积,从而获得高效的金字塔分割注意模块(EPSA)。EPSA可以提高模型在更细粒度上的多尺度特征表示能力,捕捉远程通道之间的相互依赖关系,提升网络性能。
3 实验结果与分析
在黑盒场景设置下,将本文方法BA-GAN与其他4种基于GAN的对抗方法在肺部疾病诊断模型上的攻击效果进行比较,通过对抗攻击成功率、可迁移性以及样本生成质量指标对攻击性能进行评估。设置消融实验来验证生成模型中各模块的必要性和有效性。
3.1 数据集
使用新冠肺炎数据集[19]和Chest X-ray14数据集,图像均是从公开可用的数据集和已发表的文章中收集的,Chest X-ray14数据集中包含14种病理:肺不张、心脏肥大、渗出、浸润、肿块、肺结节、普通肺炎、气胸、肺实变、水肿、肺气肿、纤维变性、胸膜增厚和肺疝。
3.2 构建肺部疾病诊断目标模型
对新冠肺炎数据集和Chest X-ray14数据集按照7∶1∶2的比例划分为训练集、验证集和测试集。为充分解决训练数据的不均衡问题,使用随机翻转、平移以及不同缩放比例进行不同程度的数据增广,经过数据增广后各单类疾病基本到达平衡。
构建肺部疾病诊断目标模型CheXNet,以DenseNet169网络为基本骨架,利用3×3小卷积替换7×7大卷积减少模型参数量,并通过密集连接充分提取肺部图像中的纹理边缘信息,将全连接层的输出维度修改为15,使用Sigmoid非线性激活函数实现对模型最终的分类输出,完成肺部X-Ray图像的多种疾病智能诊断。改进CheXNet模型架构如图7所示。
图7 改进CheXNet模型架构Fig.7 The model architecture of improved CheXNet
模型在训练时,将图像统一采样为224×224的分辨率,设置Batch_size为32,并根据ImageNet数据集上预训练的权重初始化模型,采用Momentum和SGD算法进行优化迭代,初始学习率为10-5,每次验证损失在趋于稳定一个周期后,学习率衰减为原来的1/10,直至目标模型达到收敛状态后保存目标模型。
肺部疾病目标模型的诊断正确率如表1所示。可以看出,改进CheXNet模型在各种疾病上的诊断准确度明显超过了对比模型,能实现对多种肺部疾病的精准诊断,可以作为下一阶段对抗攻击的目标模型。
表1 肺部疾病目标模型的诊断正确率
3.3 肺部疾病诊断模型对抗攻击
3.3.1 对比实验及结果分析
使用改进CheXNet模型作为目标模型,训练DenseNet121网络作为替代模型,使用CycleGAN的生成器模型合成数据[23]。为了对比DBAA在黑盒攻击场景下的效果,与3种先进的黑盒攻击方法JPBA[24]、DaST[25]和DFME进行比较,并设置无目标对抗攻击和有针对性的目标攻击两种方式,结果如表2所示。可以看出:在相同的对抗样本生成方法下,本文提出的黑盒对抗攻击框架DBAA的平均对抗攻击成功率高于其他3种黑盒攻击方法;在相同的黑盒攻击方式下,本文提出的对抗样本生成方法AI-GAN的对抗攻击成功率高于其他4种基于GAN的对抗样本生成方法。
表2 5种对抗方法的无目标和目标平均对抗攻击成功率
表3展示了常见的肺部疾病在BA-GAN方法下的黑盒攻击成功率。可以看出,本文对抗攻击方法BA-GAN能显著地提高黑盒攻击方式下的对抗成功率,能有效地欺骗肺部疾病诊断模型进而产生错误的诊断结果。
表3 常见肺部疾病在BA-GAN方法下的对抗攻击成功率
BA-GAN不仅增强了对抗攻击性能,也提高了对抗样本的可迁移性。可迁移性是衡量替代模型生成的对抗样本迁移到未知内部信息的黑盒目标模型上的能力。表4展示了黑盒攻击场景下4种基于GAN的攻击方法以及BA-GAN生成的对抗样本的非目标迁移攻击成功率和目标迁移攻击成功率。可以看出,BA-GAN生成的对抗样本具有一定的迁移能力,可以显著转移到其他未知的目标模型上,即生成的对抗样本能以黑盒形式攻击其他未知的网络模型并取得高攻击成功率。
表4 对抗样本的可迁移性
AdvGAN、AdvGAN++、Natural-GAN、Rob-GAN和BA-GAN的对抗攻击效果对比如图8所示。可以看出,随着迭代轮数的增加,BA-GAN攻击模型的收敛速度更快,且设置在黑盒场景DBAA下的无目标对抗攻击对抗成功率达到了79.34%,优于其他4种基于GAN的对抗攻击方法,因此BA-GAN的对抗攻击效果更佳。
图8 5种方法对抗攻击效果对比Fig.8 The comparison diagram of adversarial attack
图9可视化了原始肺部图像、不同方法生成的对抗样本以及改变的像素点,使用红色标注与原图相比发生改变的像素点,用绿色标注未改变的像素点。计算结果显示,AdvGAN、AdvGAN++、Natural-GAN、Rob-GAN和BA-GAN生成的对抗样本与原图相比像素数改变了55.01%、49.88%、35.69%、42.72%和25.65%。由实验结果可知,本文BA-GAN方法能以更少地改变攻击目标中的像素来达到成功攻击的目的,并且生成的对抗样本更真实自然。
图9 5种方法对抗样本可视化对比Fig.9 Visualization of adversarial samples
为了评估生成的对抗样本图像质量,使用FID(Frechet inception distance score)分数[26]、结构相似度(structural similarity, SSIM)、L2范数以及峰值信噪比(peak signal to noise ratio, PSNR)对上述5种对抗攻击方法进行实验对比。
FID分数是一种评估生成图像质量的指标,用来计算原始图像和生成图像之间的相似度。在无目标攻击任务下,5种对抗方法的FID分数如图10所示。可以看出,BA-GAN的FID分数中位数最小、上四分位点和下四分位点相比于其他4种方法也较小,其次是Natural-GAN,然后是Rob-GAN、AdvGAN++和AdvGAN。根据小提琴图的概率密度和分布状态可知,该方法生成的对抗样本与原始图像计算的FID分数值最小,表明生成的对抗样本更接近于原始图像,具有更清晰的纹理细节,人眼看起来更加自然。
图10 对抗攻击方法的FID分数对比Fig.10 FID scores comparison diagram of adversarial methods
结构相似度是一种从亮度、结构和对比度3个方面综合评价图像的指标,5种对抗方法的结构相似度指数如图11所示。可以看出,BA-GAN和Natural-GAN的结构相似度随着迭代轮数的增加显著优于其他方法,比只添加了攻击者的Rob-GAN、使用原始GAN网络的AdvGAN和AdvGAN++方法在生成方面能力更强,表明通过优化生成器的网络结构,可以进一步提高网络性能。
图11 对抗攻击方法的结构相似度对比Fig.11 SSIM comparison diagram of adversarial methods
L2范数是为了提高模型的抗过拟合能力而被加入到损失函数中的扰动约束,能定量判断攻击结果是否符合视觉的感知判断。5种对抗方法的L2范数变化趋势如图12所示。可以看出,在攻击程度趋于收敛时,对抗扰动幅度也在减小。BA-GAN方法计算出的扰动量明显小于其他4方法,生成的对抗样本与原始图像更加接近,质量更高,对抗攻击效果也更加可信。
图12 对抗攻击方法的L2约束对比Fig.12 L2-norms comparison diagram of adversarial methods
峰值信噪比是一种基于误差敏感的图像质量评价指标,图13展示了BA-GAN与其他4种对抗攻击方法的峰值信噪比。可以看出,Natural-GAN和BA-GAN的峰值信噪比高于其他3种方法,说明通过修改生成器的结构,充分提取图像空间中的特征关系可以很好地提高GAN网络的性能,生成的对抗样本与原始图像的特征分布更加接近,视觉效果更好。
图13 对抗攻击方法的峰值信噪指数对比Fig.13 PSNR comparison diagram of adversarial methods
3.3.2 消融实验及结果分析
为了验证本文BA-GAN的有效性,需要进一步分析对抗样本生成模型中关键模块对实验结果的影响。为此,设计相关的消融实验,主要探究在BA-GAN上移除扩张卷积的残差块(DR)、金字塔分割注意力机制(PSA)、AC-GAN判别器(AC)和PGD攻击者(ATT)对对抗样本生成的影响,最后根据实验结果分析各模块的重要性。
为了确保验证的合理性,实验中用到的模型采用完全相同的训练参数,并且都设置在黑盒攻击场景下。针对目标攻击和无目标攻击两种方式,分别从对抗攻击成功率和对抗样本添加的平均扰动量来验证对抗样本生成模型中各个模块的必要性,实验结果如表5所示。
由表5可知,在移除扩张卷积的残差块和金字塔注意力机制后,攻击成功率明显下降,扰动也显著增加,说明在生成器中引入扩张卷积的残差块能在特征提取时增大感受野和提取多尺度上下文信息,比使用普通卷积的性能更好。引入的金字塔分割注意力机制能在多尺度通道注意力间建立一种长距离的特征依赖关系,从而弥补了仅使用扩张卷积获取的远距离信息没有相关性的弊端,因此缺失这两个模块后对于目标攻击任务和非目标攻击任务,对抗攻击成功率分别下降了7%和10%,平均扰动分别增加了4.92和5.89。相比于移除DR和PSA,移除AC和ATT的攻击效果略微下降,说明使用AC-GAN判别器和添加攻击者对对抗样本的攻击能力和生成质量有一定的提升,但效果有限。一方面是因为在GAN的判别器中添加分类网络以实现在分类特征空间中引起攻击的难度较大,另一方面是因为采用PGD攻击者虽然能控制扰动在一定的范围内,但需要对梯度进行多步迭代才能获取最优值。消融实验结果证明了本文提出的对抗样本生成模型中各模块的优越性,说明使用BA-GAN方法生成的对抗样本在对抗攻击时获得的高黑盒攻击成功率更加可靠,图像扰动更小。
表5 消融实验结果
4 结 论
本文提出了一种基于GAN的肺部疾病诊断模型黑盒可迁移性对抗攻击方法BA-GAN,在无目标对抗攻击和有针对性对抗攻击两种方式下,该方法能在查询次数有限、更严格的黑盒场景中实现可迁移性对抗攻击,并取得较高的攻击成功率。改进后的对抗样本生成方法相比于其他传统基于GAN的攻击方法更能捕捉肺部图像的语义特征信息和纹理细节,生成的对抗样本更加真实,并且可迁移性更高。
自从发现DNN存在对抗扰动的问题后,基于DNN的临床诊断模型更容易被攻击者欺骗,导致医疗模型产生致命性错误,进而误导医生做出错误的决策[27],因此本文提出的对抗攻击方法是为了更好地帮助深度神经网络抵御未知的恶意攻击,进而训练出更稳健、更具解释性的模型,并且为加固深度学习模型在医疗领域的安全性和鲁棒性提供了参考方案。在进一步的研究中,需要测试更多的医疗诊断模型,优化训练方法,提高黑盒对抗成功率。但是,在开发用于医学成像的DNN模型及其实际应用时,需要更加谨慎仔细地考虑。