关于神经网络中忆阻器SBF缺陷的解决——论文阅读笔记1

文章探讨了忆阻器作为神经网络基础的挑战,特别是高缺陷情况下的设计与修复。研究了1T1M架构,SBF故障的影响及评估,提出通过再训练和冗余忆阻器设计来应对显著和不显著权重的缺陷,展示了在特定电导分布下,再训练的有效性和冗余忆阻器的成本效益。
摘要由CSDN通过智能技术生成
原论文-《Rescuing Memristor-based Neuromorphic Design with High Defects》

忆阻器交叉棒阵列:一种利用忆阻器(一种新型的非易失性存储器,它可以根据电压或电流的变化而改变自身的电阻值,从而实现信息的“记忆”)作为存储和计算单元的结构,它由两层相互垂直的金属纳米线交叉点上的忆阻器组成。(忆阻器是一种电阻值可以随电流变化而改变的器件,它可以实现非易失性的数据存储和模拟计算。)

(忆阻器交叉棒阵列可以用来执行矩阵运算,例如乘法累加(Multiply Accumulate, MAC)运算,这在数据密集型的应用中非常有用,例如神经网络、图像处理、优化问题等。忆阻器交叉棒阵列的优点是结构简单、设计方便、能效高、计算速度快、并行度高等。)

神经网络中的突触权值——由每个忆阻器的多个稳定的电导状态表示

1T1M(单晶体管-单忆阻器设计):将一个忆阻器和一个晶体管连接在一起,形成一个单元,然后将多个单元排列成一个矩阵,构成一个忆阻器交叉阵列。

【功能:通过改变忆阻器阻值来实现逻辑功能】

SBF故障:在高电导状态(“卡住”?)或低电导状态下冻结的设备。最高电导率gH时stuck-on,值为+1;最低电导率gL时stuck-off,值为-1。缺陷并不固定在+1/-1上。

设计采用忆阻器的全模拟电导范围,当g error超过容忍范围时,视该器件为缺陷。(其中g error为真实测量电导值与目标电导值之间的差值)

SBF影响评估:举例MNIST的2层神经网络:输入层—全连接层的突触权值矩阵W—输出层

                突触权矩阵WI的良好调整的浮点值将被映射到忆阻器阵列,可以提供的模拟电导

                随机生成缺陷矩阵WD

    测试过程:忆阻器阵列:784×10     stuck-on/stuck-off注入:5% ~ 30%,在每个设置点,随机产生缺陷1000次。

公式:

【E:全局误差          η:学习率         w-j,i :第i个输入的第j个神经元的权重    

Δw-j,i:由从下游单元j将错误传回后计算的更新权重

w-j,i 的敏感性(权重的显著性):对全局误差的影响程度,用∂E/∂wj,i量化】

        通过在理想神经网络中一个个安插缺陷权值的方法,测试出所有权值的显著性(对全局误差的影响程度),并根据插入缺陷后的Acc-real/Acc-ideal是否小于55%来将权重划分为两类。

        其中,不显著权重的stuck-on/off可以用剪枝的方法消除,而显著权重则需要新的方法。由于卡在stuck-on/off状态的忆阻器的权重无法调节了,所以需要通过改变其他所有可调节(正常状态)的忆阻器的权重值,从而恢复预测精度。【被卡住的权重会产生错误的输出,因此对不显著权重,直接剪枝会比保留被卡住不显著权重要更好】

恢复模型:网络再训练

  1. 权重初始化:不同于向神经矩阵中分配一个随机的权值,再训练过程使用理想权重矩阵W-ideal来作为初始的权重矩阵,从而加速再训练过程。   从芯片测试中获取有缺陷的忆阻器,得到缺陷忆阻器们的初始权值。
  2. 权值更新:采用反向传播更新神经权重。在再训练中,缺陷位置处的Δw-j,i被迫为0,即w-j,i在迭代中保持不变。

缺陷修复设计流程

