• 首页
  • 科学成果
  • 基于新兴非易失性存储器件的脑启发计算(二)-张鑫博士

基于新兴非易失性存储器件的脑启发计算(二)-张鑫博士

2021-07-15

  在传统的冯-诺依曼计算机体系架构中,众所周知的数据在微处理器和片外存储器之间搬移的内存墙问题已经成为整个系统的瓶颈[1]。当大规模神经网络的训练和测试需要大量的数据进行计算时,这个问题就更加严重了。由于神经启发的学习算法广泛涉及大规模的矩阵操作,直接在芯片上利用更细粒度级别的并行性的计算范式很有吸引力。一个有希望的解决方案是神经启发架构,它利用了神经元中的分布式计算和突触中的局部存储。这种以神经为灵感的架构利用了神经元中的分布式计算和突触中的局部权重存储[2]。下图显示了计算范式从以计算为中心(冯氏架构)的体系架构到以数据为中心(神经启发)的体系架构的革命性转变。

  从以计算为中心(冯氏架构)的体系架构到以数据为中心(神经启发)的体系架构的革命性转变 (a)冯-诺依曼架构(b)神经启发架构

  神经元是简单的计算单元(非线性激活或阈值功能),突触是通过通信通道大量连接的本地存储。神经启发计算硬件实现的最终目标是补充(而非取代)当今主流的冯-诺伊曼架构,用于特定应用的智能任务,如图像/语音识别,自动驾驶等。

  1. 神经形态硬件设计方法介绍和分类

  到目前为止,不同的部分并行的硬件平台来实现神经启发的学习算法已经被开发。通常,有两种神经形态硬件设计方法,它们取决于如何编码信息。第一种方法停留在机器/深度学习或人工神经网络(Artificial Neural Network,即ANN)的数字(非峰值)实现,同时从神经系统中获得灵感,以最大限度地实现并行或分布式计算。在数字实现中,神经元值通过二进制位或脉冲数或电压水平进行编码。作为一种现成的技术,GPU(Graphics Processing Unit,缩写:GPU)[3]或现场可编程门阵列(Field Programmable Gate Array,FPGA)[4]已被广泛用于机器/深度学习的硬件加速。

  为了进一步提高能效,CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体) ASIC(Application Specific Integrated Circuit,专用集成电路)加速器已经原型化[5][6]。例如,谷歌使用他们定制的TPU(Tensor Processing Unit,张量处理单元)平台来加速AlphaGo[7]背后复杂的智能计算任务(图3)。数字(非尖峰)方法的目的是在吞吐量和功率方面提高计算效率[单位为万亿次(1012)操作每秒每瓦特(TOPS/W)]。

  第二种方法利用尖峰神经网络(Spiking Neural Network,SNN)的尖峰行为,目的是更接近地模拟生物真实的神经网络。在尖峰方法中,神经元的值是通过尖峰时间(例如,尖峰之间的间隔)编码的,甚至是尖峰的实际波形形状。例子包括定制设计的基于CMOS的神经形态芯片(例如,Heidelbergs的BrainScaleS, IBM的TrueNorth等)。BrainScaleS平台基于180nm节点的HICANN芯片[8],该芯片使用类似于泄漏集成-发射模型的模拟神经元和由4bit 6-晶体管SRAM(Static Random-Access Memory,静态随机存取存储器)单元和4bit数字-模拟转换器(Digital to Analog Convertor,简称DAC)组成的数字突触与模拟神经元接口。一个晶粒(die)由512个神经元和10万个突触组成,一个晶圆(wafer)由~20万个神经元和~ 4000万个突触组成。BrainScale可以比生物实时运行速度快10000倍 (~ kHz),但消耗500瓦/晶圆。TrueNorth芯片使用由1bit可换位的8晶体管SRAM单元制成的数字神经元和数字突触。特别是,一个TrueNorth芯片集成了4096个神经突触核、100万个数字神经元和2.56亿个SRAM突触,这些突触是在28纳米节点中制造的。TrueNorth芯片演示了70mW的功耗,以非常低的时钟频率(~ kHz)执行实时(30帧/秒)的目标识别任务。

  表1总结了用于神经启发计算的硬件实现的不同设计方法的类别。这里根据信息的编码方式和硬件平台的技术选择对类别进行了松散的分类。神经元可以通过使用二进制位、脉冲数、电压水平的电平表示进行编码,也可以通过尖峰表示进行编码,而突触可以是二进制或多电平(以一种模拟方式)。

  神经启发计算硬件实现的不同设计选项的类别(列出了代表性原型机)

  现成技术CMOS ASIC新兴突触器件

  分级表示GPUs[3]

  FPGAs[4]TPU[7]

  CNN加速器[14]模拟突触:

  UCSB的12*12交叉阵列[12]

  Umich的32*32交叉阵列[13]

  清华的128*81T1R RRAM(Resistive RAM,阻变随机存取存储器)阵列[14]

  IBM的500*661 1T1R PCM(Phase-Change Memory,相变存储器)阵列[15]

  UCSB的785*128 浮栅晶体管阵列[16]

  二进制突触:ASU/清华的16Mb1T1R RRAM宏[17]

  尖峰表示SpiNNaker[9]模拟神经元:BrainScaleS[10]IBM的256*256 1T1R PCM阵列STDP(Spike-timing Dependent Plasticity)神经元电路[15]

  数字神经元:TrueNorth[11]

  2. 离线训练和在线训练

  根据神经网络的训练方式不同,有两种训练方式:离线(ex-situ)训练和在线(in-situ)训练。离线训练是指通过软件进行训练,将训练后的权重通过一次性编程加载到神经形态硬件的突触阵列上,然后在硬件上只进行推理或分类。例如,TrueNorth只支持离线训练(权重需要预先训练并加载到SRAM突触数组中)。因此,这种推理引擎只能用于云预定义模型的边缘设备,但不能适应不断变化的输入数据,也不能在运行时学习新的特性。另一方面,在线训练意味着训练是在运行时的神经形态硬件上完成的(例如,权重训练是在运行中进行的)。在神经形态硬件上加速训练是一项更具挑战性的任务。

  机器/深度学习和尖峰神经网络的权值更新规则是不同的。在机器/深度学习中,通常采用一种逐层反向传播(即随机梯度下降法),通过比较预测与真实标签之间的误差来优化目标代价函数,因此是一种有监督的全局训练方法。相比之下,在尖峰神经网络中,局部突触可塑性(即相邻神经元之间的可塑性)经常以一种无监督的方式使用。一个重要的生物学上可信的学习规则是脉冲时间依赖的可塑性(STDP)[18]。STDP学习规则指出,如果突触后神经元比突触前神经元更早放电,则突触的电导(权重)会增加,反之亦然。当两个神经元放电的时间间隔越近,权重的变化就越大。然而,如何利用这种STDP学习规则(无监督且局部于两个相邻神经元)有效地更新整个神经网络仍有待探索。

  到目前为止,在解决当今实际分类问题(如图像/语音识别)中,采用反向传播的机器/深度学习的学习精度明显优于采用STDP学习的尖峰神经网络。因此,目前我们更多地关注机器/深度学习的设计视角(而不是尖峰神经网络)。

  参考目录:

  [1] A. Sally, “Reflections on the memory wall,” in Proc. Conf. Comput. Front., 2004, p. 162.

  [2] C.-S. Poon and K. Zhou, “Neuromorphic silicon neurons and large-scale neural networks: Challenges and opportunities,” Front. Neurosci., vol. 5, no. 108, pp. 1–3, 2011.

  [3] S. Chetlur et al., “cuDNN: Efficient primitives for deep learning,” Computer ence, Oct. 2014.

  [4] G. Lacey, G. W. Taylor, and S. Areibi, “Deep learning on FPGAs: Past, present, and future,” 2016.

  [5] G. Desoli, “A 2.9 TOPS/W deep convolutional neural network SoC in FD-SOI 28nm for intelligent embedded systems,” in IEEE Int. Solid-State Circuits Conf. (ISSCC) Dig. Tech. Papers, Feb. 2017, pp. 238–239.

  [6] N. P. Jouppi et al., “In-datacenter performance analysis of a tensor processing unit,” in Proc. ACM/IEEE Int. Symp. Comput. Architecture (ISCA), 2017.

  [7] N. Jouppi, Google Supercharges Machine Learning Tasks With TPU Custom Chip, 2016. [Online]. Available: https://cloudplatform.googleblog.com/2016/05/Googlesupercharges- machine-learning-tasks-withcustom-chip.html

  [8] J. Schemmel, D. Bruderle, A. Grubl, M. Hock, K. Meier, and S. Millner, “A waferscale neuromorphic hardware system for large-scale neural modeling,” in Proc. IEEE Int. Symp. Circuits Syst. (ISCAS), May 2010, pp. 1947–1950.

  [9] S. B. Furber, F. Galluppi, S. Temple, and L. A. Plana, “The SpiNNaker project,” Proc. IEEE, vol. 102, no. 5, pp. 652–665, May 2014.

  [10] S. Schmitt et al., “Neuromorphic hardware in the loop: Training a deep spiking network on the BrainScaleS wafer-scale,” in Proc. Int. Joint Conf. Neural Netw. (IJCNN), 2017.

  [11] P. A. Merolla, “A million spiking-neuron integrated circuit with a scalable communication network and interface,” Science, vol. 345, no. 6197, pp. 668–673, Aug. 2014.

  [12] M. Prezioso, F. Merrikh-Bayat, B. D. Hoskins, G. C. Adam, K. K. Likharev, and D. B. Strukov, “Training and operation of an integrated neuromorphic network based on metal-oxide memristors,” Nature, vol. 521, pp. 61–64, May 2015.

  [13] P. M. Sheridan, F. Cai, C. Du, W. Ma, Z. Zhang, and W. D. Lu, “Sparse coding with memristor networks,” Nature Nanotechnol., vol. 12, pp. 784–789, May 2017.

  [14] P. Yao et al., “Face classification using electronic synapses,” Nature Commun., vol. 8, p. 15199, Feb. 2017.

  [15] S. Kim et al., “NVM neuromorphic core with 64k-cell (256-by-256) phase change memory synaptic array with on-chip neuron circuits for continuous in-situ learning,” in IEDM Tech. Dig., 2015.

  [16] X. Guo et al., “Fast, energy-efficient, robust, and reproducible mixed-signal neuromorphic classifier based on embedded NOR flash memory technology,” in IEDM Tech. Dig., 2017.

  [17] S. Yu, “Binary neural network with 16 Mb RRAM macro chip for classification and online training,” in IEDM Tech. Dig., Dec. 2016.

  [18] C. Zamarreño-Ramos, L. A. Camuñas-Mesa, J. A. Pérez-Carrasco, T. Masquelier, T. Serrano-Gotarredona, and B. Linares-Barranco, “On spike-timing-dependentplasticity, memristive devices, and building a self-learning visual cortex,” Front. Neurosci., vol. 5, no. 26, pp. 1–22, 2011.