一种适用于小型FPGA部署的通用低精度Softmax近似方法,用于视觉变换器 作者:Samuel Aboagye、Lujun Zhai 和 Suxia Cui

《Electronics》:A Generalizable Low-Precision Softmax Approximation for Small-FPGA Deployment of Vision Transformers Samuel Aboagye, Lujun Zhai and Suxia Cui

【字体: 大 中 小 】 时间:2026年04月23日 来源:Electronics 2.6

编辑推荐:

  摘要 Softmax是变压器计算中的一个步骤,在此过程中,由于使用了指数函数,内部缓冲区的大小会迅速增加。Softmax是视觉变压器注意力机制中的一个基本操作,但其计算成本较高,这对于资源受限的FPGA(现场可编程门阵列)上的部署构成了重大挑战。在注意力流

  摘要 Softmax是变压器计算中的一个步骤,在此过程中,由于使用了指数函数,内部缓冲区的大小会迅速增加。Softmax是视觉变压器注意力机制中的一个基本操作,但其计算成本较高,这对于资源受限的FPGA(现场可编程门阵列)上的部署构成了重大挑战。在注意力流水线中的softmax阶段,计算精度的要求主要由于使用了指数函数而提高。本文提出了一种低精度的softmax近似方法,该方法结合了截断的麦克劳林级数指数和输入范围限制,以实现高效的硬件实现,同时不牺牲重建质量。通过限制对最终输出贡献微不足道的极端注意力分数,所提出的方法减轻了低阶多项式近似的不稳定性,同时保持了其硬件效率。该方法首先在软件中使用SwinIR(利用SWIN变压器进行图像重建)超分辨率技术进行了验证,以确保重建的保真度,然后分析了其在FPGA上的部署情况。SwinIR是Deit和Vit等变压器的多阶段版本,因此它是测试变压器重建保真度的理想选择。实验结果表明,所提出的四阶截断近似方法在SwinIR-M上的性能接近参考值,仅导致了0.15 dB的PSNR和0.0059的SSIM下降,同时显著降低了精度和内存需求。对于大规模的SwinIR模型(SWINIR-L),观察到PSNR有所提高,SSIM损失小于0.01,进一步突显了随着模型规模增大,极端值的重要性减弱。霍纳形式(Horner-form)的重新表述通过限制中间精度的增长进一步提高了硬件效率。总体而言,这项工作提出了一种考虑重建需求且对硬件友好的softmax重新表述方法,使得视觉变压器能够在小型FPGA平台上实际部署。此外,我们还利用这一贡献改进了ViTA加速器的性能。我们还为现有的ViTA加速器设计增加了偏差初始化和一个PE循环限制的运行时变量。

