随着基于 Transformer 的目标检测模型的进步,它们在自动驾驶和航空等关键领域的影响预计将会增长。在推理过程中导致的软错误会引起位翻转,这显著影响了深度神经网络性能,改变了预测结果。传统的针对卷积神经网络的范围限制解决方案对于 Transformer 来说并不充分。
本研究引入了全局剪辑器(Global Clipper)和全局混合剪辑器(Global Hybrid Clipper),这些是专门为基于 Transformer 的模型设计的有效缓解策略。
它们显著提高了模型对软错误的鲁棒性,并将错误推理减少到接近0%。
作者还详细介绍了跨越64种以上场景的广泛测试,测试涉及两个 Transformer 模型(DINO-DETR和Lite-DETR)和两个卷积神经网络模型(YOLOv3和SSD),使用三个数据集,总共大约330万次推理,以全面评估模型的鲁棒性。
此外,本文探讨了 Transformer 中注意力块的独特方面及其与卷积神经网络的操作差异。
1 Motivation
深度神经网络(DNNs)的采用对包括自动驾驶车辆[1],航空,医疗保健[2]和太空探索[3]在内的各个领域产生了重大影响,在这些领域中,高安全性和可靠性至关重要。这推动了专注于安全人工智能的计算机视觉研究社区的蓬勃发展,研究领域包括分布外检测[4],对抗性鲁棒性和模型互操作性[5]。基于DNN的计算机视觉模型处理图像以分类目标并预测它们的边界框。
推理过程中的错误可能导致错误的边界框,显著改变系统行为,强调了在模型执行过程中对更安全硬件的迫切需求。
DNN加速器通过构建计算图在高 Level 执行模型,该计算图使用通用矩阵到矩阵乘法(GEMM)[6]进行大量层输入和权重乘法。这一过程中的关键组成部分是图1[7]中较低加速器 Level 的乘积累加(MAC)单元。DNN加速器中的MAC单元缺乏ECC保护,使它们特别容易受到软错误的影响——这是一个主要的可靠性问题。
这些错误通常由辐射、芯片老化、制造变化或热问题引起,可能会改变中间计算值,导致推理错误。研究表明,随着晶体管密度的增加、特征尺寸的减小和核心数量的增加,软错误率将会增加。例如,一个100核系统可能因为软错误每1.5小时就会失败一次,当这些错误在层间传播时,如图1所示,这会显著影响预测。尽管软错误不会造成永久性损害,但它们可能导致可靠性严重下降。
本文提出了一种在应用层减轻目标检测模型中软错误的技术。作者使用PytorchALFI[14]来模拟软错误,这是一个开源工具,它将大规模故障注入能力与PyTorch集成在一起。
范围限制解决方案通过在每一激活层应用预计算的界限,有效减轻了基于CNN的DNN模型中的软错误,这些界限是通过使用20%的验证图像来确定的最低和最高限制[15]。
然而,当前的防护措施对于基于 Transformer 的视觉模型中的软错误效果不佳,这是由于其架构的复杂性。作者的分析表明,现有的解决方案是不够的,这需要为这些先进系统显著增强错误缓解策略。
如果没有这些改进,基于 Transformer 的模型的鲁棒性就会受损,这突显了迫切需要更复杂和定制化的保护机制。 Transformer 模型[16, 17],以其自注意力和大型线性层为特征,特别容易受到攻击,因为位翻转错误可以级联并显著改变预测。
例如,在具有4800万参数的CoCo训练的DINO-DETR模型[16]的第50个自注意力层中注入单一位翻转错误,会导致如图2b所示的错误推理,如幽灵目标。这些错误要么创建随机的高置信度检测,要么删除它们,可能会破坏依赖于这些模型进行目标跟踪等任务的系统[18]。
这强调了复杂网络中微小错误的重要影响。然而,如图2c所示,应用现有的范围限制不能缓解所有幽灵目标。
作者提出全局剪辑器(Global Clipper)和全局混合剪辑器(Global Hybrid Clipper)范围限制层作为直接但至关重要的增强措施,以减轻复杂 Transformer 模型中软错误的影响。这些层实现在自注意力块中的激活和线性层中,这些关键点容易受到可能严重影响网络性能的错误的影响。
这一策略涉及到细致的平衡:在确保网络能够处理多样化的数据输入的同时,确保网络对可能导致输出重大不准确性的错误具有鲁棒性。通过添加这些范围限制层,全局剪辑器有效地保护了网络的功能,同时不损害其学习能力,确保即使在具有挑战性的条件下也能保持高性能。例如,在添加全局剪辑器后,由故障注入创建的所有错误幽灵目标都已被移除,如图2d所示。
总之,本文的主要贡献如下:
- 作者为基于 Transformer 的目标检测模型引入了全局剪辑器和全局混合剪辑器故障缓解技术(第4节)。
- 作者通过故障注入实验对CNN和 Transformer 模型进行了全面研究,使用三个数据集,总计330万的推理,来分析这些视觉系统的脆弱性。作者证明了所提出的技巧在将错误率从6%降低到接近0%方面是有效的(第5.3节)。
- 作者探讨了 Transformer 与CNN中注意力块的独特特性,提供了对于提升部署 Transformer 模型整个生命周期内安全性的模型脆弱性见解(第5.4节)。
以下论文部分首先将探讨解决基于 Transformer (transformer)的深度神经网络模型中软错误的方法。接着,本文将详细阐述所考虑的故障注入模型(如上文贡献中所述的第二项)。
接下来,将介绍作者提出的解决方案——全局剪辑器(第一项),强调其在减轻软错误方面的有效性。随后,将对实施全局剪辑器进行彻底的消融研究(第二项)。最后,将提供在不同的数据集上 Transformer (Transformers)和卷积神经网络(CNN)的脆弱性特征的检查和比较(第三项)。
2 Related Work
在应用和硬件层面,通过各种指标来评估安全关键型深度神经网络(DNN)模型的可靠性,从而提高它们的安全性和可靠性[19, 20, 15, 18]。研究表明,DNN容易受到软错误的影响,单个位翻转的实例可能导致错误的推理[21, 22, 23, 18]。传统上,硬件中对软错误的防护主要涉及对内存使用错误检测或纠正码(EDC或ECC)[24],以及计算中使用残差。这些机制通常在高端服务器级CPU中实现,但由于成本考虑或典型的宽松应用要求,在GPU中实现较少。基于冗余的其他技术,如双模冗余(DMR)和三模冗余(TMR)也被使用。尽管采取了这些措施,运行DNN的加速器可能缺乏固有的保护。
软件中的典型矩阵操作解决方案,如基于算法的容错(ABFT),已经被适配用于DNN,但受到检查DNN应用中典型的大矩阵乘法开销的限制[25, 26]。研究行人还在应用层面基于软件层面的范围限制解决方案开发了针对DNN的特定解决方案,特别是对于CNN模型,并探索使用激活模式来检测软错误[27, 15, 26]。一个维度减少的小型机器学习模块分析这些模式以识别并拒绝错误的推理。然而,这些方法面临可扩展性和复杂性的挑战。
DNN对软错误的脆弱性,包括CNN和基于变换的模型,已有充分记录。然而,以前的研究没有广泛探索目标检测中的变换模型,也没有进行详细的大规模故障注入研究[34, 33]。本研究旨在通过检查变换架构的弹性并探索这些架构中针对软错误的有效缓解策略来填补这一空白。
3 Fault Models
作者考虑AI硬件加速器中的软错误,重点关注它们对系统可靠性的影响。这些错误通常表现为单个或多个位翻转,通过改变模型的权重和神经元,可能会损害数据完整性,进而潜在地扭曲计算和决策。深度神经网络操作中的这种中断在图1中得到了说明,突显了对抗这些问题的鲁棒性策略的必要性。
奇偶校验或错误校正码(ECC)保护内存免受软错误的影响,这对于重要内存块尤为关键,因为其显著降低了开销[35]。尽管ECC,特别是SECDED(单错误校正,双错误检测)码,能够检测并校正单一位错误,但它仅限于检测不能校正的双位错误。这强调了除了ECC之外,还需要其他技术来尽量减少多比特错误。
作者的实验设置在推理过程中注入单比特或10比特翻转错误,故障注入针对模型的神经元或权重之一,但不同时针对两者。这种方法确保了有针对性的、简单的故障分析,每个推理过程只经历一次故障改变。作者研究中所有模型均采用32位数据类型。
4 Global Clipper
范围限制解决方案[15, 27]通过专注于卷积层关注局部图像区域的激活层,有效地解决了基于CNN模型的软错误引起的位翻转问题。这种将偏差限制在局部特征图区域内的做法有助于防止广泛的错误。然而,这些方法对于采用广泛线性层的全局注意力机制的 Transformer 模型[36]效果不佳。在 Transformer 模型中,一个位翻转可能会在多头注意力层传播错误,显著改变向量表示并影响预测。这需要针对 Transformer 全局处理特性定制不同的缓解策略。
作者提出了对现有范围限制层的至关重要改进,如图3所示,将值监控和截断从激活层扩展到自注意力块内的线性层。这种策略增强了 Transformer 架构对软错误引起的位翻转的抵抗能力。全局剪辑器在部署前将超出范围的值截断到预定义的区间内,在任何激活或线性层上操作,具体如公式(1)中的界限。同样,全局范围器将值限制在指定范围内,确保所有层的输出符合预期的范围。
这些层可以在应用 Level 无缝融合,确保开销最小。确定上下限的方法遵循先前范围限制解决方案(如Ranger[15])中概述的方法。具体来说,这些界限是通过使用20%的训练数据集计算得出的,涵盖基于 Transformer 的模型中的所有激活层和线性层,如图4所示。
L\_{global\\_clipper}(x)=\begin{cases}0&\text{if }xB\_{upper}\\ 0&\text{if Inf 或 NaN}\\ x&\text{其他情况}\end{cases} \tag{1}{lower}\text{>
图4:全局剪辑技术定义了用于范围限制的上下限,包括DINO-DETR模型的激活层和自注意力块内的线性层。
作者通过两个实验证明了全局剪辑器解决方案的有效性,这些实验涉及在现有模型的卷积层和线性层中注入故障,以及作者提出的方法。使用一个样本图像,作者在DINO-DETR模型的ResNet50 Backbone 网的第二个卷积层中随机MSB位置引入位翻转错误。然后作者监控紧随ResNet50编码器之后的第20个ReLU激活层和第51个自注意力块中的线性层的均值和方差。这个过程,如图5所示,使作者能够评估全局剪辑器的性能,并将其与其他缓解策略进行比较。
在第一个实验中,作者在ReLU激活层注入故障,并应用了各种缓解解决方案,如图5(a)所示。Ranger方法[15]将数据点限制在种群簇内。相比之下,Clipper[27]以及作者提出全局范围器和全局剪辑器更紧密地将数据限制在非故障推理区域。尽管所有技术都保持了可接受的公差,但Ranger和Clipper倾向于将数据点从原始非故障位置推移得更远,特别是在线性层。
在第二个实验中,作者在线性层注入故障并激活各种缓解解决方案。然而,由于自注意力层对故障的敏感性,Ranger和Clipper均无法将值限制在其原始位置。
Ranger和Clipper通常只在激活层应用限制;但是,自注意力包括一个SoftMax层,不能在不损害块的功能和准确性的情况下进行类似的限制。因此,引入图3中的全局剪辑器对于保护注意力块免受故障至关重要。
当在第51个线性层引入故障时,全局剪辑器成功地保持了数据点接近其原始位置,如图5(b)所示。
5 Experiments
Experimental Setup
正如第1节所介绍,软错误在应用 Level 上以瞬态位翻转错误为特征,影响单个推理,并且仅在下次从内存获取数据之前持续。位翻转发生在尾数的符号位和最高有效位时,对值范围的影响最小;然而,在IEEE 754浮点运算的符号位和指数位发生翻转时,可能会改变预测,这种改变在测试其他格式如BFloat16时并没有显著不同,如文献[21, 18]所示。
作者的研究评估了基于 Transformer 的两个模型DINO-DETR [16]和Lite-DETR [17],以及两个CNN模型YOLOv3 [37]和SSD [38]在CoCo [39],KITTI [40]和BDD100K数据集[41]上的脆弱性。作者进行了超过64项实验,总共大约330万次推理。每个模型都经历了在 Transformer 的自注意力块的所有线性层和CNN模型的卷积层中进行随机和有针对性的故障注入的实验。
从这些实验中提取的每个数据点包括从1,000个图像样本中带有随机故障的50,000次推理,以及在每一层针对有针对性故障实验的10,000次推理。每组实验都使用 Baseline 和提出的缓解技术(如Clipper,Global Clipper或Global Hybrid Clipper)重复进行,从而彻底分析模型的脆弱性以及缓解策略的有效性。
Evaluation Metrics
准确度指标如AP50或mAP[39]及其变体[42]是评估目标检测模型中故障注入的标准。有时,这些故障会创建置信度较低的幽灵目标,由于在PR曲线下的面积(AUC)计算[18]中排除了它们,因此不会影响整体的AP50。为了解决这个问题,采用了对PR曲线平均不敏感的指标[18]。那些不改变模型结果的故障被认为是良性的。相比之下,重大的故障被安全性和可靠性社区[8]划分为SDC(静默数据损坏)和DUE(可检测但不可恢复的错误)。
通过将SDC和DUE[8]定义为关键故障,作者增强了有效评估漏洞的能力。本研究在故障检测指标中引入了这些条件(见公式(2),公式(3)和公式(4))。与Global Clipper不同,Global Ranger限制了值但不截断它们。通过监测AP50准确度和来评估漏洞。
例如,如果100个样本图像中有30个显示检测差异或由于位翻转而遇到或错误,将是30%。此外,可以用来估计DNN加速器的漏洞,以FIT率[8]和其他硬件生命周期内的风险因素来衡量。然而,这些方面超出了本文的范围。从此以后,将被称为故障检测。此外,在本研究中,仅考虑9个更高阶的比特,包括符号位和指数位,如第3节所述。