分享自:

面向嵌入式边缘计算的图基大间隔分类器的硬件实现改进设计

期刊:IEEE Transactions on Neural Networks and Learning SystemsDOI:10.1109/TNNLS.2022.3183236

学术研究报告:面向嵌入式边缘计算的大间隔图分类器硬件实现改进设计

本报告旨在介绍一篇发表于2024年1月《IEEE Transactions on Neural Networks and Learning Systems》第35卷第1期的原创性研究论文。论文标题为《面向嵌入式边缘计算的基于图的大间隔分类器硬件实现的改进设计》。以下将对该研究进行全面阐述。

第一, 研究作者、机构与发表信息 本研究由Janier Arias-Garcia、Alan Cândido de Souza、Liliane Gade、Jones Yudi、Frederico Coelho、Cristiano L. Castro、Luiz C. B. Torres及Antonio P. Braga共同完成。作者团队主要来自巴西的几所著名高校,包括Universidade Federal de Minas Gerais (UFMG)、Universidade de Brasília (UnB)和Universidade Federal de Ouro Preto (UFOP)。该研究正式发表于2024年1月的《IEEE Transactions on Neural Networks and Learning Systems》期刊。

第二, 学术背景与研究目标 本研究属于机器学习硬件加速嵌入式边缘计算的交叉领域。随着物联网(IoT)设备数量的激增,大量数据在边缘侧产生,亟需机器学习算法实现任务自动化与流程优化。然而,许多基于显式优化的几何分类器(如支持向量机,SVM)计算复杂度高,难以直接部署在资源(尺寸、处理能力、内存、功耗)受限的嵌入式设备上,这限制了它们在复杂工业边缘应用中的适用性。

研究背景知识主要围绕一种名为CHIP-CLAS(在原文中被提及为“supported edge classifier”)的几何分类器展开。该分类器基于Gabriel图(Gabriel Graph)的结构信息寻找最大分类间隔,无需进行超参数调优或复杂的优化算法,从而避免了传统SVM等方法的计算瓶颈和用户交互需求。其衍生算法NN-CLAS进一步通过简化计算,为硬件实现提供了可能性,但其资源消耗仍随数据集规模增大而增加。

因此,本研究的目标在于评估并设计策略以降低基于NN-CLAS的分类器在嵌入式系统上的实现成本。具体目标包括:1)评估数值精度降低(从32位浮点数到16位浮点数)对模型性能的影响,寻找精度与性能之间的权衡;2)设计并实现一种新型的硬件加速器架构,专门用于处理算法中计算密集的瓶颈操作——二次欧几里得距离(QED)计算和近邻图/边界图生成步骤;3)最终实现一个完整的片上学习系统,使其在保持与基线模型统计等效性能的同时,显著提升处理速度并降低资源与功耗消耗。

第三, 详细研究流程与方法 本研究的工作流程主要包含三大核心环节:数值精度影响评估、新型硬件加速器架构设计以及完整的嵌入式系统集成与测试。

1. 数值精度修改方法评估: * 研究对象与样本: 研究使用了合成数据集以及多个公开的真实世界基准数据集,如“Breast Hess”、“Bupa (Liver Disorders)”和“Golub”等,用于全面评估精度降低的影响。数据集在样本数量和维度上有所不同。 * 处理与实验方法: 研究者将NN-CLAS分类器的硬件实现从标准的32位单精度浮点数(FP32, IEEE 754标准)缩减到两种16位浮点格式:一种是标准的IEEE半精度浮点数(FP16),另一种是新兴的Brain Floating Point格式(BF16, bfloat16)。BF16的特点是保持了与FP32相同的指数位宽(8位),但大幅缩减了尾数位宽(7位),从而在牺牲一些精度的同时,保留了更广的动态数值范围。 * 数据分析流程: 首先,在训练阶段,通过软件仿真(ModelSim)计算不同精度格式下QED步骤的距离矩阵,并与高精度(FP32)结果比较,使用均方误差作为量化指标。其次,在分类阶段,对完整分类流程进行仿真,并使用受试者工作特征曲线下面积(AUC)作为性能评估指标,对FP32、FP16和BF16三种格式的结果进行统计分析(采用Friedman检验),以判断性能差异是否显著。

