在构建更像人类大脑的计算机的探索过程中,研究人员长期以来一直关注一种被称为振荡神经网络的概念。想象一下,有一大群微小的、有节奏的时钟,每个时钟都以自己的节奏跳动。当这些时钟连接在一起时,它们并不只是孤立地跳动;它们开始相互影响,加速或减速,直到最终进入一种共同的节奏。这种集体行为使网络能够解决复杂问题,例如寻找送货卡车最有效的路线,或在人群中识别出一张熟悉的脸,其原理是通过自然地沉降到最低能量状态来实现。虽然这些网络传统上是使用模仿电流连续流动的模拟电子器件构建的,但这类系统通常难以规模化或进行精确控制。一种新的方法试图利用这种节奏计算的力量,并将其应用于现代计算机芯片中发现的精确数字逻辑,旨在将振荡系统的类脑效率与数字硬件的可靠性结合起来。
来自埃因霍芬理工大学的一个研究小组开发了一种名为 ODEONN 的新型数字架构,正是为了实现这一目标。他们的工作引入了一个全数字系统,能够模拟这些节奏网络的行为,而不依赖于过去那些难以控制且混乱的模拟电路。其创新的核心在于一种模块化设计,该设计可以被编程用于解决各种各样的难题,而不是仅针对某一个特定任务而构建。使该系统特别值得注意的地方在于它处理振荡器之间复杂交互的能力,这一特性使其能够更丰富、更准确地呈现这些网络如何解决问题。研究人员还引入了一种巧妙的捷径,用于计算驱动系统的波形。他们没有使用庞大且耗费资源的查找表来确定这些形状,而是使用了一种简化的数学近似法,在保持高精度的同时,仅需一半的硬件资源。这种效率使得该系统能够在现场可编程门阵列(一种可重构芯片)上以惊人的速度和极低的能耗运行。
为了测试他们的创造物,研究人员将 ODEONN 数字系统的性能与在高性能图形处理器(GPU)上运行的高精度软件模拟进行了对比。他们让该系统经历了四项不同的挑战:一个被称为“最大割”问题的经典优化谜题,一个基于逻辑的数独求解器,以及两种不同类型的记忆任务(在这些任务中,系统必须从带有噪声或损坏的输入中回忆模式)。在优化和数独测试中,数字系统的表现与高性能软件模拟几乎完全一致,任何结果上的差异都微乎其微,很可能是由于测试运行中的随机变化而非设计缺陷造成的。对于记忆任务,研究人员发现数字系统的性能略低于理想的软件版本,但这一差距几乎完全归因于系统为了适应数字存储而对内部数值进行的舍入处理,而非由于简化的波形计算所致。当研究人员调整软件,使其使用相同的舍入数值时,性能差距消失了,这证明了该数字架构本身是可靠的。
这项研究最引人注目的发现涉及新架构的能量效率。虽然数字系统的运行速度略快于软件模拟,但其真正的优势在于功耗。该芯片消耗的能量仅为运行软件模拟的显卡所需能量的一小部分。当研究人员将速度和功耗合并为一个效率指标时,数字系统证明其效率比传统的硬件模拟高出 45 倍。这表明,虽然该数字系统目前尚无法模拟像高性能计算机那样大规模的网络,但对于在其容量范围内的计算问题,它提供了一种更为优越的运行方式。研究人员还展示了通过使用一种称为“内存分块”的技术,他们可以扩展该系统以处理多达 512 个振荡器,从而有效地创建一个比物理芯片本身看起来要大得多的虚拟网络。
尽管取得了这些成功,作者也谨慎地指出了当前设计的局限性。随着振荡器数量的增加,在芯片不同部分之间传递信息所需的时间呈线性增长,这产生了一个通信瓶颈,可能会减慢大型系统的运行速度。如果不显著增加仅用于数据传输的计算能力,目前还没有即时的解决方法。此外,虽然该系统擅长所测试的任务,但研究人员发现,对于某些记忆应用,存储权重的精度需要高于目前的 8 位设置才能达到完美的准确度。尽管如此,这项工作代表了使振荡神经网络成为数字硬件中现实应用的重要一步。通过展示全数字、高能效的系统可以在极小精度损失的情况下解决复杂问题,研究人员为构建能够以生物大脑的效率和数字芯片的可靠性来处理困难优化及记忆任务的专用计算机提供了可行路径。
技术摘要:ODEONN:一种用于振荡神经网络的数字 ODE 求解器架构
问题陈述
振荡神经网络(ONNs)通过利用耦合振荡器的动力学在能量景观中执行梯度下降,为解决 AI 任务和组合优化问题提供了一种极具前景的范式。虽然模拟实现(使用电路或自旋电子学)自然契合这一范式,但它们往往面临网络规模和连接稀疏性的限制。数字 ONN 架构已成为一种可扩展的替代方案,但现有的解决方案通常存在特定的约束:它们可能针对单一应用进行定制、使用简化的波形(例如方波),或者将相位测量限制在二元状态(0 或 π)。此外,目前缺乏能够支持复数耦合(这对于设置 0 和 π 以外的相位角至关重要)的全数字架构。
方法论
作者提出了 ODEONN,一种模块化且可扩展的数字架构,在现场可编程门阵列(FPGA)上实现,作为 ONNs 的通用常微分方程(ODE)求解器。该系统旨在求解库拉莫托(Kursoamo)模型动力学,而不针对特定应用。
- 架构: 该设计由一个全局调度器和 N 个振荡器核心组成。调度器通过高级可扩展接口(AXI)与外部 ARM 处理器进行交互,负责管理核心之间的数据传输。它按顺序读取一个振荡器的相位,并通过共享数据总线将其广播给所有其他振荡器。
- 振荡器核心: 每个核心执行函数求值、内存存储和欧拉积分。函数求值计算耦合项 ∑Wi,jsin(ϕj−ϕi−δi,j)。积分使用一阶前向欧拉法(ϕt+1=ϕt+hϕ˙t)以及定点量化方案。
- 正弦近似: 为了避免 16 位正弦求值中查找表(LUT)或 CORDIC 算法的高资源成本,作者引入了正弦函数的二次近似。该近似使用单次乘法和位移操作进行除法。与标准的 LUT 方法相比(对于 128 个单元,大约需要 4096 个 LUT),所提方法(不使用 DSP)大约需要 37,200 个 LUT(利用率 70%),但与 CORDIC 相比,它允许实现更高的单元密度(CORDIC 对于 128 个单元需要 93.6k 个 LUT,会超过 100% 的可用资源)。论文指出,该近似方法在单个单元实现背景下使用了不到标准 LUT 方法一半的硬件资源,同时实现了 CORDIC 无法支持的 128 个单元的可扩展并行性。
- 虚拟化: 为了将网络规模扩展到超出 FPGA 物理计算资源的限制,采用了内存分块方案。这使得可以在时间上复用计算硬件,同时将“虚拟”振荡器的耦合权重存储在独立的内存库中,从而有效地增加了网络容量。
- 量化: 系统采用定点算术。相位被量化为 16 位,而耦合强度(Wi,j)和相位角(δi,j)被量化为 8 位。
核心贡献
- 通用数字架构: ODEONN 是第一个支持复数耦合并保持平滑波形函数(近似纯正弦波)且不绑定于特定应用的完全数字 ONN 架构。
- 高效的正弦近似: 论文引入了一种二次正弦近似,显著降低了硬件资源需求。虽然 CORDIC 实现 128 个单元会超过可用 FPGA 资源(176% LUT 使用率),但所提近似方法允许在 70% LUT 使用率下实现 128 个单元(若使用 DSP 则为 14%)。该近似使用的资源约为标准基于 LUT 的单单元实现的一半,同时实现了 CORDIC 无法支持的可扩展并行性。
- 通过虚拟化实现的可扩展性: 该架构展示了一种在 PYNX-Z2 FPGA 上将网络规模扩展至 512 个虚拟振荡器的方法,实现了计算吞吐量与内存容量的解耦。
- 全面的基准测试: 该架构针对运行在 NVIDIA L40 GPU 上的全精度软件模拟进行了严格测试,涵盖四个基准测试:Max-cut(组合优化)、Sudoku(图着色)、二进制关联记忆和灰度关联记忆。
结果
- 准确性: 与全精度 GPU 模拟相比,ODEONN 在大多数基准测试中的性能下降小于 2%。
- Max-cut: 切割值的差异可以忽略不计(<0.1%),正弦近似在某些情况下甚至表现出比精确正弦略微明显的(但不显著的)改进。
- Sudoku: ODEONN 的表现与 GPU 模拟相比偏差在 9 个百分点以内。这种偏差主要归因于正弦近似而非量化。
- 关联记忆: 权重的量化(8 位)被确定为性能损失的主要来源(对于二进制模式,准确度下降高达 ~45%)相比于非量化权重。正弦近似对该任务的影响很小。对于灰度记忆,性能差异约为 2%,归因于正弦近似轻微位移了稳定点。
- 效率: ODEONN 展示了显著的能效优势。与 GPU 模拟相比,它实现了 45 倍的能量延迟积(EDP)降低。具体而言,FPGA 消耗的功率仅为 GPU 的 0.029 倍,同时实现了 1.15 倍的吞吐量(每秒迭代次数)。
意义与主张
论文声称 ODEONN 成功弥合了 ONN 的理论灵活性与实际数字实现之间的差距。通过证明定点量化和简化的正弦近似仅在很大程度上影响计算准确性(在大多数情况下小于 2%),作者认为此类数字架构对于加速基于 ONN 的应用是可行的。这项工作强调,虽然权重量化可能会影响关联记忆任务,但可以通过增加位宽来缓解,而所提出的正弦近似则提供了一种高效的硬件解决方案,且不会牺牲显著的准确性。该架构被定位为一种多功能、可扩展且高能效的替代方案,可用于替代模拟 ONN 和基于软件的模拟。
每周获取最佳 computer science 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。