Skip to main content

Kolmogorov Arnold Networks

Project description

kan_plot

Kolmogorov-Arnold Newtworks (KANs)

This the github repo for the paper "KAN: Kolmogorov-Arnold Networks" [link]. Find the documentation here.

Kolmogorov-Arnold Networks (KANs) are promising alternatives of Multi-Layer Perceptrons (MLPs). KANs have strong mathematical foundations just like MLPs: MLPs are based on the universal approximation theorem, while KANs are based on Kolmogorov-Arnold representation theorem. KANs and MLPs are dual: KANs have activation functions on edges, while MLPs have activation functions on nodes. This simple change makes KANs better (sometimes much better!) than MLPs in terms of both model accuracy and interpretability. A quick intro of KANs here.

mlp_kan_compare

Installation

There are two ways to install pykan, through pypi or github.

Installation via github

git clone https://github.com/KindXiaoming/pykan.git
cd pykan
pip install -e .

Installation via pypi

pip install pykan

Requirements

matplotlib==3.6.2
numpy==1.24.4
scikit_learn==1.1.3
setuptools==65.5.0
sympy==1.11.1
torch==2.2.2
tqdm==4.66.2

To install requirements:

pip install -r requirements.txt

Documentation

The documenation can be found here.

Tutorials

Quickstart

Get started with hellokan.ipynb notebook.

More demos

More Notebook tutorials can be found in tutorials.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pykan-0.0.2.tar.gz (28.0 kB view details)

Uploaded Source

Built Distribution

pykan-0.0.2-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

Details for the file pykan-0.0.2.tar.gz.

File metadata

  • Download URL: pykan-0.0.2.tar.gz
  • Upload date:
  • Size: 28.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pykan-0.0.2.tar.gz
Algorithm Hash digest
SHA256 c0e70fda6abb80bc31baeef4a3235169bffb8348c78a57dc2b9d6a3093276f67
MD5 08338cb8decca606425472b43d65a253
BLAKE2b-256 3050df87d404dbb937c30a16b5ead311d19e8cfa34fe4e1f7b16607962b160aa

See more details on using hashes here.

File details

Details for the file pykan-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: pykan-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 29.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pykan-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cf3e514d56628120e14e22437e47b0860b13dd55295f2321c710a724434cc6be
MD5 0c28a1a8e0e119ddd3f0047df6bfe762
BLAKE2b-256 11ae670c600efd31e2c9d50d09fb018d7d4958529313dd5ea73624ba6999eeaf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page