体系结构论文(六十七):A Machine-Learning-Guided Framework for Fault-Tolerant DNNs

A Machine-Learning-Guided Framework for Fault-Tolerant DNNs DATE 2024

研究动机

深度神经网络(DNN)虽然对某些扰动具有天然的容错性,但在面对硬件故障 (如软错误、老化、环境干扰等)时,仍会出现输出错误。而常见的容错手段如**三模冗余(TMR)错误更正码(ECC)**成本过高,特别是在面对大型神经网络时。因此,该研究旨在:

  • 识别 DNN 中对故障更敏感的关键参数;

  • 在保障准确性的同时,以更低成本进行选择性加固。

提出的方法框架

Step I:统计性 Fault Injection(FI)
  • 对 DNN 各层的权重进行随机比特翻转注入;

  • 用少量注入实现高置信度的关键性评估;

  • 作为后续机器学习训练的样本来源。

Step II:关键性预测(ML-based Criticality Prediction)
  • 使用**随机森林(RF)均衡随机森林(BRF)**等分类模型;

  • 输入特征包括比特位位置、符号、所在层等;

  • 预测未注入部分的参数或比特是否"关键";

  • 用户可根据所能容忍的准确率下降(如0.5%~10%)定义"关键"的标准。

Step III:选择性加固(Selective Hardening)
  • 仅对预测为"关键"的参数使用 Hamming ECC;

  • 非关键部分不做保护,以此减少内存与硬件开销;

  • 引入一个"关键性签名表"记录每个参数是否需要保护,并对其自身进行加固防止篡改。

所提方法的整体框架

论文提出的机器学习引导容错框架分为三个步骤:

Step I:统计性故障注入(Statistical Fault Injection, FI)

  • 目的:通过模拟比特翻转来评估神经网络权重的脆弱性;

  • 策略:不是进行全面注入,而是只对部分参数位注入,通过统计手段(控制置信区间与误差范围)来评估;

  • 实验设置

    • 故障类型:单粒子翻转(SEU,非破坏性软错误);

    • 目标:LeNet-5 与 ResNet-18 的权重参数;

    • 注入次数:LeNet-5 共注入约 29 万次 ,ResNet-18 共注入 210 万次

    • 容忍误差:99%置信度,误差 <1%。

【Table I 】Fault Injection Results

该表展示了注入后的参数按"容忍精度下降"所划分的"可接受"(Acceptable)和"关键"(Critical)比例:

模型/编码 FP32 精度下降0.5% FxP32 精度下降0.5% FxP16 精度下降0.5% FxP8 精度下降0.5%
LeNet-5 1.77% 的位是关键 0.79% 0.29% 0.30%
ResNet-18 8.44% 的位是关键 4.62% 4.44% 4.22%

📌 结论

  • 固定点格式(FxP)的容错能力 远优于浮点格式(FP32)

  • 容错能力提升的原因是:FxP 的数值范围更窄,因此位翻转不容易产生"异常值";

  • 容忍精度下降越多,关键位所占比例越少。

Step II:机器学习预测参数关键性(ML-based Prediction)

  • 训练数据:来自 Step I 中的 FI 结果;

  • 目标:预测所有参数(包括未注入的)中哪些是"关键的";

  • 输入特征

    • 被注入的位在权重中的位置;

    • 位的符号(正负);

    • 所属网络层;

    • 受影响的输出特征图与滤波器通道;

  • 使用模型

    • 随机森林(Random Forest, RF)

    • 平衡随机森林(Balanced RF, BRF),应对类别不平衡问题;

  • 评估方式:10折交叉验证,训练集/测试集比例为70%/30%;

  • 输出指标

    • ROC AUC:越接近1表示分类越准确;

    • 四类预测情况:TP、FP、FN、TN。

【Table II 】ML-based Fault Prediction Model

LeNet-5 / FP32 / 容忍精度下降0.5% 为例:

| 真正关键 | 预测正确 (TP) = 1.73% | 被误判为可接受 (FN) = 0.03% | | 真正可接受 | 预测正确 (TN) = 98.16% | 被误判为关键 (FP) = 0.06% |

结论

  • ROC AUC 均 > 0.99,说明整体预测非常准确;

  • RF 对类别不平衡敏感,会高估"可接受";

  • BRF 减少了误判为"可接受"的关键位,但也会误把一些"可接受"当作"关键"保护,增加了额外成本(但不影响功能,仅增加硬件资源消耗);

  • 用户可在鲁棒性与代价之间权衡选择。

Step III:选择性加固(Selective Hardening)

  • 原则:只对预测为关键的参数加 ECC;

  • ECC 类型:Hamming ECC(单比特纠错);

  • 存储设计

    • 引入"关键性签名表":每个参数是否需要加固,用一个比特记录;

    • 该签名表也用 ECC 加固,以防自身出错。

【Table III 】Memory Overhead Comparison
编码 全保护(AP) 仅保护关键参数(CP) 签名区(Sign.) 节省开销(Gain)
LeNet-5 FP32 18.75% 9.926% 3.125% 节省约 30.4%
LeNet-5 FxP32 18.75% 0.740% 3.125% 节省约 79.4%
ResNet-18 FxP8 50.00% 2.476% 12.5% 节省约 70.0%

结论

  • 选择性加固策略在 固定点格式中尤为有效,节省内存开销显著;

  • 即使考虑"签名表"的存储成本,整体依旧有极大压缩优势。

相关推荐
十三画者2 分钟前
【文献分享】SpatialZ弥合从平面空间转录组学到三维细胞图谱之间的维度差距
人工智能·数据挖掘·数据分析·数据可视化
一条咸鱼_SaltyFish2 分钟前
[Day13] 微服务架构下的共享基础库设计:contract-common 模块实践
开发语言·人工智能·微服务·云原生·架构·ai编程
童欧巴2 分钟前
DeepSeek V4,定档春节
人工智能·aigc
爱学习的张大4 分钟前
深度学习中稀疏专家模型研究综述 A REVIEW OF SPARSE EXPERT MODELS IN DEEP LEARNING
人工智能·深度学习
爱打代码的小林9 分钟前
CNN 卷积神经网络 (MNIST 手写数字数据集的分类)
人工智能·分类·cnn
川西胖墩墩11 分钟前
游戏NPC的动态决策与情感模拟
人工智能
E_ICEBLUE12 分钟前
零成本实现文档智能:本地化 OCR 提取与 AI 处理全流程实战
人工智能·ocr
乾元13 分钟前
无线定位与链路质量预测——从“知道你在哪”,到“提前知道你会不会掉线”的网络服务化实践
运维·开发语言·人工智能·网络协议·重构·信息与通信
MistaCloud13 分钟前
Pytorch深入浅出(十五)之GPU加速与设备管理
人工智能·pytorch·python·深度学习
源于花海13 分钟前
迁移学习的第一类方法:数据分布自适应(3)——联合分布自适应
人工智能·机器学习·迁移学习·联合分布自适应