(1).初始权重矩阵W-Ideal与忆阻器阵列实现的阵列电导矩阵G-Ideal之间的转换:

  (其中,α和β时两个线性映射系数,即使范围[ gL , gH ]内的电导被归一化为[ -1 , 1 ]中的权重。

因为通过阵列测试后得到了stuck-on/off的缺陷电导以及它们的位置信息,因此我们还获得了一个缺陷电导阵列G-defect(同样的,电导阵列G-defect可以转换为缺陷权重阵列W-defect)

(2).进行缺陷检查:

  1. 缺陷只出现在不显著权重上:可省略再训练过程。
  2. 缺陷出现在显著权重上:保持缺陷处权重Wj,i不变,开始在包含缺陷的情况下重新进行正向传播和反向传播过程,并修正可调整的权重矩阵,直至新的权重矩阵能使精度恢复为止。
  3. 最坏情况(存在太多缺陷/性能无法得到修复):利用多余忆阻器纵列的重映射算法将被采用。这个算法需要外部电路(如TIA和sample-and-hold blocks电路块)来支持多余纵列的重新路由和操作。

(与内存域中的冗余列?相比,在神经网络计算系统中,只有一小部分最显著的缺陷权重将被映射到冗余列中)

评估

忆阻器正常工作电导范围设置:[1uS , 300uS]   stuck-on:[300uS , 1200uS]   stuck-off:[0.01uS , 1uS]

测试对象:MNIST数据集—两层/三层神经网络,1000个测试案例(缺陷在随机位置、随机stuck-on/off,缺陷忆阻器具有随机电导值)

两层神经网络

        纵坐标是Acc-real/Acc-ideal,横坐标为缺陷忆阻器占比。图(a)是原始的加入SBF缺陷后的精度变化,而图(b)则是经过再训练过程后的。

(图表中竖线的上下端分别代表了最好和最坏情况下的归一化精确度,在图(a)中产生如此大差距的原因是因为缺陷出现的位置(显著/不显著权重处)不同。而我们可以观察到,在经过再训练过程后,图(b)中,20%缺陷处最好情况和最坏情况之间的差距已经缩小到了小于0.4%的程度。)

三层神经网络(输入层-隐藏层-输出层)

        横纵坐标含义与两层神经网络相同。W1代表输入层和隐藏层之间的权重矩阵,W2则代表隐藏层与输出层之间的权重矩阵。在图表中,红色W1图线代表只有W1权重矩阵中出现SBF缺陷时的情况,紫色W2图线代表只有W2权重矩阵中出现SBF缺陷时的情况。而绿色W1&W2代表W1和W2权重矩阵均出现SBF缺陷的情况。

(W1出现缺陷对预测精度的影响程度比W2高的原因在于,W1被设计用来学习图像的特征,所以会产生更严重的影响。同时W2经过再训练后可以恢复到99.6%的精度,即是说W2的可恢复性很高,因此,再训练的恢复能力以权重矩阵W1为主。)

电导分布图(双层网络)

        图(a)是理想情况下的电导分布。图(b)/图(c)是加入stuck-on/stuck-off缺陷后,经过再训练后电导的分布情况。观察可知,可调整的电导值确实发生了变化,且再训练的方法相较于之前的研究,有着对stuck-on/off两种缺陷均适用的优势。

可恢复性

         如图可以看出,不显著权重处出现SBF缺陷时,再训练的可恢复性明显好于在显著权重处出现。(去除不显著权重处SBF缺陷带来的精度下降,当缺陷全部出现在不显著权重处时,到底需不需要进行再训练?)

冗余忆阻器设计

针对显著权重处存在较多SBF缺陷,且难以通过再训练恢复到较高预测精度的情况,提出冗余方案:被SBF缺陷影响严重的列将被具有重新映射算法的附加忆阻器列取代。从新的忆阻器列中产生的输出将被应用于下一步的计算。(具体电路结构如图(a)所示,可理解为用一个新的忆阻器阵列来取代电导出现特殊问题,但权重十分显著的原阵列)

具体设计:只考虑将最显著的缺陷权重(如显著缺陷权重中显著性最高的5%)用冗余忆阻器列取代,从而减少需要的忆阻器列的数量,降低设计成本。

测试结果:图(b)中的横坐标为取0%~5%的最显著缺陷权重(总SBF缺陷权重占20%的情况),纵坐标仍是归一化精度。随着重映射阵列数的增多,预测精度也逐渐上升。且观察图表发现,重映射权重从4%增加到5%时,预测精度的上升逐渐缓慢,因此该方案不需要太多的冗余列,设计成本不会太高。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值