论文阅读KAN: Kolmogorov–Arnold Networks

news2024/11/24 18:44:02

学习了最近大热的KAN网络

论文地址:https://arxiv.org/pdf/2404.19756

按我个人读论文的习惯总结了如下几点:

1,背景:

1)灵感来源:于Kolmogorov-Arnold表示定理,也就是多变量连续函数可以表示为一变量连续函数的有限组合。

2)MLPs的缺点

        (I)固定激活函数:MLPs在每个神经元上使用固定的激活函数,这限制了模型适应复杂数据模式的能力。

        (II)可解释性差

        (III)维度灾难

        (IV)使用ReLU激活函数时,对于逼近指数函数和正弦函数等函数时效率非常低

        (V)在Transformer中,MLPs消耗了几乎所有的非嵌入参数

3)与MLPs相比,KANs在网络的边上使用可学习的激活函数,而不是节点上的固定激活函数。

2,KAN的技术细节

1)结构

KANs中的激活函数由B样条(B-splines)定义,这是一种分段定义的多项式,用于生成平滑曲线。每个激活函数都是一个B样条曲线,其系数是可学习的参数。这种参数化方法不仅提供了高度的灵活性,还允许模型在训练过程中自动调整激活函数的形状,以更好地适应数据。

(图0.1 MLPs和KANs的对比)

左侧:流经网络的激活函数的表示。右侧:激活函数被参数化为B样条曲线(B-spline),允许在粗粒度和细粒度网格之间进行切换。

文章提出的KAN的基础模型结构:

其计算图完全由如下方程指定:

并在图0.1(b)中进行了说明(输入维度n=2),它呈现为一个两层神经网络,激活函数位于边上而非节点上(在节点上进行简单的求和),中间层的宽度为2n + 1。

2)训练

KANs可以使用标准的反向传播算法进行训练,因为所有操作都是可微分的。在训练过程中,模型的参数(包括B样条的系数)会通过梯度下降算法进行更新。论文中提到了使用LBFGS(Limited-memory Broyden–Fletcher–Goldfarb–Shanno)优化器进行训练,这是一种适用于非线性优化问题的算法。

3,KANs的优点:

1)准确性:在小规模的AI+Science任务中,KANs显示出比MLPs更高的准确性。

2)可解释性:KANs的架构允许更直观的可视化和与人类的交互,有助于提高模型的可解释性。

3)神经扩展法则:KANs拥有比MLPs更快的神经扩展法则,意味着在模型参数增加时,测试误差下降得更快。

4)避免灾难性遗忘:KANs利用样条的局部特性来避免在持续学习中出现的灾难性遗忘问题。

4,KANs的缺点和暂时的不足:

1)训练速度:KANs相比于MLPs训练速度较慢。论文指出,KANs的训练通常比MLPs慢10倍。

2)理论基础尚不完善:目前只适用于特定结构的KAN,对于构建更深更宽的网络还没有理论支持。

3)算法效率:论文中提到,KANs在算法效率方面存在一些问题,例如,不同的激活函数不能利用批处理计算,这限制了计算效率。

4)超参数依赖性:KANs的性能可能依赖于特定的超参数选择,例如,论文中提到了熵惩罚和正则化强度对网络稀疏性的影响。

5)高维时如何实现:目前尚不清楚我们的方法是否能推广到更实际的场景中,尤其是当维度较高时,如何定义“局部性”尚不清楚。

6)泛化能力尚存疑:尽管KANs在理论上具有避免维度灾难的潜力,但论文中也提到了需要进一步研究KANs在不同数据集上的鲁棒性,以及它们与其他深度学习架构的兼容性。

7)复杂性与可解释性:论文中提到,虽然KANs提供了更高的可解释性,但是在某些情况下,例如当激活函数的权重矩阵存在时,可解释性可能会受到影响。

8)持续学习:尽管KANs在避免灾难性遗忘方面表现出潜力,但论文中也指出了需要进一步研究KANs在更现实的场景中的持续学习能力。

9)应用范围:论文中提出KANs在小规模AI+Science任务中表现出色,但对于更大规模或更复杂的任务,KANs的表现和适用性还需要进一步的实证研究。

10)计算资源:论文中提到,尽管KANs在参数数量上可能比MLPs更高效,但它们在实际应用中可能需要更多的计算资源,尤其是在处理大规模数据集时。

