目录
目录
主要是作者的建议与ssn
地址
pykan/README.md at master · KindXiaoming/pykan · GitHub
超参数设置
结构规模要小
Start from a simple setup (small KAN shape, small grid size, small data, no reguralization lamb=0
).
lamb------正则化参数入
"lamb" 是指正则化参数λ(lambda),它在机器学习和深度学习中用于正则化模型以防止过拟合。正则化是一种惩罚模型复杂性的方法,通过在损失函数中添加一个与模型参数大小相关的项来实现。
具体来说,这里的"lamb=0"意味着没有应用正则化,或者正则化的强度被设置为0。
具体来说,这里的"lamb=0"意味着没有应用正则化,或者正则化的强度被设置为0。以下是一些常见的正则化技术及其对应的λ参数:
- L1正则化(Lasso):在损失函数中添加模型权重绝对值之和的λ倍。
- L2正则化(Ridge):在损失函数中添加模型权重平方和的λ倍。
- 弹性网(Elastic Net):是L1和L2正则化的组合,损失函数中同时包含L1和L2正则化项,每个项前都有自己的λ参数。
例如5输入1输出,会首先尝试width=【5,1,1】的=》增加宽度=》增加深度
增加解释性
1.稀疏化网路
增加lamb
model.train(lamb=0.01)
2.剪枝
现成的剪枝方法
pruned_model = model.prune()
3.可解释性与准确性不一定对立,
时常正相关,有一个平衡
4.训练出较好的结果,可以增加数据量,再来最后一次的训练!
5.为防止过拟合,先让模型欠拟合,在逐步增加数据量,增大规模时,先增加grid,在增加width
作者note
适用于小规模、训练速度熳效率不高、不能即插即用、需要调整超参数、
是否适用llm?恐怕还不行
与mlp还不能相互替代。
作者是学物理的。
一些链接:
API
API --- Kolmogorov Arnold Network documentation
GITHUB
pykan/kan/KANLayer.py at master · KindXiaoming/pykan · GitHub
WELCOME
这个加载不出来可能需要