替代MLP的KAN,被开源项目扩展到卷积了

人工智能 新闻
KAN 与 MLP 一样具有强大的数学基础,MLP 基于通用逼近定理,而 KAN 基于 Kolmogorov-Arnold 表示定理。

本月初,来自 MIT 等机构的研究者提出了一种非常有潜力的 MLP 替代方法 ——KAN。

KAN 在准确性和可解释性方面表现优于 MLP,而且它能以非常少的参数量胜过以更大参数量运行的 MLP。比如,作者表示,他们用 KAN 以更小的网络和更高的自动化程度重现了 DeepMind 的结果。具体来说,DeepMind 的 MLP 有大约 300000 个参数,而 KAN 只有大约 200 个参数。

KAN 与 MLP 一样具有强大的数学基础,MLP 基于通用逼近定理,而 KAN 基于 Kolmogorov-Arnold 表示定理。

如下图所示,KAN 在边上具有激活函数,而 MLP 在节点上具有激活函数。KAN 似乎比 MLP 的参数效率更高,但每个 KAN 层比 MLP 层拥有更多的参数。

最近,有研究者将 KAN 创新架构的理念扩展到卷积神经网络,将卷积的经典线性变换更改为每个像素中可学习的非线性激活函数,提出并开源 KAN 卷积(CKAN)。

图片

项目地址:https://github.com/AntonioTepsich/Convolutional-KANs

KAN 卷积

KAN 卷积与卷积非常相似,但不是在内核和图像中相应像素之间应用点积,而是对每个元素应用可学习的非线性激活函数,然后将它们相加。KAN 卷积的内核相当于 4 个输入和 1 个输出神经元的 KAN 线性层。对于每个输入 i,应用 ϕ_i 可学习函数,该卷积步骤的结果像素是 ϕ_i (x_i) 的总和。

KAN 卷积中的参数

假设有一个 KxK 内核,对于该矩阵的每个元素,都有一个 ϕ,其参数计数为:gridsize + 1,ϕ 定义为:

这为激活函数 b 提供了更多的可表达性,线性层的参数计数为 gridsize + 2。因此,KAN 卷积总共有 K^2(gridsize + 2) 个参数,而普通卷积只有 K^2。

初步评估

作者测试过的不同架构有:

  • 连接到 KAN 线性层的 KAN 卷积层(KKAN)
  • 与 MLP 相连的 KAN 卷积层(CKAN)
  • 在卷积之间进行批量归一化的 CKAN (CKAN_BN)
  • ConvNet(连接到 MLP 的经典卷积)(ConvNet)
  • 简单 MLP

图片

作者表示,KAN 卷积的实现是一个很有前景的想法,尽管它仍处于早期阶段。他们进行了一些初步实验,以评估 KAN 卷积的性能。

值得注意的是,之所以公布这些「初步」结果,是因为他们希望尽快向外界介绍这一想法,推动社区更广泛的研究。

图片

卷积层中列表每个元素都包含卷积数和相应的内核大小。

基于 28x28 MNIST 数据集,可以观察到 KANConv & MLP 模型与 ConvNet(大)相比达到了可接受的准确度。然而,不同之处在于 KANConv & MLP 所需的参数数量是标准 ConvNet 所需的参数数量的 7 倍。此外,KKAN 的准确率比 ConvNet Medium 低 0.04,而参数数量(94k 对 157k)几乎只有 ConvNet Medium 的一半,这显示了该架构的潜力。我们还需要在更多的数据集上进行实验,才能对此得出结论。

在接下来的几天和几周里,作者还将彻底调整模型和用于比较的模型的超参数。虽然已经尝试了一些超参数和架构的变化,但这只是启发式的,并没有采用任何精确的方法。由于计算能力和时间的原因,他们还没有使用大型或更复杂的数据集,并正在努力解决这个问题。

未来,作者将在更复杂的数据集上进行实验,这意味着 KANS 的参数量将会增加,因为需要实现更多的 KAN 卷积层。

结论

目前,与传统卷积网络相比,作者表示并没有看到 KAN 卷积网络的性能有显著提高。他们分析认为,这是由于使用的是简单数据集和模型,与尝试过的最佳架构(ConvNet Big,基于规模因素,这种比较是不公平的)相比,该架构的优势在于它对参数的要求要少得多。

在 2 个相同的卷积层和 KAN 卷积层与最后连接的相同 MLP 之间进行的比较显示,经典方法略胜一筹,准确率提高了 0.06,而 KAN 卷积层和 KAN 线性层的参数数量几乎只有经典方法的一半,准确率却降低了 0.04。

作者表示,随着模型和数据集复杂度的增加,KAN 卷积网络的性能应该会有所提高。同时,随着输入维数的增加,模型的参数数量也会增长得更快。

责任编辑:张燕妮 来源: 机器之心
相关推荐

2015-08-13 13:44:21

优化多核

2024-05-07 13:07:18

模型训练

2009-02-26 10:50:04

NetApp虚拟化VMware ESX

2024-09-18 08:05:00

机器学习AI网络

2024-07-29 08:37:00

模型数据

2009-02-25 16:50:00

2020-06-05 14:30:03

CephCPU 线程

2020-06-16 11:12:26

医疗物联网IOT

2013-02-21 09:41:49

CitusData数据库Postgres

2024-08-21 13:24:21

2023-07-07 09:55:23

互联网论文

2021-10-25 15:50:42

区块链金融科技

2023-01-13 16:08:55

2017-05-26 23:09:47

2022-03-23 16:28:18

微软NVIDIAGPU

2023-03-08 14:14:51

微软ChatGPT

2012-10-31 09:32:41

思科思杰ADC

2009-11-12 15:30:44

2009-11-12 15:19:54

2023-03-03 14:08:51

网络安全首席信息安全官
点赞
收藏

51CTO技术栈公众号