基于dropout算法的卷积神经网络单粒子翻转容错方法*
2021-09-26钱欢谢卓辰梁旭文
钱欢,谢卓辰,梁旭文
( 中国科学院微小卫星创新研究院 中国科学院微小卫星重点实验室,上海 201203; 中国科学院大学,北京 100049) (2019年12月11日收稿; 2020年4月8日收修改稿)
随着人工智能技术近些年的快速发展,其在深度学习、自然语言处理与计算机视觉等领域都取得了巨大成就。同时,人工智能也开始从智能化工具逐渐向智能机器进军,这使得原有的微控制单元(microcontroller unit,MCU)早已无法满足深度学习对海量数据运算和高速运算的要求, 人工智能(artificial intelligence,AI)芯片便应运而生,搭载神经网络的人工智能芯片这些年也是推陈出新,网络越来越复杂,功能也随之越来越强大。其中国外以IBM仿人脑TrueNorth芯片[1]和英伟达的GPU芯片系列最为著名,国内则有寒武纪的DianNao芯片和地平线机器人的BPU芯片等。
人工智能芯片技术作为未来人工智能的重要方向之一,在卫星应用领域可以大幅提升卫星大数据的快速提取、智能处理与分析等效率, 将会是卫星大数据领域发展的重要基础之一。而在现实世界里,编写神经网络的代码并不是在真空中运行,其需要一定的介质并且可能在复杂的空间环境中运行。神经网络程序将与其他程序一样共享计算资源,其中一些程序有一定攻击性。以rowhammer[2-3]攻击为例,在rowhammer攻击的期间,一行内存会以极高的速率重复写入数据,在擦除与写入的不断重复过程中产生的电磁噪声会导致相邻静态随机存取存储器(static random access memory,SRAM)[4]行中的部分比特位发生翻转,例如存储的数据如果是00001111,则可能会变成00001010。……
