想象一下,你正在试图教会一台计算机理解这个世界。长期以来,我们一直使用一种名为**多层感知器(MLP)**的标准工具。你可以把 MLP 想象成一条工厂流水线,每个工人(神经元)都会接收一系列输入,并用一个固定的配方(线性权重)将它们混合在一起,然后通过一个单一且不可改变的过滤器(激活函数,如 ReLU)进行处理。它运行得很好,但非常僵化。你很难看清这家工厂是如何做出决策的,因为“配方”只是一个数字,而且每个人的过滤器都是一样的。
Kolmogorov-Arnold 网络(KANs)应运而生。这篇论文介绍了一种构建这些工厂的新方法。KANs 不再使用固定的过滤器,而是为每一条连接工人之间的路径都配备了一个定制的、可学习的变形工具。想象一下,不再是使用静态的过滤器,而是每根管道都配备了一根灵活的软管,它可以根据需要精确地拉伸、弯曲和扭曲,以完成任务。这使得网络更加透明(你可以看到软管的形状),并且在发现复杂模式方面可能更强大。
然而,这里有一个问题:制造这些灵活的软管既耗费计算资源又很繁琐。不同的研究团队已经构建了各自版本的 KAN(例如 PyKAN、EfficientKAN 和 FastKAN),但它们使用的语言不同、工具不同,而且通常无法互相通信。有的可能功能丰富但速度慢,有的可能很快但缺乏功能。
解决方案:KANLib
该论文的作者构建了 KANLib,他们将其描述为 KAN 的“通用适配器”或“瑞士军刀”。
以下是 KANLib 的功能,使用了简单的类比:
- 它统一了混乱: 正如通用插座可以让来自不同国家的设备都能插上电一样,KANLib 吸收了三种主要现有 KAN 框架的最佳想法,并将它们整合到一个一致的系统中。你可以无需重写整个代码,就能在不同的“软管”类型(数学函数,称为 B-splines 和 Gaussian Radial Basis Functions)之间进行切换。
- 它具有模块化和灵活性: 把 KANLib 想象成一套乐高积木。你可以拼接不同的层,开启或关闭特定的功能(比如移除一个“残差分支”或“权重”),并轻松地实验各种架构。它允许研究人员测试“如果……会怎样”的情景,而不必陷入技术细节的泥潭。
- 它快速且智能: 作者不仅进行了组合,还进行了优化。
- 网格重缩放(Grid Rescaling): 想象你正在绘制一张地图。如果你从低分辨率的网格开始,你可能会错过微小的细节。KANLib 可以自动在数据密集的区域进行“放大”(细化网格),使地图更精确,而无需重新开始。
- 网格扩展(Grid Extension): 它也可以随着学习过程增加更多的网格点,从而让网络能够捕捉到越来越精细的细节。
他们测试了什么
为了验证 KANLib 是否真的有效,作者在一个名为 California Housing(根据收入、房间数等因素预测房价)的标准数据集上进行了一场竞赛。
- 比赛过程: 他们将 KANLib 与原始的 PyKAN、速度更快的 EfficientKAN 以及极快的 FastKAN 进行了对比。
- 结果:
- 准确度: KANLib 与现有的最佳模型表现一样出色。事实上,在他们的测试中,其 B-spline 版本是最准确的,预测房价时的误差非常小。
- 速度: KANLib 比原始的 PyKAN 快得多(快了约 30%),因为它采用了 EfficientKAN 的加速技巧。
- 权衡: 当 KANLib 使用“Gaussian RBF”方法(这通常是最快的方法)时,它仍然比专门的 FastKAN 工具慢一些。作者承认这是因为他们的版本旨在保持灵活性并支持诸如“网格放大”之类的先进功能,这增加了一些额外的计算工作量。
总结
论文结论指出,KANLib 是未来研究的一个稳健且可靠的基础。它证明了你不需要在速度和功能之间做选择。你可以拥有一个既具备以下特性的框架:
- 模块化: 易于调整和扩展。
- 快速: 能够与最快的现有工具竞争。
- 准确: 能够匹配甚至超越已建立模型的性能。
本质上,KANLib 消除了 KAN 研究中的摩擦,使科学家们能够专注于发现新的、更好的网络架构,而不是在不兼容的代码中挣扎。作者还提到,未来的工作将集中在让“Gaussian”版本变得更快,并尝试将这些网络应用于基于时间的、如心跳(ECG)或脑电波(EEG)的数据。
技术摘要:KANLib —— 一种模块化、可扩展且高效的 Kolmogorov-Arnold 网络实现
问题陈述
Kolmogorov-Arnold 网络 (KANs) 已成为传统多层感知器 (MLPs) 的一种极具前景的替代方案,其通过将固定的线性权重替换为可学习的一元函数。尽管 KANs 在可解释性和表达能力方面具有理论优势,但其广泛应用仍受到三个主要挑战的阻碍:
- 高计算成本: 现有的实现往往存在基函数评估效率低下和冗余张量操作的问题。
- 特征支持不一致: 不同的框架(如 PyKAN、EfficientKAN、FastKAN)提供不同的功能集,使得严格的基准测试和比较变得困难。
- 缺乏模块化: 当前的实现通常与特定的架构设计或基函数紧密耦合,限制了探索新型变体或混合架构的能力。
方法论
本文介绍了 KANLib,这是一个统一的软件框架,旨在综合三种主流 KAN 实现的核心创新:PyKAN(Liu 等人的官方实现)、EfficientKAN 和 FastKAN。
架构设计
KANLib 基于模块化架构构建,支持两种主要的基函数类型:
- B-splines (B-样条): 遵循原始 KAN 的公式,其中可学习函数是 B-样条基函数和残差分支(通常为 SiLU)的加权组合。
- Gaussian Radial Basis Functions (GRBFs,高斯径向基函数): 采用自 FastKAN,通过避免递归 B-样条计算来降低计算复杂度。
关键技术特性
为了解决现有工具的碎片化问题,KANLib 在统一的 PyTorch 环境中整合了以下功能:
- 统一线性层: 为 B-样条和 GRBF 层提供一致的接口,从而实现直接的架构比较。
- 细粒度控制: 用户可以有选择地启用或禁用标准 KAN 方程中定义的组件,例如残差分支 (wbb(x)) 或样条权重 (ws)。
- 自适应网格重缩放: 将 PyKAN/EfficientKAN 中的自适应网格机制扩展到 B-样条和 GRBF 层(后者仅限于等距网格)。
- 网格扩展: 支持在训练期间增加样条分辨率而不丢失已学习的信息,这一功能在 EfficientKAN 和 FastKAN 中此前是被忽略的。
- 归一化策略: 集成了层归一化 (Layer Normalization),将输入映射到基函数的活跃范围,以补偿某些配置下缺乏自适应重缩放的问题。
核心贡献
- 框架统一: KANLib 将 PyKAN、EfficientKAN 和 FastKAN 的功能集整合到一个可扩展的代码库中,促进了跨不同基函数和优化策略的严格基准测试。
- 计算效率: 通过集成来自 EfficientKAN(例如避免输入张量扩展)和 FastKAN(例如直接进行 GRBF 计算)的优化,KANLib 在保持功能丰富性的同时,实现了具有竞争力的推理速度。
- 架构灵活性: 该框架能够以极小的代码改动实现对 KAN 变体(例如移除残差分支或样条权重)的系统性探索,支持超越标准公式的研究。
- 可复现性: 该框架旨在复现既有参考实现的预测行为,为未来的研究提供可靠的基准。
实验结果
作者在 California Housing 数据集(一个包含 20,640 个样本和 8 个输入特征的回归任务)上对 KANLib 进行了评估,并将其与 PyKAN、EfficientKAN 和 FastKAN 进行了对比。
预测性能
- B-spline 变体: KANLib (B-spline) 在 B-样条实现中取得了最佳性能,其 RMSE 为 0.5376 ± 0.0044,R2 为 0.7852 ± 0.0035。这优于 PyKAN (RMSE 0.5434) 和 EfficientKAN (RMSE 0.5463),证明了 KANLib 成功复现并略微改进了现有的基于样条的行为。
- GRBF 变体: KANLib (GRBF) 的 RMSE 为 0.5471 ± 0.0078,与 FastKAN (RMSE 0.5506) 非常接近,证实了该框架复现基于高斯 RBF 的 KAN 的能力。
计算效率
- 推理时间:
- PyKAN 最慢 (212.19 ms)。
- EfficientKAN 和 KANLib (B-spline) 相比 PyKAN 减少了约 32.7% 的推理时间 (~142 ms)。
- KANLib (GRBF) 达到了 80.58 ms,比 PyKAN 提升了 62.0%。
- FastKAN 仍然是最快的 (41.02 ms),因为它采用了高度专业化且灵活性较低的实现。
- 参数量: KANLib 模型通常包含 4,050 个参数(包括样条系数、残差权重和样条权重),而 FastKAN 由于省略了样条权重机制,参数量较少 (3,811)。
架构探索
通过改变层结构(例如“无残差”、“无样条权重”、“纯净型”)进行的实验表明:
- 移除残差分支或样条权重会降低参数量(降至 3,510)并缩短推理时间(对于 GRBF 模型,速度提升高达 ~16.8%)。
- 预测性能在这些变体中保持了竞争力,RMSE 的偏差通常很小,这表明 KANLib 支持灵活的架构设计而不会显著损失精度。
重要性与主张
论文将 KANLib 定位为并非旨在实现超越所有现有方法的最高预测精度,而是作为未来研究的稳健基础。其主要意义在于:
- 弥合差距: 它通过统一碎片化的实现,将 KANs 的理论潜力与实际、可扩展的应用联系起来。
- 赋能可扩展性: 通过提供模块化架构,它降低了研究人员测试新基函数、网格策略和混合架构的门槛。
- 标准化: 它提供了一个一致的环境来评估 KANs,解决了目前阻碍比较研究的功能支持不一致的问题。
作者总结道,虽然由于包含了自适应网格逻辑,KANLib 在 GRBF 计算方面与高度专业化的 Fast-KAN 相比存在轻微的计算开销,但它为探索全谱系的 KAN 架构提供了必要的灵活性。未来的工作确定为优化高斯 RBF 计算以缩小速度差距,并扩展对时间相关传感器数据的一维卷积支持。
每周获取最佳 machine learning 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。