: It offers built-in plotting functions to visualize the "shape" of the learned functions on every edge, helping researchers "see" what the model has learned. Key Features and Limitations Description Language Built on Python and PyTorch. Efficiency
: The library includes specific tools for "symbolic regression," where the model attempts to simplify learned splines into exact mathematical formulas (e.g., turning a learned curve into x2x squared
: It is designed to mimic the structure of standard PyTorch models, allowing users to define a model with simple parameters like width , grid (spline resolution), and k (spline order). kan.py
Supports CPU and GPU, though GPU support may require specific configurations in early versions.
(often referred to as pykan ) is the official Python implementation of Kolmogorov-Arnold Networks (KANs) , a novel neural network architecture inspired by the Kolmogorov-Arnold representation theorem. Unlike traditional Multi-Layer Perceptrons (MLPs) that use fixed activation functions on "neurons" (nodes), KANs place learnable activation functions—typically splines—directly on the "weights" (edges) of the network. Core Concept: The KAN Architecture : It offers built-in plotting functions to visualize
). In a KAN, each connection is a small, learnable spline function (
: In a standard MLP, a connection is just a single number ( Supports CPU and GPU, though GPU support may
The pykan repository, maintained by the original researchers, provides the tools to build, train, and visualize these networks.