作为一个新模型,目前的不足多一点也很正常,重要的是其潜力。如果能够把KANs推广到目前MLPs的所有应用场景,那可以填的坑可以写的论文就太多了。

5,文中提到的应用场景:

1)小规模AI+Science任务:KANs在小规模的人工智能与科学结合的任务中表现出色,尤其是在准确性和可解释性方面。

2)函数拟合:KANs在数学和物理学的特定函数拟合任务中,展示了比传统MLPs更高的准确性。

3)数学中的结理论(Knot Theory):KANs被用于探索和重新发现结理论中的数学关系,这涉及到了拓扑学的应用。

4)物理学中的Anderson局域化:KANs被应用于分析和理解电子在量子系统中的局域化现象,这涉及到了凝聚态物理学。

5)解决偏微分方程(PDEs):KANs在解决特定类型的偏微分方程时表现出了潜力,特别是在物理信息神经网络(Physics-Informed Neural Networks, PINNs)的框架内。

6)图像表示学习:虽然论文中没有直接提到图像处理,但KANs理论上可以应用于图像的隐式表示,例如通过学习图像的隐式函数来进行图像压缩或生成。

7)持续学习:KANs在持续学习场景中展现出避免灾难性遗忘的能力,这对于开发能够随时间累积知识的模型非常重要。

8)科学发现:KANs由于其可解释性,被提出作为帮助科学家(重新)发现数学和物理定律的工具。

9)通用函数逼近:论文中提到KANs理论上具有通用逼近性质,能够逼近多变量连续函数,这意味着它们可以应用于广泛的函数逼近任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1806253.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型常用推理参数工作原理

🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 do_sample do_sample 参数控制是否使用采样…

戴尔R720服务器(3)组RAID

今天收到7块硬盘,现在共有8块硬盘了,找了个视频学习了怎么使用阵列卡组RAID并记录。 ​​ ‍ 视频参考:【戴尔服务器添加RAID5热备盘hotspare】 ‍ 阵列卡组RAID5 开始 连接iDRAC控制台服务器开机按F2进入BIOS选择Device Settings​ ​​…

知识图谱的应用---智能电网

文章目录 智能电网典型应用 智能电网 智能电网以物理电网为基础,将现代先进的传感测量技术、通讯技术、信息技术、计算机技术和控制技术与物理电网高度集成而形成的新型电网。它以充分满足用户对电力的需求和优化资源配置、确保电力供应的安全性、可靠性和经济性、满…

C++输入输出与IO流

C 输入输出与I/O流 文章目录 C 输入输出与I/O流IO类型与基础特性概念与特性IO状态输出缓冲区 文件输入输出文件模式 string流IO处理中常用的函数及操作符综合练习与demo一、 创建文件并写入二、控制台输入数据并拆分存储三、读写电话簿 IO类型与基础特性 C11标准提供了几种IO处…

【ArcGIS微课1000例】0117:ArcGIS中如何将kml(kmz)文件转json(geojson)?

文章目录 一、kml获取方式二、kml转图层三、图层转json一、kml获取方式 kml文件是一种很常用的数据格式,可以从谷歌地球(googleearth)获取某一个地区的kml范围文件,如青海湖(做好的kml文件可以从配套实验数据包0117.rar中获取)。 二、kml转图层 打开【KML转图层】工具,…

前端项目打包、部署的基础 (vue)

详细请看B站视频 BV19n4y1d7Gr 《禹神:前端项目部署指南,前端项目打包上线》,本博客为自用视频笔记。 目录 项目打包vue打包打包前分析项目请求 本地服务器部署问题 & 解决问题1:刷新页面404问题问题2:ajax请求废…

最新下载:PDFFactoryFinePrint【软件附加安装教程】

简介: pdfFactory是一款无须 Acrobat 创建 Adobe pdf 文件的打印机驱动程序, 提供的创建 PDF 文件的方法比其他方法更方便和高效。 pdfFactory 支持从所有应用程序轻松、可靠地创建 PDF 文件。 支持将单页或两页的文档,直接打印为PDF文件&a…

信息学奥赛初赛天天练-24-二叉树、N叉树遍历技巧与前缀表达式、中缀表达式、后缀表达式应用实战演练