1. 引言
在图像增强和图像处理算法中,子函数的高效硬件实现仍然是一个重要的研究问题,尤其是在目标是在保持算法行为的同时提高吞吐量、能源效率以及增强在支持浮点计算的嵌入式硬件上的可部署性的情况下[1,2,3,4]。诸如点积、softmax和多层感知器这样的函数在现代基于变压器的视觉模型中反复出现,使它们成为硬件加速的自然目标。图像增强非常重要,因为实际环境中捕获的视觉数据通常包含模糊、噪声、压缩伪影和分辨率限制。增强后的图像为人类解释和机器分析提供了更好的可视化和更清晰的信息,这在医学、法医学、农业、自动驾驶、广播和移动成像等应用中非常有价值[5,6]。最新的基于深度学习的图像增强算法实现了高感知质量,但它们也需要比传统方法更多的计算资源。这强烈激发了研究高效硬件实现的动力。FPGA是实现这一目标的理想平台,因为它们提供了流水线、并行性和可重构性,并已被广泛用于嵌入式和实时图像处理应用[7,8,9,10,11,12,13,14]。更广泛地说,FPGA还应用于需要灵活性和特定领域加速的自主系统、空间系统、嵌入式系统和特定应用系统[15,16,17,18,19,20,21]。然而,FPGA资源仍然有限,特别是在小型设备上,因此高效部署通常需要算法的重新表述,而不仅仅是原始软件实现的直接映射。先前的工作也讨论了将面向软件的算法转换为对硬件友好的架构的更广泛挑战[22]。
在基于变压器的图像增强模型中使用的运算符中,softmax函数尤为重要,因为它将注意力分数转换为概率。在softmax步骤中引入的错误会通过注意力机制传播,并可能降低最终图像的重建质量。在这项工作中,我们使用SwinIR作为代表性的视觉变压器模型,因为它是一个先进的图像超分辨率网络,并为评估softmax近似提供了现实的应用背景。硬件实现softmax的主要挑战在于指数函数和归一化步骤。基于精确指数的直接实现可能需要大型查找表、高精度固定点运算或浮点运算支持。迭代替代方法(如CORDIC)可以避免一些成本,但会引入延迟和控制复杂性。多项式近似具有吸引力,因为它们是代数的且对硬件友好,但是指数级数的低阶截断在有限范围之外会变得不准确,从而可能扭曲注意力概率。低阶多项式仍然具有吸引力,因为它们的指数值不会达到极高的值。通过使用softmax的对数将极高的softmax值缩小到更小的范围内,只是将精度需求从整数部分转移到小数部分。

最近两种在硬件上实现softmax的方法是[23],仅在一个部分(分子部分)使用小阶麦克劳林级数,并在分母部分使用LUTs;以及Hussain等人[24]使用高精度固定点方法来保证准确性。在本文中,我们展示了主要问题不仅仅是截断误差的存在,而是极端注意力分数值在低阶多项式表现良好的区域之外的不成比例的影响。通过分析SwinIR中的注意力分数分布,我们观察到这些极端值对最终重建质量(以PSNR和SSIM衡量)的贡献可以忽略不计。基于这一观察,我们提出了一种受限的多项式softmax方法,在评估指数的四阶麦克劳林近似之前对注意力分数的极端值进行限制。这保留了低成本代数实现的好处,同时避免了单独使用截断多项式所产生的严重失真。所提出公式的一个关键优势是,钳位操作在算法层面引入,而不是仅与硬件微架构相关联。因此,我们首先在软件中使用Python 3.12和Google Colab运行SwinIR推理,并在不同钳位设置下测量PSNR/SSIM来验证所提出的方法。这种软件层面的研究不是FPGA实现的替代品;相反,它是在进行相同公式硬件实现之前的设计验证步骤。在验证了软件中的近似行为后,我们讨论了其在FPGA方面的影响,包括算术精度、DSP使用、BRAM节省和铺砌效率。

本研究的主要贡献总结如下:
我们提出了一种受限的多项式softmax方法,限制了softmax阶段的动态范围,使得低阶指数近似适用于小型FPGA的部署。
通过基于SwinIR的重建实验,我们展示了截断多项式softmax的主要故障模式与极端注意力分数区域有关,并且范围钳位可以抑制这种效应,同时相对于资源密集型的参考实现,仅导致轻微的PSNR/SSIM下降。
我们引入了霍纳形式实现,以减少中间精度的增长并提高硬件的适用性。
我们提出了一项关于钳位范围的研究,解释了为什么所选的区间为测试的SwinIR配置提供了稳定的操作区域。
我们明确了一种通用策略,通过增加多项式的阶数来实现更宽的操作范围,从而揭示了近似范围和硬件成本之间的明确权衡。

总体而言,这项工作表明,视觉变压器加速器中的softmax可以在考虑重建需求和对硬件效率的同时进行重新表述,使得在小型FPGA上的部署更加实用。更具体地说,贡献不仅仅在于使用多项式近似,而是一种算法-硬件协同优化策略,在归一化之前抑制了对最终重建来说在数值上昂贵且在经验上不重要的值。

