NeuroRing: Scaling Spiking Neural Networks via Multi-FPGA Bidirectional Ring Topologies and Stream-Dataflow Architectures
NeuroRing 是一种基于 FPGA 实现的模块化、可扩展的脉冲神经网络加速器,采用双向环状拓扑结构和流式数据流架构,在保持与现有神经科学工作流程兼容的同时,实现了超越实时执行的运行速度并具备具有竞争力的能效。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,你正在尝试在计算机内部模拟一座微小而繁忙的城市。在这座城市里,“市民”是神经元,它们并非通过发送持续的无线电波来相互交谈。相反,它们只在发生令人兴奋的事情时才会发声,发送一种快速、尖锐的喊声,称为“脉冲”(spike)。这就是**脉冲神经网络(SNNs)**的工作原理。它们极其节能,因为除非有消息要分享,否则它们保持静默。
然而,模拟整个由这些神经元组成的城市却非常困难。当数百万个神经元同时开始“喊叫”时,“邮件系统”(通信)就会堵塞,导致模拟速度变慢。
本文介绍了一种名为NeuroRing的新方法,用于构建一种超快速、节能的机器来运行这些模拟。以下是其工作原理,使用简单的类比进行说明:
1. 流水线(流式数据流)
将传统计算机想象成一位厨师:他做一顿饭,清理厨房,然后再做下一顿。这种方式虽然高效,但速度较慢。
NeuroRing则像工厂中的高速流水线。
- 工人:它使用小型、专业化的工人(称为内核),这些工人永不停歇。一位工人计算神经元的状态,而下一位工人立即抓取下一步所需的“邮件”(突触连接)。
- 流程:一旦神经元“喊叫”(发放脉冲),喊声就会瞬间传递给流水线上的下一位工人。无需等待。这使得系统能够同时处理成千上万个神经元,将数学计算与消息传递重叠进行。
2. 环形公路(双向环状拓扑)
通常,如果你想连接许多计算机让它们相互交谈,可能会使用一个巨大的交换机。但如果交换机变得繁忙,一切都会停滞。
NeuroRing使用一条环形公路(环状结构)。
- 想象一群送货卡车在圆圈中行驶。每辆卡车都携带一个包裹(一个脉冲)。
- 道路是双向的。如果包裹需要发送给左边的邻居,它就向左行驶;如果需要发送给右边,它就向右行驶。卡车总是选择最短路径。
- 这种设计是模块化的。如果一辆卡车(或一块芯片)不够用,你可以简单地往圆圈中添加更多卡车,甚至通过一座快速桥梁将两个独立的圆圈连接起来。这使得系统能够从单块芯片扩展到庞大的芯片网络,而不会破坏交通流。
3. 翻译器(与 NEST 的集成)
科学家们已经拥有一个流行的软件工具,名为NEST,用于设计这些神经城市。通常,将设计从 NEST 迁移到定制硬件芯片上,就像试图把方形的木桩塞进圆形的孔里——需要重写整个蓝图。
NeuroRing充当通用翻译器。
- 它接收来自 NEST 的蓝图,并将其简化为一份“谁与谁交谈”的清单。
- 因此,研究人员无需成为硬件专家即可使用 NeuroRing。他们可以在 NEST 中设计大脑模拟,而 NeuroRing 会自动将其转换以便在硬件上运行。
4. 结果:他们构建了什么?
作者使用FPGA(可像软件一样重新编程的芯片)构建了该系统。他们通过两种方式进行了测试:
“大脑”测试:他们模拟了一个皮层微电路,这是一个哺乳动物大脑一小块区域的真实模型,包含约 77,000 个神经元和 3 亿个连接。
- 结果:NeuroRing 的运行速度快于实时。真实的大脑区域需要 10 秒来“思考”,而 NeuroRing 仅需约 8.3 秒(实时因子为 0.83)。
- 效率:与在大型超级计算机或标准图形处理器(GPU)上运行相同的模拟相比,它消耗的功率显著更低。
“谜题”测试:为了证明它不仅适用于神经科学家,他们还用它来解决数独谜题。
- 他们将谜题转化为一个神经元网络,其中“获胜”的数字会发出最响亮的喊声。
- 结果:该系统在不到一秒钟的时间内正确解决了三个不同的数独谜题,且耗电量极低。
总结
NeuroRing是一种新型、灵活的机器,它利用环形公路和流水线式的处理方式,来模拟类脑网络。它被设计为易于连接(模块化)、易于编程(与现有软件兼容)且极其高效。它证明了其能够以快于实时的速度运行复杂的脑模型,甚至解决逻辑谜题,同时比当前的超级计算机消耗更少的能量。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。