Spiking Neural Networks (SNNs) have recently attracted widespread research interest as an efficient alternative to traditional Artificial Neural Networks (ANNs) because of their capability to process sparse and binary spike information and avoid expensive multiplication operations. Although the efficiency of SNNs can be realized on the In-Memory Computing (IMC) architecture, we show that the energy cost and latency of SNNs scale linearly with the number of timesteps used on IMC hardware. Therefore, in order to maximize the efficiency of SNNs, we propose input-aware Dynamic Timestep SNN (DT-SNN), a novel algorithmic solution to dynamically determine the number of timesteps during inference on an input-dependent basis. By calculating the entropy of the accumulated output after each timestep, we can compare it to a predefined threshold and decide if the information processed at the current timestep is sufficient for a confident prediction. We deploy DT-SNN on an IMC architecture and show that it incurs negligible computational overhead. We demonstrate that our method only uses 1.46 average timesteps to achieve the accuracy of a 4-timestep static SNN while reducing the energy-delay-product by 80%.
翻译:脉冲神经网络(SNN)近期因其处理稀疏二值脉冲信息的能力以及避免昂贵乘法运算的特性,作为传统人工神经网络(ANN)的高效替代方案而受到广泛研究关注。尽管SNN的效率可在内存计算(IMC)架构上实现,但我们表明SNN的能耗和延迟与IMC硬件中使用的时间步长数量呈线性关系。因此,为最大化SNN的效率,我们提出输入感知的动态时间步长SNN(DT-SNN),这是一种新颖的算法解决方案,用于在推理过程中基于输入动态确定时间步长数量。通过计算每个时间步长后累积输出的熵,可将其与预定义阈值进行比较,并判断当前时间步长处理的信息是否足以进行可信预测。我们将DT-SNN部署于IMC架构,并证明其引入的计算开销可忽略不计。实验表明,我们的方法仅使用平均1.46个时间步长即可达到4时间步长静态SNN的精度,同时将能耗延迟积降低80%。