2. 硬件优化架构设计: * 瓶颈分析与目标: 通过对算法在ARM处理器上的性能剖析(Profiling),确定近邻图生成步骤占据了总执行时间的61.4%,是主要的计算瓶颈。该步骤涉及大量具有数据依赖性的不等式比较(条件为 d²(i, j) ≤ [d²(i, k) + d²(j, k)]),硬件实现复杂。 * 创新硬件架构开发: * 新型PG(Proximity Graph)架构: 针对PG计算,研究团队设计了一种基于脉动阵列的流水线硬件架构。该架构由多个相同的处理单元串联而成。每个PE包含一个寄存器和一个浮点加法器。通过精心设计的数据流和控制信号,该架构能够高效、流水线式地计算所需的所有不等式条件中的求和项。论文以4x4距离矩阵为例,详细阐述了数据如何在PE阵列中流动,并在特定时钟周期后产出用于比较的求和结果。随后,专用的比较器模块接收这些求和结果以及对应的d²(i, j)值,并行完成条件判断,从而确定Gabriel图的边。 * 级联PG/BG(Proximity Graph/Border Graph)架构: 为了解决大规模数据集下硬件资源可能不足的问题,并保持数据持续供给流水线,研究者提出了级联方法。其核心思想是将整个训练数据集分割成若干块。硬件并行处理多个数据块(例如两个),每个块独立生成其几何向量。然后,一个特殊的“合并系统”负责组织和整合来自不同数据块的结果。这种方法在资源有限的情况下,实现了处理能力的可扩展性。 * 新型QED(Quadratic Euclidean Distance)架构: 为了与新的PG架构无缝衔接并提供高效的数据流,研究者重新设计了QED计算单元。新架构采用FIFO(先进先出)存储器来缓存和顺序输出样本特征,并利用多个并行的流水线浮点运算单元(减法器、乘法器、加法器)来计算上三角距离矩阵中的所有元素。该架构同样采用16位浮点格式,并在每个时钟周期都能输出一个新的距离计算结果(在初始延迟之后)。 * 完整系统集成: 将上述QED和PG/BG硬件加速器集成到一个基于Xilinx Zynq SoC的嵌入式系统中。Zynq芯片的ARM处理器作为主控单元,负责系统控制、数据I/O以及算法中非加速部分的软件执行。硬件加速器通过AXI总线与处理器系统通信,利用DMA进行高速数据传输。计算得到的边信息存储在专用的Block RAM中。

第四, 主要研究结果 1. 数值精度评估结果: * 训练阶段精度损失: 如图7所示,与FP32基准相比,使用16位浮点格式(无论是FP16还是BF16)在距离计算中都会引入均方误差,且误差随着样本数和维度的增加而增大。其中,BF16由于尾数位更少,其MSE高于FP16。但这与预期一致,属于量化误差。 * 分类阶段性能对比: 如表II和图8所示,在多个真实数据集上的测试表明,NN-CLAS分类器在使用FP32、FP16和BF16三种不同数值精度格式时,其平均AUC性能没有统计学上的显著差异。Friedman检验的p值大于显著性水平,支持了零假设(即不同精度间性能无差异)。尽管在“Australian Credit”数据集上,FP16表现较差,但BF16却取得了与FP32相当的平均AUC,这显示了BF16格式在动态范围上的优势。 * 结果逻辑关系: 精度评估结果至关重要,它为后续的硬件优化提供了理论依据。结果表明,将计算精度从32位大幅降低到16位(尤其是BF16格式),并不会导致模型分类性能的统计显著下降。这证明了通过降低数值精度来节约硬件资源(如逻辑单元、内存带宽、功耗)的可行性,使得在资源受限的嵌入式设备上部署高性能分类器成为可能。

