本月初,来自 MIT 等机构的研究者提出了一种非常有潜力的 MLP 替代方法 ——KAN。
KAN在准确性和可解释性方面表现优于MLP。而且它能以非常少的参数量胜过以更大参数量运行的MLP。比如,作者表示,他们用KAN以更小的网络和更高的自动化程度重现了DeepMind的结果。具体来说,DeepMind的MLP有大约300,000个参数,而KAN只有约200个参数。
KAN 与 MLP 一样具有强大的数学基础,MLP 基于通用逼近定理,而 KAN 基于 Kolmogorov-Arnold 表示定理。
如下图所示,KAN 在边上具有激活函数,而 MLP 在节点上具有激活函数。KAN 似乎比 MLP 的参数效率更高,但每个 KAN 层比 MLP 层拥有更多的参数。 图片: [图1:示意图] 简要解释: KAN 是一种基于边的神经网络结构,每个节点都具有边的权重和激活函数。它通过边的传播来实现信息的传递和更新。 MLP 是一种基于节点的神经网络结构,每个节点都具有输入的
最近,有研究者将 KAN 创新框架的理念扩展到卷积神经网络,将卷积的经典线性变换改为每个像素中可学习的非线性激活函数,提出并开源 KAN 卷积(CKAN)。
项目地址:https://github.com/AntonioTepsich/Convolutional-KANs
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 卷积的性能。
值得注意的是,之所以公布这些「初步」结果,是因为他们希望尽快向外界介绍这一想法,推动社区更广泛的研究。
卷积层中列表每个元素都包含卷积数和相应的内核大小。
基于 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 卷积网络的性能应该会有所提高。同时,随着输入维数的增加,模型的参数数量也会增长得更快。
以上是替代MLP的KAN,被开源项目扩展到卷积了的详细内容。更多信息请关注PHP中文网其他相关文章!