2. 相关工作
2.1. Softmax加速综述
文献中报道了几种面向硬件的softmax实现方法。在[25]中,使用查找表来计算softmax函数中的指数和除法。虽然基于查找表的方法可以快速,但随着表示范围和精度的增加,它们的成本也会增加。在[24]中,作者也使用基于查找表的公式和基于2的指数计算。然而,要在广泛范围内保持高精度仍然需要高精度算术,这很快就需要浮点计算。
其他工作试图通过功能重构来降低除法或指数运算的成本。在Kouretas等人[26]中,通过应用对数变换将除法转换为减法,从而减少了所需的查找表数量。此外,softmax的对数方法将softmax的高指数范围缩小到一个小范围内,因此需要高精度固定点运算来保证准确性(这很快就需要浮点计算)。在Wang等人[27]中,使用基于2的运算重新表述指数,以减少对查找表的依赖,尽管这引入了近似误差。在Hajduk等人[28]中,探索了麦克劳林和帕德(Padé)近似来计算指数。这些方法很有吸引力,因为它们减少了了对精确指数的依赖,但它们通常只在有限的数值区间内准确。基于帕德的方法还引入了变量除法,这通常不如纯粹的代数多项式评估对硬件友好。
基于CORDIC的近似提供了另一种选择[29]。这些方法避免了存储大型表格,但它们仍然是迭代的,因此引入了延迟和控制复杂性,这在深度流水线FPGA加速器中可能是不希望的。因此,主要的实际挑战不仅是如何近似指数,而且是如何以足够准确的方式进行近似,同时保持对于小型FPGA部署所需的低复杂性优势。表1总结了上述内容。
表1. softmax实现方法的总结及其限制。

2.2. 固定点或浮点配置及其权衡
在基于FPGA的数字信号处理中,一个中心的设计问题是使用固定点还是浮点算术。固定点算术在FPGA上通常更节省面积和速度,但其数值范围和精度必须谨慎管理。浮点算术提供了更宽的动态范围,但通常会带来更高的硬件成本。
如[1]所讨论的,当数据范围受控时,固定点配置可以提供高效的精度使用,而浮点表示通常更适合非常宽的动态范围应用,例如高性能计算系统。然而,在FPGA图像处理流水线中,浮点支持可能会显著增加资源使用并使数据流优化复杂化。GPU通过高度并行的架构部分解决了这个问题,但它们仍然功耗较高,并不像FPGA那样是独立的嵌入式设备。
先前的工作已经表明,对于FPGA图像处理工作负载,固定点实现通常比浮点替代方案更高效。例如,Bhatti等人[30]比较了偏转测量算法的固定点和浮点实现,并报告说固定点版本更快且使用的资源更少。这一一般观察在这里是相关的,因为当指数评估需要对整数部分或小数部分的表示进行高精度运算时,softmax可能会迅速变得昂贵。因此,这项工作的目标不仅仅是近似softmax,而是以一种避免在小型FPGA平台上需要昂贵的高精度算术的方式来近似softmax。

