LUT-KAN:在资源受限的微控制器上用于嵌入式边缘推理的Kolmogorov–Arnold网络的查表加速技术
《Journal of Systems Architecture》:LUT-KAN: Look-up table acceleration of Kolmogorov–Arnold networks on resource-constrained microcontrollers for embedded edge inference
【字体:
大
中
小
】
时间:2026年07月22日
来源:Journal of Systems Architecture 5.3
编辑推荐:
摘要:科洛莫戈洛夫-阿诺德网络作为一种有前景的替代多层感知器的技术,它用可学习的基于单变量样条的函数取代了固定的激活函数。然而,KAN推理需要反复计算成本高昂的基函数——如B样条、雅可比多项式或切比雪夫多项式——这严重限制了其在缺乏硬件浮点单元的资源受限微控制器上的应用。我们提出
摘要:科洛莫戈洛夫-阿诺德网络作为一种有前景的替代多层感知器的技术,它用可学习的基于单变量样条的函数取代了固定的激活函数。然而,KAN推理需要反复计算成本高昂的基函数——如B样条、雅可比多项式或切比雪夫多项式——这严重限制了其在缺乏硬件浮点单元的资源受限微控制器上的应用。我们提出了LUT-KAN,这是一种通过预计算的查找表以及8位非对称量化与定点线性插值来加速MCU上KAN推理的系统性框架。该方法用O(1)级的表查找和定点插值替代了昂贵的运行时多项式计算,将每条边的浮点运算从O(d)或O(k2)降低到一个小常数(反量化时为2–3次运算),同时完全以整数运算进行分段索引和插值。我们在四种微控制器架构上进行了跨平台的系统评估,这些架构涵盖了三种指令集:ATmega2560(8位AVR,16 MHz)、RP2040(ARM Cortex-M0+,133 MHz)、STM32F103(ARM Cortex-M3,72 MHz)以及ESP32-C3(RISC-V,160 MHz),这些芯片均没有硬件FPU。在包含3–20阶的雅可比(切比雪夫)多项式以及5–8个网格点的三次B样条的259种基准配置中,LUT-KAN相比浮点基准实现了1.0倍至29.7倍的加速效果。B样条基函数在不同平台上的平均加速比为14.8倍至23.8倍,而雅可比多项式的加速比则呈现近似于0.4d的线性关系,在20阶时可达6.3倍至8.9倍。采用定点LUT内核的版本进一步将平均加速比提升了30%–47%,在经过训练的模型上可实现56.2倍的加速效果。消融实验表明,仅量化处理(不使用LUT)无法带来任何加速效果(平均加速比为0.36倍–0.45倍),从而证实这种加速效果完全源自表查找结构。所有配置下的最大绝对近似误差均低于0.28,其中B样条的误差始终低于0.11。在用于正弦回归的16阶切比雪夫KAN模型上,LUT量化带来的任务级精度损失可以忽略不计(ΔMSE<2×10??)。该完整的开源框架——包括从Python到C语言的代码生成、自动化的PlatformIO构建以及基于Wokwi的硬件在环测试——使得量化后的KAN模型能够在普通的嵌入式硬件上实现可重复部署。为了在真实的多层部署环境中验证该框架,我们展示了在物理ESP32-C3和Arduino Mega 2560板上运行的用于入侵检测的三层B样条KAN[78 → 32 → 16 → 1]的端到端测试结果:在仅有18 KB运行时SRAM的情况下,推理延迟为25.8毫秒,且与浮点基准相比,所有测试配置下的F1分数下降幅度均低于0.3%(浮点基准的F1分数为0.9900)。我们的研究结果表明,基于LUT的量化技术将KAN从受计算能力限制的浮点算法转变为受内存限制的整数运算,从而使成本低廉的微控制器也能实现快速的边缘AI推理。
引言:物联网设备的普及带来了对网络边缘机器学习推理的巨大需求,因为在这些地方,云连接可能时断时续、对延迟极为敏感,或者能耗过高[2]。资源受限的微控制器——其工作频率在16–240 MHz之间,拥有数千字节的RAM且没有硬件浮点单元——构成了数十亿物联网终端的计算基础[3]。在这类设备上部署神经网络模型,即所谓的TinyML,需要对模型架构和算术运算进行极致优化[4]、[5]。刘等人[6]提出的科洛莫戈洛夫-阿诺德网络代表了神经网络设计领域的重大变革。这一网络架构基于科洛莫戈洛夫-阿诺德表示定理[7]、[8],它用可学习的单变量函数取代了多层感知器中神经元上的固定激活函数。每条边的激活函数通常被表示为样条函数——最常见的是B样条[6],或是雅可比或切比雪夫之类的正交多项式[9]、[10]。与相同规模的多层感知器相比,这种架构创新使得网络更具可解释性、参数效率更高,且在函数逼近任务上的表现更为准确[11]、[12]。然而,KAN推理的高计算成本给其在边缘设备的部署带来了根本性障碍。每次前向传播都需要对网络中的每条边计算基函数——比如B样条递归、霍纳方案多项式计算或三角递归等。在没有FPU的微控制器上,这些操作是通过软件浮点仿真实现的,这使得每个算术运算的周期从单个CPU周期增加到20–100个周期[13]。这样的开销使得在对延迟敏感的应用中直接在物联网微控制器上部署KAN变得不切实际。基于查找表的计算提供了一种成熟的解决方案:预先在离散点处计算函数值,然后通过表查找获取结果,从而将计算复杂度降为O(1)级的内存访问。基于查找表的方法已在基于FPGA的神经网络加速领域得到了广泛研究[14]、[15]、[16]、[17]、[18]、[19]、[20],因为在那些系统中查找表是固有的硬件结构。最近的KANEL’E框架[21]表明,KAN特别适合于通过查找表进行离散化处理,因为其边激活函数是一维函数且定义域有限——这一特性避免了多变量函数的查找表方法所面临的维度灾难问题。不过,KANEL’E针对的是FPGA而非微控制器,而且目前还没有研究系统地评估过在资源受限的微控制器上基于查找表的KAN加速效果。
与先前工作的关系:本文是我们之前关于LUT-KAN研究的延续[22],那项研究提出了一个用于Kolmogov-Arnold网络的LUT编译及量化CPU推理的开放软件工具包,并在一个实际应用场景(拒绝服务检测)中验证了该方法的可行性,同时还分析了精度与速度之间的权衡关系。表1明确了该研究与当前研究之间的范围差异。在当前研究中,我们将相同的LUT编译原理扩展到了没有FPU的资源受限微控制器上,重点关注底层内核的优化与部署。具体而言,我们提供了一种从Python到C语言的部署流程,以及针对AVR/ARM/RISC-V目标平台的跨指令集基准测试,用于在微控制器约束条件下量化加速比、内存占用和近似误差。在本文中,我们介绍了LUT-KAN,这是一个用于在常见的物联网微控制器上部署量化后KAN模型的完整框架。我们的方法将每条边的单变量激活函数预先计算并存储到一个紧凑的8位量化查找表中,从而用整数表查找和定点线性插值替代了运行时的基函数计算。我们的贡献如下:1. 系统性的LUT-KAN方法论:我们为没有FPU的微控制器设计了两种适用于KAN边函数的LUT推理内核版本:(a)一种混合浮点/整数内核,可将每条边的浮点运算从O(d)降低到常数水平(3次运算);(b)一种定点内核,它完全以整数运算进行分段索引和插值,仅在反量化时进行浮点运算(每条边2次运算)。我们还为雅可比多项式和B样条基函数制定了量化、表构建和插值流程,证明了计算复杂度可从O(d)或O(k)的浮点运算降低到每次边评估时的O(1)级表查找。2. 跨指令集基准测试:我们在三种指令集架构(AVR、ARM、RISC-V)对应的四种微控制器平台上进行了系统评估,结果表明不同架构间的加速特性具有一致性,且由浮点运算与整数运算的成本比决定。3. 自动化部署流程:我们开发了一个开源的从Python到C语言的代码生成框架,该框架具备自动化的PlatformIO编译功能以及基于Wokwi的硬件在环仿真功能,从而能够在259种硬件-算法组合中进行可重复的基准测试。4. 定量尺度规律:我们发现LUT加速比与多项式阶数呈线性关系(雅可比多项式的加速比约为0.4d),而B样条的加速比则要高得多(14.8倍–29.7倍),这为嵌入式设备上选择KAN架构提供了实用的指导依据。5. 消融实验与端到端验证:我们进行了两项消融实验——一项是仅量化处理的基准实验,用以证明加速效果源自LUT结构而非量化处理本身;另一项是定点内核版本的测试,结果显示其能再提升30%–47%的加速效果。此外,我们还在两个层面的经过训练的模型上进行了验证:一个是用于正弦回归的单层切比雪夫KAN,证明了应用LUT后精度损失可以忽略不计;另一个是在实际微控制器硬件上部署的用于网络入侵检测的三层B样条KAN,这进一步证明了该框架能够应用于真实的多层架构。本文的其余部分结构如下:第2节回顾了有关KAN架构、基函数变体以及基于查找表的神经网络加速的相关研究。第3节介绍了科洛莫戈洛夫-阿诺德表示定理、基函数以及量化的数学背景知识。第4节详细阐述了我们的LUT-KAN方法论,包括表构建、量化方案以及代码生成流程。第5节描述了实验设置,包括硬件平台和基准测试配置。第6节展示了所有平台和配置下的综合测试结果。第7节讨论了研究结果,包括在真实硬件上的多层部署验证、存在的局限性以及对于物联网部署的实际意义。第8节对全文进行总结。
片段摘录:科洛莫戈洛夫-阿诺德网络:科洛莫戈洛夫-阿诺德表示定理由科洛莫戈洛夫在1957年提出[7],后来由阿诺德进一步完善[8],该定理指出,任何多变量连续函数都可以分解为有限个单变量连续函数及其之和的组合。形式上,对于任意连续函数f:[0,1]?→R,都存在连续的单变量函数??和Φ?,使得:f(x?,…,x?)=∑?=02?Φ?∑p=1???,p(x?)。刘等人[6]将这一定理转化为一种实用的神经网络架构……科洛莫戈洛夫-阿诺德表示定理:该定理(公式(1))确保了[0,1]?上的任何连续函数都可以表示为单变量函数及其相加操作的两层组合。虽然原定理规定有2?+1个外部函数和n(2?+1)个内部函数,但实际的KAN实现将其推广到了具有任意宽度的多层架构。一个具有L层且各层宽度分别为(n?,n?,…,n?)的KAN的计算方式为:f(x)=(Φ??1°Φ??2°?°Φ?)(x),其中每一层Φ?都是一个nl+1×nl矩阵……概述:LUT-KAN的核心思想在于,每个KAN边激活函数??,j,i(x)都是输入值的有界单变量函数。经过训练后,该函数值是固定的,其在该输入域内的所有取值都可以预先计算并存储在一个紧凑的表中。在推理时,计算??,j,i(x)的操作可简化为:1. 索引计算:通过量化将输入值x映射到表格中的对应索引;2. 表格查找:读取一个或两个相邻的表项;3. 插值计算:通过相邻表项之间的线性插值得到输出值……硬件平台:我们在三种指令集架构对应的四种微控制器平台上测试了LUT-KAN,这些平台均没有硬件FPU。表4汇总了这些平台的规格参数。这些平台代表了目前常见的各种物联网微控制器:ATmega2560(Arduino Mega)是一款8位AVR微控制器,工作频率为16 MHz。它的8位算术逻辑单元进行32位浮点运算时需要多个时钟周期,因此软件浮点仿真的开销尤为显著。它代表了成本最低的物联网硬件产品……结果:我们在四种平台上共进行了185次成功的基准测试,完整的测试数据集、测试配置以及分析脚本均可在配套的GitHub仓库中获取(详见本文末尾的数据可用性说明)……多层部署验证:第6节至6.12节展示了单层KAN配置的逐层加速效果。对于系统级部署而言,一个关键问题是该框架是否能够扩展到在真实微控制器硬件上端到端运行的实际多层架构。为验证这一点,我们展示了一个三层B样条KAN作为网络入侵检测系统在两块物理板上的运行测试结果(见图6)……结论与未来工作:我们提出了LUT-KAN,这是一个面向微控制器部署和内核优化的框架,它继承了我们之前针对CPU的LUT编译方法[22],并通过带有8位量化的预计算查找表,将其应用到了资源受限的嵌入式微控制器上。我们在四种微控制器平台(ATmega2560、RP2040、STM32F103、ESP32-C3)上,针对三种指令集架构(AVR、ARM、RISC-V)的259种配置进行了系统评估,得出了几项重要结论:1. LUT-KAN相比浮点运算可实现1.0倍至29.7倍的加速效果……利益冲突声明:作者声明自己不存在任何可能影响本文研究成果的已知财务利益或个人关系……致谢:本研究未获得任何外部资金支持……奥列克桑德·库兹涅佐夫,意大利诺韦德拉特,伊西姆巴尔迪街10号,eCampus大学理论与应用科学系。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号