空间通道层级联合结构化稀疏方法及加速器
本发明涉及边缘人工智能硬件加速,尤其涉及一种空间通道层级联合结构化稀疏方法及加速器。
背景技术:
1、cnn在计算机视觉、目标检测、图像识别等人工智能任务中取得了显著成效。随着自动驾驶、智能监控、可穿戴设备以及工业物联网等边缘智能应用的快速发展,越来越多的cnn模型需要被部署在移动终端、物联网设备和嵌入式平台等资源受限的设备上[1][2]。因此,如何在资源受限的边缘设备上,保证模型精度的同时实现cnn的高效硬件加速,已成为当前边缘智能领域中的一项亟待攻克的关键挑战。cnn模型具有计算复杂度高、参数存储需求大的特点。利用神经网络中的稀疏性进行模型压缩,已成为提升cnn加速器效率的重要技术路径。稀疏性可分为非结构化稀疏与结构化稀疏两大类。
2、非结构化稀疏中非零权重的分布极不规则,需要引入额外的机制,例如:索引存储、稀疏解码和动态调度,这会带来显著的硬件开销[3]。现有的非结构化稀疏加速方法主要分为两类:一类基于数据匹配,在乘累加操作前对输入激活和稀疏权重进行动态匹配,以识别有效的非零计算对,但由于非零元素分布高度不规则,匹配过程复杂,难以构建规则化的流水线执行结构,并且匹配关系随通道和空间位置动态变化,不利于高效的并行硬件执行;另一类基于结果收集,采用外积计算范式,将非零权重与所有非零激活成对相乘,从而避免前端复杂的操作数重排序和匹配过程,但生成的中间结果需动态路由至不同的累加单元进行聚合,后端的结果收集与累加过程本身具有较高的复杂度,通常需要复杂的基于交叉开关的互连结构和多级缓冲结构,带来通信和存储开销,同时中间结果的动态时空分布使得高效流水线累加变得困难,进一步增加了累加延迟、累加器访问频率和片上内存访问的压力。上述因素共同导致在边缘设备的有限资源下难以实现高效地加速。
3、结构化稀疏因其规则的数据组织和硬件友好的特性,成为面向移动推理和边缘部署的重要研究方向。现有结构化稀疏方法主要包括:通道级结构化稀疏、块级结构化稀疏和分层结构化稀疏。通道级结构化稀疏通过移除冗余的整个通道或卷积核实现模型压缩,具有硬件友好的优点,但由于不同通道通常编码特定的语义信息或底层视觉特征(例如:边缘、纹理和局部结构),粗粒度的剪枝容易降低网络的表示能力和整体表达能力。为了缓解高压缩比下的通道级稀疏带来的精度损失,近年来出现了如s2ta[4]等块级结构化稀疏方法,通过将输入通道划分为结构化组并进行块级稀疏化,在保持计算规则性的同时实现更灵活的冗余去除。然而,s2ta的稀疏建模仍主要依赖通道级结构,未能充分利用卷积核空间维度(即高度和宽度)上的结构冗余,因而在捕获更细粒度的稀疏模式方面能力有限。此外,已有研究表明,神经网络的不同层对稀疏性的敏感程度存在显著差异,层间冗余异质性明显,而s2ta在各层采用统一的稀疏配置,未能建模这种差异,导致某些层保留过多冗余而其他层被过度剪枝,从而引起性能下降。为了进一步增强稀疏灵活性,yannan nellie wu等人在s2ta基础上提出了分层结构化稀疏方法[5],在保留块级稀疏策略的同时引入更高级的剪枝机制,将多个稀疏块组合成更大的结构化剪枝单元,通过不同层级稀疏率的乘积实现整体稀疏率的更精细控制。然而,该方法仍依赖于相对粗粒度的结构规则,在高稀疏率下,这种粗粒度结构往往会削弱网络的表示能力,导致精度下降。
4、这一局限性使得该方法无法在边缘部署场景中充分利用高稀疏率的优势,在资源受限条件下仍存在可观的计算和内存冗余,从而限制了其实际效率。
5、参考文献
6、[1]y. feng, p. whatmough, and y. zhu, “asv: accelerated stereo visionsystem,” in proceedings of ieee/acm international symposium onmicroarchitecture (micro), 2019, pp. 643–656.
7、[2]z.-g. liu, p. n. whatmough, and m. mattina, “systolic tensorarray:an efficient structured-sparse gemm accelerator for mobile cnninference,” ieee computer architecture letters, vol. 19, no. 1, pp. 34–37,202.
8、[3]m. liu, c. zhou, s. qiu, y. he, and h. jiao, “cnn accelerator atthe edge with adaptive zero skipping and sparsity-driven data flow,” ieeetransactions on circuits and systems for video technology,vol. 33, no. 12,pp. 7084–7095, 2023.
9、[4]z.-g. liu, p. n. whatmough, y. zhu, and m. mattina, “s2ta:exploiting structured sparsity for energy-efficient mobile cnn acceleration,”in proceedings of ieee international symposium on high-performance computerarchitecture (hpca), 2022, pp. 573–586.
10、[5]y. n. wu, p.-a. tsai, s. muralidharan, a. parashar, v. sze, and j.emer,“highlight:efficient and flexible dnn acceleration with hierarchicalstructured sparsity,” in proceedings of ieee/acm international sym-posium onmicroarchitecture (micro), 2023, pp. 1106–1120
技术实现思路
1、针对资源受限边缘设备中卷积神经网络模型参数规模大、计算量高、存储开销大以及推理效率受限的问题,本发明提出一种空间通道层级联合结构化稀疏方法及加速器,通过结构化稀疏压缩与硬件协同优化相结合,在保证模型精度的前提下有效降低模型存储需求和计算开销,提高神经网络在边缘设备上的部署效率和推理性能,详见下文描述:
2、第一方面、一种空间通道层级联合结构化稀疏方法,所述方法包括:
3、获取预训练卷积神经网络模型,并对各网络层进行冗余度分析,以评估不同网络层对稀疏化处理的敏感程度;
4、根据当前网络层的冗余度指标、目标整体稀疏率、计算量以及参数规模确定基础稀疏单元的保留比例;
5、根据基础稀疏单元的保留比例,对当前网络层中的所有密集数据块进行配置,生成对应的结构化稀疏模式;
6、基于结构化稀疏模型进行微调训练,通过更新保留权重参数恢复模型精度,并对微调后的模型执行量化处理,将浮点权重和激活数据映射为低位宽整型表示,最终生成用于硬件部署的结构化稀疏量化模型。
7、其中,所述预训练卷积神经网络模型为:
8、对于卷积层,将输入通道维度划分为多个连续的子输入通道组,并将每个子输入通道组与对应卷积核的空间维度共同构成三维结构化数据块,将结构化数据块内部参与稀疏化处理的计算单元定义为密集数据块;
9、对于全连接层,沿输入神经元维度划分连续数据组构成密集数据块,实现卷积层与全连接层统一的数据组织方式和稀疏化处理流程。
10、第二方面、一种空间通道层级联合结构化加速器,所述加速器采用ps与pl协同工作的异构计算架构,ps侧负责系统控制、任务调度、数据通信以及软硬件协同管理,pl侧负责结构化稀疏神经网络的推理计算;
11、将输入特征图数据、压缩后的非零权重数据以及对应索引数据通过总线接口传输至数据存储模块,数据存储模块采用双缓冲机制;
12、基于输入特征图构建分布式独立管理存储架构,将输入特征图划分为多个独立存储块,每个存储块配置独立地址管理单元,不同存储块能够独立控制并行输出数据,实现流水线连续供数;
13、级联多路选择器根据索引信息从输入特征图中提取对应输入数据,并送入乘法器中完成输入数据与非零权重之间的乘法运算,级联多路选择器采用两级层次化结构,逐级完成数据选择;计算产生的结果送入量化模块进行量化处理。
14、其中,所述基于输入特征图构建分布式独立管理存储架构为:
15、当特征图数据来自卷积层时,按照输入通道维度对特征图进行分组存储,对于每组输入通道数据,按照特征图的行维度和列维度进行划分,并分别映射存储至对应的bram中;各bram中的存储地址与特征图空间位置一一对应;
16、当特征图数据来自全连接层时,则按照输入通道维度将数据划分为多个存储组,其分组数量与卷积层存储结构中的bram的分组数量保持一致,需维护单一地址变量即可完成数据访问控制。
17、其中,所述双缓冲机制为:
18、双缓冲机制由多个单读单写端口模式的bram构成,并通过地址空间划分构建两个逻辑缓冲区;根据缓冲区的读写状态以及空满状态对双缓冲区进行统一管理,实现数据写入与数据读取的并行执行。
19、其中,所述特征图数据首先将卷积核对应的高、宽范围内的数据以及部分输入通道数据组合形成一个密集块,并将该密集块发送至计算模块执行卷积运算;
20、若当前密集块的数据完成读取后,对特征图进行连续访问,通过卷积窗口在特征图空间维度上的滑动,流水线式获取后续密集块数据,并持续执行卷积计算;
21、随着卷积计算的进行,当前输出空间块对应的部分和数据不断写入累加和缓冲区,当累加和缓冲区被占满时,系统切换至下一组连续输入通道数据;
22、在保持当前输出空间块不变的情况下,按照与上述相同的方式再次获取对应密集块数据,并将计算结果累加至已有部分和数据中,直至全部输入通道计算完成,当一个输出空间块的所有输入通道均完成累加后,对该输出空间块对应的最终结果进行量化处理,并将量化后的结果输出至片外存储器。
23、本发明提供的技术方案的有益效果是:
24、1、本发明提出一种空间通道层级联合结构化稀疏方法,通过对卷积层权重的空间维度与通道维度进行联合划分,并结合层级稀疏配置策略,实现不同网络层的异构稀疏率分配,在提高模型压缩率的同时有效减少模型精度的下降;
25、2、本发明针对特征图数据构建统一的结构化数据块表示方式,使卷积层与全连接层采用一致的稀疏化处理流程,降低了稀疏数据存储、索引管理以及数据访问的复杂度,提高了模型与硬件架构之间的适配性;
26、3、本发明设计了面向结构化稀疏神经网络的硬件加速架构,通过分布式数据存储、双缓冲机制以及基于级联多路选择器的稀疏计算单元,实现数据访问与计算过程的高效协同,在降低硬件资源开销的同时提高了系统吞吐率和计算效率;
27、4、本发明高度适配算力、功耗、成本均受约束的边缘计算与嵌入式应用场景,可广泛覆盖自动驾驶实时感知、智能安防边缘分析、工业质检高吞吐处理、ar/vr低延迟交互及移动终端智能增强等需求;同时,其低功耗与高能效特性亦适用于智能物联网、无人机控制和遥感图像处理等资源受限领域,为ai推理从云端延伸至边缘侧提供了兼具性能与能效的硬件底座。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com