2.3. 注意力机制和softmax的数学描述
1. 计算注意力分数
两个补丁i和j之间的注意力分数是通过补丁i的查询(Q)和补丁j的键(K)的点积计算得出的:
(1)
其中D是嵌入空间的维度。
2. 标准化注意力分数
为了稳定注意力分数的大小,点积乘以键维度的平方根:
(2)
3. 应用Softmax以标准化注意力分数
然后逐行应用Softmax将标准化分数转换为标准化的注意力概率:
(3)
(4)
其中N是窗口中的补丁数量。
4. 值的加权求和
补丁i的输出是Value (V)向量的加权求和:
(5)
由于最终输出直接依赖于softmax生成的注意力权重,因此指数评估和标准化中的近似错误可能会通过变压器传播并影响图像重建质量。这就是为什么所提出的近似必须在应用层面使用真实的视觉变压器模型进行评估的原因。图1显示了所介绍的注意力机制的图形形式。
图1. 自注意力机制[31]。
我们展示了图2,以说明softmax如何将注意力分数转换为总和为一的概率。
图2. (注意力分数)用于解释softmax行为的示例注意力权重矩阵。(应用softmax和指数函数后的行标准化概率)。提出的方法是基于以下观察:对于FPGA实现而言,使用低阶多项式近似指数函数非常具有吸引力,因为它完全是代数的,适合流水线处理,并且不需要大型查找表、浮点运算或迭代收敛,如图3所示。然而,当直接在softmax中使用截断的麦克劳林级数时,近似效果在有限的输入范围之外会下降,导致得到的注意力概率严重失真。图3展示了指数函数的四阶麦克劳林近似的硬件实现方式。(+)代表加法器,(x)代表乘法器,(/)代表除法器。为了解决这个问题,我们在修改输入范围的同时保持四阶指数近似的硬件效率。具体来说,我们在评估多项式之前对极端的注意力分数值进行限制。这抑制了截断多项式作为指数函数替代品时的不良影响,同时保留了对最终概率分布影响最大的分数区域。图4中的补丁嵌入和注意力q,k权重分布说明了这一点。您会注意到,在图4中,影响PSNR的q,k数据位于一个小范围内。我们还通过实际的限幅偏斜实验结果来支持这一观点。我们尝试了其他方法,这些方法也在本文中进行了介绍。图4展示了softmax阶段之前的权重实际分布。本研究中使用的四阶麦克劳林近似公式为(6)。关于实现的说明:方程(6)给出了精确的四阶麦克劳林多项式。在硬件中,可以使用系数编码或适合移位的常量来映射相同的多项式,这些常量便于固定点实现。这澄清了数学公式和面向实现的数据路径之间的区别。直接在softmax中使用这种近似会导致显著的失真。因此,我们提出的softmax方法用在对输入进行限幅后的多项式近似来替代指数函数:(7)。限幅函数定义为(8)。所提出公式的另一个优点是它减轻了softmax归一化的动态范围负担。在传统的softmax中,会生成较大的指数值,从而需要处理高精度的固定点运算。这通常会增加整数范围的要求和分数精度要求——无论是对于不将高范围压缩到小空间的方法,还是像softmax对数方法这样的方法。在提出的方法中,指数函数被四阶麦克劳林多项式替换,其增长速度远低于真实的指数函数,并且在评估之前对输入进行了限幅。因此,从一开始就不会生成过大的中间值。因此,分母中包含的项具有范围限制,这减少了倒数/除法所需的精度。这就是为什么提出的softmax更适合紧凑型FPGA实现的原因。在这项研究中,限幅界限是通过重建质量实验经验性地选择的,并且在测试的SwinIR配置下发现它们表现最佳。重要的是,因为这种修改是在算法层引入的,因此可以在硬件实现之前在软件中进行评估。因此,我们使用了Python和Google Colab实验来验证限幅近似对PSNR和SSIM的影响,然后再在面向FPGA的设计中实现相同的方法。这种先软件后硬件的验证确认了限幅机制能够保持图像质量,而不仅仅是一种硬件方面的启发式方法。选择四阶近似的动机在于它仍然是严格代数的,并且能高效地映射到FPGA算术资源。与依赖高精度分数指数运算、大型查找表或迭代CORDIC更新的方法不同,所提出的公式更加紧凑,适合流水线处理。同时,限幅补偿了截断多项式最有害的超出范围的行为。

**霍纳形式的使用**
虽然四阶多项式已经比精确指数运算更适应硬件,但直接评估仍然会导致中间值的增长,特别是对于较大的正输入。例如,某一项可能需要的中间精度远大于最终输出表示的精度。这增加了数据路径的复杂性,并可能对时序和资源使用产生负面影响。为了减少这种中间精度的增长,我们进一步将多项式重新表述为霍纳形式:(9)。霍纳形式的实现减少了大型中间产品的数量,并可以将所需的内部固定点宽度减少几比特,使得近似更适合紧凑型FPGA实现。在提出的限幅softmax背景下,这种重新表述提供了额外的硬件优势,而不会改变底层近似行为。

