摘要 神经形态架构实现生物神经元和突触,以使用脉冲神经元和生物启发学习算法来执行机器学习算法。这些架构节能,因此适用于资源和功率受限的环境中的认知信息处理,物联网 (IoT) 的传感器和边缘节点在这些环境中运行。为了将脉冲神经网络 (SNN) 映射到神经形态架构,先前的研究提出了基于设计时的解决方案,其中首先使用代表性数据离线分析 SNN,然后将其映射到硬件以优化一些目标函数,例如最小化脉冲通信或最大化资源利用率。在许多新兴应用中,机器学习模型可能会根据使用某些在线学习规则的输入而改变。在在线学习中,根据输入激励,在运行时可能会形成新连接或现有连接可能会消失。因此,可能需要将已映射的 SNN 重新映射到神经形态硬件以确保最佳性能。不幸的是,由于计算时间较长,基于设计时的方法不适合在每次学习周期后在运行时重新映射机器学习模型。在本文中,我们提出了一种设计方法,用于在运行时将基于在线学习 SNN 的应用程序的神经元和突触划分并映射到神经形态架构。我们的设计方法分为两个步骤 - 步骤 1 是一种逐层贪婪方法,将 SNN 划分为包含神经形态架构约束的神经元和突触簇;步骤 2 是一种爬山优化算法,可最大限度地减少簇之间传递的总尖峰,从而改善架构共享互连的能耗。我们进行实验,使用合成和真实的基于 SNN 的应用程序来评估我们算法的可行性。我们证明,与最先进的基于设计时的 SNN 划分方法相比,我们的算法将 SNN 映射时间平均缩短了 780 倍,而解决方案质量仅降低了 6.25%。
主要关键词