然而,我们必需承认,尽管神经形态在未来的计算方向上是很有前途的,但是它们仍然处于理论水平,并且还没有被大量地生产。有几种设备据说有神经形态芯片的元素,尚且存在争议,例如 Audience 生产的噪声抑制器,但是它们还未向目前大量的要获得其性能评估的刺激低头。正在进行的研究已经被证明有了克服实现神经形态芯片所遇到的困难的进展性工作,并且给神经形态计算许诺了一个美好的未来。 「这个架构能够解决从视觉、声音以到多场景融合的很广泛的问题,并且有潜力通过在计算受到功率和速度限制的设备中集成类脑性能来革新计算机产业。」 —Dharmendra Modha, IBM Fellow 神经形态的目标是将神经科学作为算法的灵感来从中抽象出关键思想来指导神经形态计算架构的未来发展方向。然而,将我们的生物结构转换为振荡器(oscillators)和半导体的电气设备并不是一件容易的事情。 为了获得神经形态芯片的优势,需要大量的振荡器来进行模仿。今天的深度神经网络早已拥有数百万个节点,更别提朝着拥有更多节点的更复杂的神经网络的努力正在进行。为了达到和人脑相当的能力,需要数十亿个振荡器。使用软件来激发如此巨大的神经网络是特别耗能的,但是用硬件来处理的话就会好很多。为了将所有的节点都布置在指尖大小的芯片上,纳米级的振荡器是必不可少的。 那么问题来了,因为纳米级的振荡器很容易受到噪声的影响。这类振荡器在热扰动下会改变行为,并且它们的特性会随着时间的变化而发生漂移。神经形态计算在对付处理电路中的噪声方面做得不是很好,尽管它可以容忍输入的不可靠性。以分类任务为例,当提供相似的输入时,每次都需要相同的神经网络分类。由于噪声原因,只存在用纳米级振荡器实现神经形态芯片的理论方案,而不是实证实现。然而,一篇最近的文章提出了能够克服这个困难的解决方案,并且成功地模拟了使用专用纳米磁振荡器的神经元集合的振荡行为。
图 2 左边:自旋矩纳米振荡器示意图;中间:振荡器的测量电压随着时间的变化;右边:电压幅值随着电流的变化 研究者已经发现,在特定的动力学条件下,使用自旋矩振荡器可以高信噪比地同义地实现完美的分类结果。如图 2 所示,自旋振荡器包括两个题词曾和一个夹在中间的正常间隔组件,和当前磁存储器单元有着完全相同的结构。如上图所示,由充电电流产生的磁化振荡被转换成了电压振荡。之后关于语音数字识别的实验证明自旋矩振荡器在神经形态任务上可以达到当前最佳的表现。 一个比较简单的波形识别任务被用来研究自旋振荡器在模式识别中的作用。每一个正弦波或者方波都被标记了 8 个离散的红点,任务要求在红点处区分正弦波和方波。图 3b 表明为了创建空间神经网络中蓝色部分所描述的路径,需要很多非线性神经元。如图 3c 所示,路径也可以根据时间来定义,例如根据每一个振荡器幅值的非线性轨迹。每一个输入将会触发振荡器幅值的特定路径,并且,如果时间步长被设定为振荡器松弛时间(relaxation time)的一部分,这将会生成一个瞬态的动态状态。这意味着,与传统的神经元空间分离的神经网络相比,单个振荡器作为在时间上相连的一组虚拟神经元。这个功能创建了一个关于过去事件的记忆池,并且,如果之前的输入有所不同,这会让振荡器在面对相同的输入时有着不同的响应。由于振荡器的松弛时间有限,所以对正弦波和方波的完美分离也是可能的。
图 3. 正弦波和方波分类 在硬件上模拟神经网络的迭代训练也能够补偿处理过程中存在的异常。正如上面提到的一样,在模拟硬件的情形下,失真可能在动力学中起到重要的作用。控制这些异常是很重要的,因为网络的性能基本上要依靠对精确参数的训练。 使用由软件训练的深层神经网络转换的 BrainScaleS 晶圆级神经元系统上的尖峰网络来证明在线训练所提供的补偿。然后在每个训练阶段进行一次循环训练,然后记录活动。网络活动首先记录在硬件中,并使用反向传播算法进行处理,以更新参数。研究人员发现,参数更新在训练步骤中不一定要精确,而只需要大致遵循正确的渐变趋势。因此,可以简化该模型中更新的计算。尽管模拟基板的固有变化,这种方法允许快速学习,只需几十次迭代即可达到接近理想软件仿真原型的精度。
图 4 左:软件模型每一批的分类精度随训练迭代步数的变化;右:硬件实施的时候 130 次运行过程中精度的变化 神经形态硬件实现通常会在系统精度上面临另外一个主要的挑战。突触权重的有限精度会降低系统精度,这阻碍了神经形态系统的广泛应用。 (责任编辑:本港台直播) |