**结果与讨论**
4.1. 实验方法
表2展示了我们为解决在softmax计算的分子和分母部分使用低阶多项式展开所导致的失真而进行的不同实验列表。图5和图6显示了指数函数在整个范围内的行为。这突出了仅使用低阶多项式展开的局限性。低阶多项式展开曲线在-2之后开始上升。模型在那个点发生失效。我们展示了尝试过的不同方法,因此不再重复(但可以引用为已经尝试过的)。我们尝试将低阶多项式曲线向左移动,以扩展其仍然趋于零的范围(见图7)。在较小范围内应用这些方法的结果看起来很有吸引力,它们的概率之和为1,如图8和图9所示。然而,主要问题是在SWINIR-M模型中应用时注意到的边缘失真。在一个3通道的16位定点FPGA(Xilinx Zybo Z020)上实现这种方法时,9位整数部分的实现看起来很有吸引力,如图10所示,以此作为提高更广范围固定点精度的baseline。图11c显示了边缘失真。图12是在鸟类图像上重复的蝴蝶图像实验。然后我们继续尝试表2中提到的其他方法。表3展示了实验扩展到整个SwinIR模型的情况,以及该结果与BSRGAN结果的比较。

4.2. 最终提出方法的讨论结果
我们在SwinIR超分辨率环境下评估了所提出的近似方法,以确定限幅是否可以纠正截断多项式指数函数引入的失真,同时保持低精度实现的硬件优势。由于限幅操作是在算法层应用的,我们首先使用Python和Google Colab在软件中进行了验证。这使我们能够高效地扫描限幅范围,并在将相同的近似映射到面向FPGA的硬件之前测量其对重建质量的影响。结果显示,仅使用四阶麦克劳林近似不足以获得可接受的重建质量。相比之下,限幅公式显著恢复了性能,并产生了接近资源密集型参考实现的输出。这些发现证实,主要问题不仅仅是截断误差本身,而是近似在分数极值处的行为,这些极值对最终概率质量的贡献很小。表2中的结果表明,单独使用四阶多项式在SwinIR中不足以实际应用。未经限幅的近似会产生严重的失真,直接将其应用于标准化变体也无法解决问题。多项式的移动版本相对于未经限幅的情况有所改善,但仍存在明显的边缘细节损失。最佳的总体折中方案是在保持多项式原始形式的同时,对注意力分数的极值进行限幅。这些观察结果支持了本文的核心假设:在softmax中使用低阶多项式指数的主要问题不在于近似误差的存在,而在于近似在极值处的有害行为,这些极值对最终概率质量的贡献很小。一旦这些极值被限制住,低阶多项式在注意力计算中就变得更加有效。

4.3. 限幅范围的选择与敏感性
通过扫描 lower 和 upper 极限并监控PSNR和SSIM,我们经验性地选择了限幅范围(见图13)。lower 极限控制了低阶多项式不再可靠跟踪衰减指数函数的区域,而 upper 极限限制了非常大正分数占据归一化分母的能力。图13显示了用于选择区间 [X, Y] 的PSNR和SSIM趋势。我们首先将lower 限幅界限向更负的值变化,观察到重建质量在某个点之前有所改善,然后随着界限进一步向负方向移动而恶化。然后我们以正步长变化 upper 限幅界限,发现将 upper 限幅界限增加到100以上并没有显著提高PSNR,但略微降低了SSIM。这些结果表明,在评估的SwinIR配置中,[X, Y] 区间为四阶近似提供了最佳的折中。重要的是,所选区间应被理解为一个稳定的操作区域,而不是单一的脆弱最优值。在这个区域内,重建质量保持一致,同时呈现给归一化的数值动态范围大幅减少。这就是为什么该方法能够在降低固定点硬件要求的同时保持图像质量。

