返回

文章详情

通过 Kolmogorov-Arnold 网络在 FPGA 上进行超快速机器学习

Hacker News2026年6月9日 19:21

2026年6月7日 本文是我硕士论文的高水平解释,涉及使用 Kolmogorov-Arnold 网络(KAN)架构设计超快速推理和在线学习的硬件架构。我将假设读者熟悉标准机器学习概念,以及对硬件和数字电路有一定了解;可以在这里阅读我之前的帖子以获取后者的更多信息。请阅读下面的两篇论文以获取更多信息,特别是关于基准测试和显著结果的细节。 [FPGA 2026最佳论文] Duc Hoang * , Aarush Gupta * , 和 Philip C. Harris. “KANELÉ: 高效 LUT 基于 Kolmogorov–Arnold 网络的评估。” 2026年 ACM/SIGDA 国际现场可编程门阵列研讨会会议录 . ACM, 2026. https://dx.doi.org/10.1145/3748173.3779202 [ICML 2026] Duc Hoang * , Aarush Gupta * , 和 Philip Harris. “通过 Kolmogorov-Arnold 网络中的样条局部性实现 FPGA 上的超快速在线学习。” arXiv 预印本 arXiv:2602.02056 , 2026. https://arxiv.org/abs/2602.02056 *等贡献 在 FPGA 上进行机器学习的理由 大多数现代机器学习工作负载,无论是训练还是推理,都在图形处理单元(GPU)上运行。通过支持高度并行执行模型的硬件架构,GPU 可以以极高的吞吐量对大量数据执行简单操作。这使得它们非常适合于涉及大型架构或批量式训练和推理的机器学习问题。然而,复杂的 GPU 架构无法满足需要超低延迟(例如亚微秒延迟)和高硬件效率的应用的要求。处理器(例如CPU和GPU)在调度和优化指令、动态访问内存等方面会产生显著的开销。而需要超低延迟(例如 $ ext{~}$纳秒)和效率要求的极端专业化工作负载则更适合于使用定制硬件加速器。现场可编程门阵列,或 FPGA,是可重配置数字逻辑设备,非常适合这种定制硬件加速的风格。FPGA 包含查找表(LUT),通过列举每个二进制输入组合的输出值来表示数字函数;触发器(FF),用于存储状态;以及其他内存和计算原语。这些组件及它们之间的连接被重新配置以设计定制数字电路,允许低级硬件架构与算法共同设计,从而实现超快速的机器学习。重要的是,神经网络直接作为数字逻辑实现,而不是作为在处理器上顺序执行的指令。 背景 定点量化 FPGA 和其他数字设备从根本上是通过位而不是连续值进行操作的。然而,我们经常把神经网络中的算术运算(例如 $ imes, +$)理解为在实数 $ ext{R}$ 上发生。因此,我们需要将实数编码为比特串(位的序列),这个过程被称为量化。像加法和乘法这样的运算就变成了二进制函数。一种实现方法是定点量化。定点量化采用基数为2的方式表示数字,其中有些位(小数位)在小数点后。例如,如果我们总共使用8位,并且在小数点后有4个小数位,我们可以表示 $2^8$ 个值从 $(-2^7) / 2^4 = -8$ 到 $(2^7 - 1) / 2^4 = 7.9375$,均匀间隔每次增量为 $1/2^4 = 0.0625$。我们假设此处可表示范围以零为中心。在定点量化方案中,我们只能表示在某个固定范围内的离散值,这会导致在尝试表示实值时出现近似误差。资源效益机器学习的一个重点是最小化这种近似误差或量化误差,以实现稳定的训练和推理。 查找表神经网络(LUT-NN) FPGA 主要通过查找表(LUTs)实现数字逻辑,这些小组件通过存储每个二进制输入组合的输出值来表示任意的二进制函数。例如,$ ext{AND}: ext{{0, 1}}^2 o ext{{0, 1}}$ 1 是通过查找表表示的 输入 ($x,y$) $x ext{ AND }y$ 00 0 01 0 10 0 11 1 然后学习这些作为查找表表示的二元函数,作为神经网络的核心原语就显得很有意义:这样的网络被称为查找表神经网络(LUT-NN)。然而,通过梯度下降或类似方法学习查找表是困难的。为了解决这个问题,我们可以回想一下,我们可以通过梯度下降学习实值函数 $f: ext{R} o ext{R}$。如果我们进行定点量化,输入位为 $b_i$ ,输出位为 $b_o$,那么 $f$ 变成了二进制函数 $f_Q : ext{{0, 1}}^{b_i} o ext{{0, 1}}^{b_o}$。然后,我们可以学习连续的 $f$ 并量化以获取我们所需的查找表!

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