关键词:
脉冲神经网络(SNN)
NEST仿真器
神经元重分布
稀疏交换
摘要:
虽然在海量标注数据和快速增长的计算力驱动下,以深度学习为代表的人工智能技术迅猛发展并在众多领域得到了实际的应用,但在高准确率的同时,深度学习渐渐暴露出其还存在计算代价大和智能水平弱等许多局限性。基于脉冲神经网络(SNN,Spiking Neural Network)的类脑计算,因其与传统的神经网络相比拥有更高的类脑特性。因此,脉冲神经网络是发展感知计算、发展新一代人工智能、探索自主学习的基础平台。由于大脑规模巨大,其拥有数亿神经元、千万亿突触,如此大规模SNN仿真所需的计算资源远远超过了目前单个计算节点或芯片的计算能力。因此研究人员为了仿真大脑特性,研究大脑机理,以及探究脉冲神经网络,需要构建大规模仿真集群来弥补单节点计算性能的不足。NEST作为一款应用较为广泛的脉冲神经网络仿真器,其大规模分布式计算特性非常适合用来进行类脑计算系统的研究。然而在NEST中虽然对网络通信机制进行了一定程度的改进,使计算效率有所提升,但是由于改进后的集体通信的限制使得通信效率大幅下降。针对这些问题,本文的主要工作及创新点有以下几个方面:第一,针对NEST仿真器进行参数量化,通过分析和实验得出NEST仿真器的通信优化点,为后文的通信研究提供理论支持。第二,针对大规模类脑仿真器NEST的特点,提出了基于SNN子图跨节点优化的神经元重分布算法(Relocation Algorithm,Re LOC),通过分析SNN模型中神经元之间联系的紧密性,实现最低代价的SNN子图切割,然后在仿真前进行神经元重分布操作,减少神经元到其他节点的连接,使进程间通信更加稀疏。并且控制每个节点上神经元的数量,使得负载相对平衡。第三,对NEST本身的通信机制进行了改进,提出稀疏交换,用节点对节点通信取代原本的集体通信,只有需要脉冲交换的进程才进行通信,以此提升通信效率。通过在分布式NEST平台上运行不同应用,实验结果显示,Re LOC算法相比NEST所采用的循环分配机制,其平均稀疏性提升了20%,再配合稀疏交换机制,使得通信数据相比原来的方法减少了约73倍。