4.4. 进一步的性能评估
最初的实验是在中等规模的SwinIR模型(SwinIR-M)上进行的。与参考softmax实现相比,所提出的四阶限幅近似仅导致0.15 dB的PSNR损失和0.0059的SSIM损失,同时显著改善了未经限幅的多项式变体。这一结果很重要,因为它表明所提出近似的重建代价小到足以在实际视觉应用中接受,尤其是在与硬件节省相平衡的情况下。我们还在更大的SwinIR-L模型上进一步评估了这种近似。在这些实验中,所提出的方法在SSIM上取得了有竞争力的成绩,在某些情况下甚至略微提高了PSNR。我们不将这些孤立的成绩解释为近似方法系统上优于参考softmax的证据。相反,它们可能反映了近似方法与完整重建流程之间的交互效应。目前的实验验证仅限于SwinIR系列和图像超分辨率任务。因此,我们将SwinIR视为一个代表性的视觉变换器工作负载,而不是声称其对所有变换器模型都具有通用性。尽管如此,范围受限的多项式softmax的基本原理预计仍然适用于其他基于注意力的配置,更广泛的跨模型验证是未来工作的重要方向。总的来说,这些结果表明,所提出的限幅多项式softmax不仅仅是一种低成本的近似方法,而是在硬件限制下实际可行的softmax重构方法。

4.5. 限幅电路评估
图14显示了作为硬件讨论的一部分,我们还评估了实现限幅操作本身所需的逻辑。这项分析的目的是为了表明,与更传统的指数运算方法相比,限幅引入的额外硬件开销是适度的。所提出的设计在美国使用的Xilinx Zynq-7000(Zybo Z7-20/Z020系列)FPGA平台上实现,使用Vitis HLS和Vivado工具进行,软件层面的验证分别在Python和Google Colab中使用Python 3.12完成。夹具电路的集成硬件架构展示了单数据路径中的下界比较、上界比较和多路复用功能。输入首先经过一个比较器,该比较器检查值是否小于某个阈值。这可以通过在输入上加2并检查结果的符号位来实现。如果值低于该阈值,逻辑输出特定结果;否则,它将转发原始输入。得到的值随后通过第二个比较器,该比较器检查其是否超过100,这可以通过减法和符号检查来实现。如果值大于100,逻辑输出100;否则,它将传递之前的值。与基于查找表的指数运算或高精度算术数据路径相比,该夹具电路较为轻量级。额外的比较器和多路复用逻辑仅引入了少量的资源开销,同时使得多项式softmax近似能够保持重建质量。这使得夹具技术在小型FPGA实现中成为一个有吸引力的折中方案。

4.6 对硬件效率的影响
夹具电路的硬件重要性不仅在于它恢复了重建质量,还在于它限制了归一化阶段必须处理的数值范围。表4显示了更大的瓷砖尺寸对FPGA实现周期数改进的意义。表5还展示了我们提出的方法在没有INT8量化的情况下如何适应FPGA架构(相同的好处也适用于INT8量化的实现版本)。一旦极端分数区域被限定,多项式softmax就不再产生与精确指数运算相关的非常大中间值。这减少了累积分母和倒数计算中的定点压力;如表6所总结的。
表4. 在Xilinx Zybo Z020上,通过更大的瓷砖尺寸实现的softmax循环数改进。
表5. 在Xilinx Zybo Z020上使用我们提出的softmax方法:整数和分数部分的最低定点精度方法。
表6. FPGA上softmax实现的比较。
因此,观察到的图像质量保持和硬件复杂度的降低来自相同机制:所提出的方法抑制了对最终重建在数值上昂贵且经验上不重要的极端分数值。实际上,这减少了累加器的增长,降低了归一化中的分数精度要求,并避免了需要对数范围压缩的需要。

表7展示了基准softmax实现与所提出方法之间的周期级比较。基准模型遵循典型的对数域或以2为底的指数方法,需要指数运算和高精度归一化。相比之下,所提出的方法用霍纳形式实现的低阶多项式取代了指数运算。尽管夹具操作引入了少量开销,但由于减少了流水线阶段和除法阶段的精度要求,总体延迟得到了降低。