PDF文档公众号回复关键字:20240609 单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正确选项) 5 根节点的高度为1,一根拥有2023个节点的三叉树高度至少为( )。 A 6 B 7 C 8 D 9 8 后缀表达式 6 2 3 + - 3 8 2 / + * 2 ^ 3 + 对应的中缀表达式是( ) A ((…

[Linux]内网穿透nps

文章目录 基础文件下载项目地址下载地址 客户端安装解压文件客户端启动客户端注册到linux系统服务客户端注册到windows系统服务windows bat 一键管理员注册windows bat 一键管理员取消 基础文件下载 项目地址 https://github.com/ehang-io/nps 下载地址 Releases ehang-io…

12.打渔还是晒网

上海市计算机学会竞赛平台 | YACSYACS 是由上海市计算机学会于2019年发起的活动,旨在激发青少年对学习人工智能与算法设计的热情与兴趣,提升青少年科学素养,引导青少年投身创新发现和科研实践活动。https://www.iai.sh.cn/problem/17 题目描述 有句俗话叫“三天打渔,两天…

VBA高级应用30例应用2实现在列表框内及列表框间实现数据拖动

《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以…

AI大模型学习(非常详细)零基础入门到精通,收藏这一篇就够了

前言 随着人工智能技术的快速发展,AI大模型学习正成为一项备受关注的研究领域。为了提高模型的准确性和效率,研究者们需要具备深厚的数学基础和编程能力,并对特定领域的业务场景有深入的了解。通过不断优化模型结构和算法,AI大模…

【西瓜书】9.聚类

聚类任务是无监督学习的一种用于分类等其他任务的前驱过程,作为数据清洗,基于聚类结果训练分类模型 1.聚类性能度量(有效性指标) 分类任务的性能度量有错误率、精度、准确率P、召回率R、F1度量(P-R的调和平均)、TPR、FPR、AUC回归…

关系数据库标准查询语言-SQL-SQL语言概述

一、SQL(Structured Query Language)语言 1、是高度非过程化的语言 2、关系数据库管理系统(RDBMS)都支持SQL标准 3、具有定义、查询、更新、控制四大功能 4、数据库对象由数据库(Database)、基本表(Table)、视图(V…

Spark参数配置不合理的情况

1.1 内存设置 💾 常见的内存设置有两类:堆内和堆外 💡 我们作业中大量的设置 driver 和 executor 的堆外内存为 4g,造成资源浪费 📉。 通常 executor 堆外内存在 executor.cores1 的时候,1g 足够了&…

都怪我当初没有好好了解你,Java虚拟机(JVM)

初始JVM JVM本质是一个运行在计算机上的程序,作用是运行Java字节码文件。 下面是它的运行流程: 看完上述运行过程,现在提出一个问题:Java是编译型语言还是解释型语言? 这里先补充什么是编译,什么是解释&am…

电子阅览室有何作用

随着互联网的快速发展,电子阅览室逐渐成为人们获取知识的新方式。它为读者提供了便捷、高效的阅读体验,具有诸多作用。首先,电子阅览室拥有丰富的电子书籍资源,涵盖了各个领域的知识。无论是文学作品还是学术论文,读者…

(Proteus仿真设计)基于51单片机的电梯程序控制系统

(Proteus仿真设计)基于51单片机的电梯程序控制系统 一.项目介绍 本设计模拟的是一个五层的,各楼层间隔为4.5m的电梯程序控制系统,能够完成各楼层乘客的接送任务。形象地说,就是要对不同楼层乘客的不同需求&#xff0…

Python第二语言(八、Python包)

目录 1. 什么是Python包 2. 创包步骤 2.1 new包 2.2 查看创建的包 2.3 拖动文件到包下 3. 导入包 4. 安装第三方包 4.1 什么是第三方包 4.2 安装第三方包-pip 4.3 pip网络优化 1. 什么是Python包 包下有__init__.py就是包,无__init__.py就是文件夹。于Ja…

Python中报错提示:TypeError: Student() takes no arguments

Python中报错提示:TypeError: Student() takes no arguments 在Python编程中,类是创建对象的蓝图。每个类都可能包含一个特殊的方法__init__,我们称之为构造函数,它在创建新实例时被调用。如果你在尝试创建一个类的实例时遇到了Ty…