2. 硬件实现性能与资源消耗结果: * 性能加速: 如表III所示,最终实现的完整硬件加速系统(命名为NN16BF-CLAS)在处理一个包含1000个样本的合成分类问题时,相较于纯软件实现(在Zynq的ARM核上运行)实现了约4.39倍的全局加速。与之前研究中提出的NN-CLAS硬件架构相比,新架构速度提升了约5.295倍。即使与使用了NEON协处理器的ARM实现相比,新硬件加速器仍有2.297倍的速度优势。系统最高工作频率达到131.5 MHz,写操作吞吐量高达16.9 MB/s。 * 资源与功耗消耗: 如表IV所示,NN16BF-CLAS架构在Xilinx Zynq FPGA上的资源占用情况为:使用了约36.25%的查找表(LUT)、9.66%的LUT RAM和17.89%的触发器(FF)。与作为对比的NN-CLAS架构相比,NN16BF-CLAS虽然多用了约50.75%的LUT和16.11%的FF,但节省了58%的数字信号处理器(DSP)和28%的块RAM(BRAM)。在功耗方面,NN16BF-CLAS的总功耗略低于NN-CLAS。 * 与相关工作的对比: 论文还将NN16BF-CLAS与其它致力于硬件实现分类器(主要是SVM)的研究进行了对比。尽管对比系统采用的算法、设备和目标应用不同,但NN16BF-CLAS在资源利用效率和功耗方面显示出优势。例如,对比的一些SVM实现需要更高的精度(导致更多DSP使用)和更复杂的优化步骤,从而消耗更多资源并限制了最大工作频率(如70 MHz)。NN16BF-CLAS则通过其无优化、基于几何图的特性,在保持性能的同时实现了更高效的硬件映射。 * 结果对结论的贡献: 硬件实现结果直接验证了研究目标的达成。新型的脉动阵列PG架构和级联方法有效加速了瓶颈步骤。采用BF16格式在保证性能的同时,显著减少了对DSP和BRAM等昂贵硬件资源的依赖。最终的系统在速度、资源占用和功耗方面均取得了优于或可比拟于现有方案的平衡,证明了所提设计策略的有效性。

第五, 研究结论与价值 本研究成功设计并实现了一种用于距离基分类器的高效硬件加速器。主要结论与价值如下:

  1. 方法学价值: 研究提出了一套完整的方法学设计策略,包括通过降低数值精度(采用BF16格式)来权衡性能与硬件成本,以及设计高度并行的专用处理单元(PE)和可扩展的脉动阵列结构。这为类似机器学习算法在嵌入式系统中的硬件实现提供了可借鉴的路径。
  2. 技术创新价值: 提出的新型PG硬件架构及其级联变体,创新性地解决了Gabriel图生成中数据依赖性强、计算密集的难题。新型QED架构则提供了与之匹配的高效数据供给。这些核心IP的设计具有原创性。
  3. 应用实践价值: 最终实现的NN16BF-CLAS系统展示出在嵌入式边缘设备上部署完整“片上学习”的潜力。该系统无需云端训练、无需用户调参、能保护本地数据隐私、降低通信延迟,非常适合于对延迟敏感、资源受限且注重数据安全的物联网和工业边缘计算应用场景。
  4. 对数值格式选择的见解: 研究通过实证表明,对于所研究的几何分类器,BF16这种非标准的16位浮点格式,由于其更大的指数范围,在降低精度时可能比标准的IEEE FP16格式更具优势,能在某些情况下更好地维持模型性能。这为边缘AI芯片的算术单元设计提供了参考。

第六, 研究亮点 1. 重要发现: 核心发现是所研究的基于Gabriel图的几何分类器(NN-CLAS)对低精度计算具有鲁棒性。使用16位浮点数(特别是BF16)实现,其分类性能与32位高精度实现相比统计等效,这为大幅压缩硬件资源打开了空间。 2. 方法新颖性: 针对PG计算的脉动阵列硬件架构设计是主要创新点。它通过巧妙的流水线和数据流控制,高效处理了不规则且具有依赖性的图构建计算,实现了高性能加速。 3. 可扩展性设计: 提出的级联PG/BG架构允许系统通过分块处理来适应不同规模的训练集,克服了硬件资源限制,增强了方案的实用性和可扩展性。 4. 系统性优化: 研究并非单一优化,而是从数值精度、计算架构到系统集成进行了全栈式的协同设计与优化,最终达成了速度、面积和功耗的综合提升。

第七, 其他有价值内容 论文中还提及了该研究的广泛意义,例如有助于实现去中心化的学习架构,增强数据安全(数据保留在本地防火墙后)。同时,作者团队对资助机构(如FAPEMIG, CNPq, CAPES)以及Xilinx大学计划(XUP)提供的支持表示了感谢,这体现了学术研究的合作与资助背景。参考文献部分也为读者深入了解几何分类器、硬件加速及对比研究提供了丰富的线索。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com