此外,所提出的设计支持更高的并行性(最多可提高4倍的SoftMax并行性),进一步提高了吞吐量。这表明所提出的方法减少了计算深度和归一化复杂性,从而实现了更高效的硬件实现,如表8所示。

表8. 与在同一Xilinx Zybo Z020板上的ViTA Swin-T结果进行比较。时间值来自代表性实现的流水线阶段分析,旨在提供相对比较而非精确的测量延迟。

5. 方法的推广
所提出的方法可以通过增加用于近似指数函数的麦克劳林展开的阶数来推广到更宽的操作范围。在这项工作中,推广指的是在保持经验上确定的高质量区域观察到的有利重建行为的同时,扩展有效的近似范围。从夹具扫描研究中,我们观察到,当在有限的输入范围内应用时,低阶麦克劳林近似提供了计算复杂性和重建质量之间的最佳平衡。当近似必须在更宽的范围内操作时,一个直接的扩展是逐渐增加多项式的阶数。例如,将近似从四阶扩展到六阶可以在更宽的区间内提高保真度。这种方法保持了一个连续的近似,并避免了与域划分或分段评估相关的控制和存储开销。推广的成本是增加了少量与高阶项相关的乘累加操作。因此,推广遵循一个简单原则:更高阶的麦克劳林展开允许更宽的夹具范围,在近似复杂性和操作范围之间提供了可控的折中,同时保持了基于多项式的softmax实现的效率优势。

6. 结论
本文提出了一种用于小型FPGA上视觉Transformer加速的低精度softmax近似方法。该方法结合了截断的麦克劳林级数指数和输入夹具,使得softmax评估可以通过轻量级的代数数据路径而不是高精度指数运算、大型查找表或迭代方法来实现。关键洞察是,极端的注意力分数值对最终重建质量的贡献可以忽略不计,因此可以在不显著降低PSNR或SSIM的情况下对其进行限定。由于夹具操作是在算法层面引入的,我们首先使用Python和Google Colab与SwinIR推理在软件中验证了所提出的公式。这使我们能够在将相同方法实施到面向FPGA的设计之前,直接测量夹具选择对图像重建质量的影响。软件层面的验证表明,夹具不仅仅是对硬件的数值上的便利,而是一种有效的近似策略,能够保留高质量重建所需的注意力行为。

实验结果表明,仅使用四阶多项式是不够的,但所提出的夹具公式将性能恢复到了接近参考softmax实现的水平。在SwinIR-M上,该方法相比参考实现仅产生了0.15 dB的PSNR损失和0.0059的SSIM损失;而在SwinIR-L上,它实现了有竞争力的SSIM,并在某些测试案例中获得了略高的PSNR。这些独立的增益不应被解释为相对于精确softmax的系统优势,但它们确实表明近似可以与重建流程良好地配合。从硬件角度来看,所提出方法的关键优势在于它避免了通常与指数函数相关的极大中间值的生成。低阶多项式近似和输入夹具的结合确保了归一化阶段在紧凑的数值范围内操作。这显著降低了整数和分数精度要求,消除了对浮点运算、对数范围压缩或大型查找表的需求。霍纳形式的实现进一步限制了中间精度的增长,减少了资源需求,从而可以在小型FPGA设备上释放片上内存用于更大的瓷砖尺寸和更高效的数据流。

目前的验证仅限于SwinIR和图像超分辨率,因此更广泛的跨模型评估仍然是未来的工作。尽管如此,结果表明,视觉Transformer中的softmax可以以一种考虑重建和硬件效率的方式重新构思。因此,所提出的夹具多项式softmax为在资源受限的FPGA平台上部署基于注意力的图像恢复模型提供了一条实用路径。
相关新闻
生物通微信公众号
微信
新浪微博

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号