MLP的局限性
- 梯度消失和梯度爆炸:激活函数的导数连乘可能导致梯度趋于0或异常大。
- 参数效率低:全连接层导致参数数量迅速增加。
- 处理高维数据能力有限:MLP没有利用数据的内在结构(图像中的局部空间相关性或文本的序列信息)。
- 长期依赖问题:MLP难以捕捉输入序列中的长期依赖关系(长时间跨度的相关信息)。
KAN数学原理
柯尔莫果洛夫-阿诺尔德表示定理(用一组较简单的函数可以表示任何一个多变量的连续函数):
上式可表示为一个两层的神经网络,与MLP的区别在于:
- 没有对输入进行线性组合而是直接对输入进行激活;
- 激活函数并不固定,需要学习。
与MLP每层线性组合后统一进行非线性空间变化相比,KAN对每个输入单独进行非线性变换,再进行线性组合(没有了激活函数和参数矩阵的嵌套,而是非线性函数的直接嵌套)。
上式中:
所有的非线性函数
KAN网络架构
根据柯-阿定理,KAN网络某一层输入为n
个,则该层的输出为2n+1
个。
进一步的,抛弃n
个输入得到2n+1
个输出的限制,隐层节点数量可以自由发挥。
多层函数级联可写为:
激活函数(残差激活函数): 基础函数b(x)和样条函数spline(x)的总和
KAN准确性提升
MLP通过增加模型的宽度和深度来提高性能。
KAN开始可以用较少的参数训练,然后通过简单的细化样条网格来增加参数,无需重新训练模型(grid extension)。
KAN可解释性提升
使用稀疏正则化和剪枝技术从较大的KAN开始训练,剪枝后的KAN更容易解释。
- 稀疏化:使用L1正则化促进权重的稀疏性。
- 剪枝:通过剪枝技术移除不重要的连接和神经元。
- 设定特定激活函数:根据剪枝后的神经元特性,手动设置或调整特定神经元的激活函数。
- 训练仿射函数:对模型参数再次训练。
- 符号化:输出对原始目标函数的一个近似表示(符号公式)。