Spiking Neural Networks (SNNs) are at the forefront of neuromorphic computing thanks to their potential energy-efficiency, low latencies, and capacity for continual learning. While these capabilities are well suited for robotics tasks, SNNs have seen limited adaptation in this field thus far. This work introduces a SNN for Visual Place Recognition (VPR) that is both trainable within minutes and queryable in milliseconds, making it well suited for deployment on compute-constrained robotic systems. Our proposed system, VPRTempo, overcomes slow training and inference times using an abstracted SNN that trades biological realism for efficiency. VPRTempo employs a temporal code that determines the timing of a single spike based on a pixel's intensity, as opposed to prior SNNs relying on rate coding that determined the number of spikes; improving spike efficiency by over 100%. VPRTempo is trained using Spike-Timing Dependent Plasticity and a supervised delta learning rule enforcing that each output spiking neuron responds to just a single place. We evaluate our system on the Nordland and Oxford RobotCar benchmark localization datasets, which include up to 27k places. We found that VPRTempo's accuracy is comparable to prior SNNs and the popular NetVLAD place recognition algorithm, while being several orders of magnitude faster and suitable for real-time deployment -- with inference speeds over 50 Hz on CPU. VPRTempo could be integrated as a loop closure component for online SLAM on resource-constrained systems such as space and underwater robots.
翻译:脉冲神经网络(SNNs)凭借其潜在能效优势、低延迟以及持续学习能力,处于神经形态计算的前沿。尽管这些特性非常适合机器人任务,但SNNs在该领域的适应性应用目前仍十分有限。本文提出了一种面向视觉地点识别(VPR)的SNN,该网络可在数分钟内完成训练并在毫秒级时间内完成查询,使其适用于计算资源受限的机器人系统部署。我们提出的系统VPRTempo通过采用一种牺牲生物学真实性以换取效率的抽象化SNN,克服了训练和推理速度慢的问题。VPRTempo采用时间编码,根据像素强度确定单个脉冲的发放时刻,而非依赖此前SNNs中通过速率编码确定脉冲数量的方式,从而将脉冲效率提升了100%以上。VPRTempo利用脉冲时间依赖可塑性和有监督的Delta学习规则进行训练,强制每个输出脉冲神经元仅响应单一地点。我们在包含多达2.7万个地点的Nordland和Oxford RobotCar基准定位数据集上评估了该系统。结果表明,VPRTempo的准确率与以往SNNs及流行的NetVLAD地点识别算法相当,同时速度提升数个数量级,适合实时部署——在CPU上推理速度超过50 Hz。VPRTempo可作为在线SLAM的闭环检测组件,集成于太空与水下机器人等资源受限系统。