Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Kolmogorov-Arnold Networks (KANs) #125389

Open
anshika-anand opened this issue May 2, 2024 · 2 comments
Open

Support for Kolmogorov-Arnold Networks (KANs) #125389

anshika-anand opened this issue May 2, 2024 · 2 comments
Labels
module: nn Related to torch.nn triaged This issue has been looked at a team member, and triaged and prioritized into an appropriate module

Comments

@anshika-anand
Copy link

anshika-anand commented May 2, 2024

Proposal for adding support for Kolmogorov-Arnold Networks (KANs) in PyTorch. KANs are a promising alternative to traditional Multi-Layer Perceptrons (MLPs) and offer potential advantages in terms of accuracy, scaling, and interpretability.

KANs are inspired by the Kolmogorov-Arnold representation theorem and have a fundamentally different structure compared to MLPs. Instead of having fixed activation functions on nodes (neurons) and linear weights, KANs have learnable activation functions on edges (weights), and every weight parameter is replaced by a univariate function parameterized as a spline.

Additional context

KAN: Kolmogorov–Arnold Networks, The paper was submitted on 30th April,2024 by researchers from Massachusetts Institute of Technology, California Institute of Technology, Northeastern University, The NSF Institute for Artificial Intelligence and Fundamental Interactions.

cc @albanD @mruberry @jbschlosser @walterddr @mikaylagawarecki

@hvaara
Copy link
Contributor

hvaara commented May 2, 2024

Ref https://github.com/KindXiaoming/pykan
cc @KindXiaoming

@jbschlosser jbschlosser added module: nn Related to torch.nn triaged This issue has been looked at a team member, and triaged and prioritized into an appropriate module and removed triage review labels May 6, 2024
@jbschlosser
Copy link
Contributor

jbschlosser commented May 6, 2024

Hey @anshika-anand, thanks for the request! To keep our maintenance burden manageable, PyTorch Core has fairly strict rules regarding adding a new Optimizer or Module function or feature: https://github.com/pytorch/pytorch/wiki/Developer-FAQ#i-have-a-new-function-or-feature-id-like-to-add-to-pytorch-should-it-be-in-pytorch-core-or-a-library-like-torchvision.

Currently, KANs seem best suited to be utilized from an external library, such as pykan linked above. In the future, we'll happily reconsider if they increases in popularity to the point where it is expected within torch.nn. We can leave this issue open to gauge popularity among other researchers and users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module: nn Related to torch.nn triaged This issue has been looked at a team member, and triaged and prioritized into an appropriate module
Projects
Status: To pick up
Development

No branches or pull requests

4 participants