一种残差路径感知的FPGA故障鲁棒量化感知训练方法及系统
本发明涉及人工智能模型压缩、量化感知训练、神经网络硬件部署和fpga故障容忍,尤其涉及一种面向含残差连接的量化神经网络,在 fpga/hls 数据流结构下进行残差路径风险建模并据此执行故障鲁棒量化感知训练的方法及系统。
背景技术:
1、随着深度神经网络在嵌入式设备、工业边缘计算和实时智能感知场景中的应用增多,使用fpga对量化神经网络进行加速成为一种常见方案。fpga 具有可重构、并行度高和能效较高等特点,适合将卷积、池化、逐元素加法等神经网络算子映射为流式硬件流水线。
2、量化感知训练能够在训练阶段模拟低比特宽计算,从而降低模型部署到定点硬件后的精度损失。现有量化感知训练通常关注权重量化误差、激活量化误差、模型整体精度和硬件资源约束,但较少同时考虑fpga数据流实现中的实际驻留时间、fifo 深度、流宽、路径差异等硬件暴露因素。
3、故障感知训练或故障注入训练已经被用于提高神经网络在比特翻转、存储扰动或计算错误下的鲁棒性。例如,已有公开研究提出在训练过程中注入硬件错误,使量化神经网络在存在硬件故障时保持较高推理可靠性。
4、上述技术能够分别解决神经网络故障鲁棒性或硬件感知量化问题,但仍存在不足:其一,故障注入往往按层、按算子或按参数整体处理,未针对残差网络中主分支路径与捷径分支路径的硬件数据流差异进行建模;其二,训练阶段的软件敏感度与fpga高层综合后真实形成的 fifo 深度、流宽和路径驻留时间之间缺少统一风险指标;其三,对于残差相加之前的两条路径,现有方法难以判断哪一条路径应当在训练中获得更强的故障注入约束或保护强度。
5、含残差连接的神经网络中,主分支路径通常包含卷积、激活等计算,捷径分支路径可能为恒等映射、通道调整或降采样映射。在软件模型中,捷径分支看似计算较少,但在fpga流式数据流实现中,为了与主分支在残差加法节点处对齐,捷径分支可能需要较深fifo 缓存或带宽调整结构。因此,仅从软件模型结构判断路径风险是不充分的。
技术实现思路
1、要解决的技术问题
2、本发明旨在解决现有量化感知训练和故障感知训练未充分考虑残差网络中主分支路径与捷径分支路径在fpga数据流硬件实现中具有不同故障暴露程度的问题。
3、具体而言,本发明要解决如下问题:
4、1. 如何在含残差连接的量化神经网络中识别残差相加之前的主分支路径和捷径分支路径;
5、2. 如何分别度量不同残差路径在软件故障注入下的敏感度;
6、3. 如何从fpga高层综合或数据流中间表示中提取路径级硬件暴露信息;
7、4. 如何将软件敏感度与硬件暴露信息组合为可用于训练调度的路径级风险指标;
8、5. 如何依据该路径级风险指标调整量化感知训练过程,使高风险路径获得更强故障鲁棒性约束。
9、技术方案
10、为解决上述问题,本发明提出一种残差路径感知的fpga故障鲁棒量化感知训练方法。该方法包括:获取含残差连接的量化神经网络模型;识别残差加法节点及其前级主分支路径和捷径分支路径;对路径执行软件比特翻转故障注入以获得路径级软件故障敏感度;将模型转换为fpga高层综合数据流表示,从该数据流表示中提取各路径的 fifo 深度、流宽、数组并行度等硬件暴露信息;构造路径级风险指标;根据风险指标调节训练中的故障注入概率、鲁棒损失权重或量化保护强度。
11、本发明中的路径级风险指标可表示为:
12、
13、其中,表示残差层或残差块,表示路径类型, 表示软件故障敏感度,表示空间硬件暴露量, 表示时间硬件暴露量。
14、有益效果
15、与现有技术相比,本发明至少具有如下有益效果:
16、1. 能够区分残差连接中主分支路径和捷径分支路径的故障风险,而不是对整个残差块进行统一处理;
17、2. 能够将软件故障敏感度与fpga高层综合后形成的 fifo 深度、流宽和数据驻留时间结合;
18、3. 能够在训练阶段优先增强高风险路径的故障鲁棒性,提高训练资源和故障注入预算的使用效率;
19、4. 能够为fpga部署前的量化模型提供路径级风险解释,有利于进行差异化量化、故障注入、冗余保护或资源分配;
20、5. 对 resnet 类网络及其他含主分支和捷径分支融合结构的网络具有通用性。
1.一种残差路径感知的fpga故障鲁棒量化感知训练方法,其特征在于,包括如下步骤:
2.根据权利要求 1 所述的方法,其特征在于,步骤 s2 中,所述残差加法节点为通用中间层协议onnx或qonnx计算图中的相加节点,或者为经 fpga 高层综合转换后得到的数据流加法核节点;若在 fpga 高层综合数据流表示中识别残差路径,则将与同一数据流加法核节点相连的多个输入流按来源进行分组,分别确定主分支路径和捷径分支路径。
3.根据权利要求 1 所述的方法,其特征在于,步骤 s3 中,软件故障注入包括:在预设样本集合上,对指定残差层、指定路径和指定比特位的量化激活值或中间张量执行比特翻转,并统计由该比特翻转导致的分类错误率、条件错误率、预测类别变化率或其组合。
4.根据权利要求 1 所述的方法,其特征在于,所述软件故障敏感度 根据多个比特位和多个随机种子的故障注入结果获得,并包括路径平均条件错误率、最高敏感比特位错误率、按比特位加权的路径错误率中的至少一种。
5.根据权利要求 1 所述的方法,其特征在于,步骤 s4 中,所述空间暴露量 根据路径对应 fifo 或数据流缓存的深度、并行数组数量和单个数据字比特宽计算得到;当fifo 数据类型为数组型高层综合类型时,单个数据字比特位宽根据数组元素比特位宽与数组元素数量的乘积确定。
6.根据权利要求 1 所述的方法,其特征在于,步骤 s4 中,所述时间暴露量 采用路径对应 fifo 深度、路径最大 fifo 深度、高层次综合工具(hls)调度周期、寄存器传输级(rtl)仿真驻留周期或其组合作为时间暴露代理。
7.根据权利要求 1 所述的方法,其特征在于,步骤 s5 中,所述路径级风险指标按照下式计算或者在所述公式基础上引入归一化系数、路径权重系数、比特位权重系数或硬件保护成本系数。
8.根据权利要求 1 所述的方法,其特征在于,步骤 s6 中,对风险较高的路径执行如下至少一种训练调整:提高该路径的比特翻转注入概率;提高该路径对应损失项权重;优先对该路径的高敏感比特位进行故障注入;对该路径采用更高精度量化、更严格裁剪阈值或冗余保护策略。
9.根据权利要求 1 所述的方法,其特征在于,所述量化神经网络模型为含残差连接的卷积神经网络、残差网络、轻量化残差网络、目标检测网络中的残差子结构或其他含主分支与捷径分支融合结构的神经网络。
10.一种残差路径感知的 fpga 故障鲁棒量化感知训练系统,其特征在于,包括:模型解析模块、路径识别模块、软件敏感度评估模块、硬件暴露提取模块、风险建模模块和训练调度模块;其中,所述各模块用于执行权利要求 1 至 9 任一项所述的方法。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com