# kindxiaoming/pykan

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/kindxiaoming-pykan).**

16,305 stars · 1,566 forks · Jupyter Notebook · MIT

## Links

- GitHub: https://github.com/KindXiaoming/pykan
- awesome-repositories: https://awesome-repositories.com/repository/kindxiaoming-pykan.md

## Description

pykan is a library for implementing Kolmogorov-Arnold Networks, replacing fixed node activation functions with learnable spline functions located on the network edges. It serves as an interpretable AI framework and symbolic regression tool designed to derive transparent mathematical rules from complex data.

The project focuses on converting learned numerical functions into human-readable symbolic expressions through library matching and formula conversion. It utilizes additive-compositional topologies and learnable piecewise polynomial segments to approximate non-linear mappings.

The framework includes capabilities for model optimization through regularization-driven sparsification and the pruning of redundant neurons and connections. It also provides utilities for visualizing network topology and inspecting activation functions throughout the training process.

## Tags

### Artificial Intelligence & ML

- [Edge-Based Activations](https://awesome-repositories.com/f/artificial-intelligence-ml/activation-functions/edge-based-activations.md) — Replaces fixed node activations with learnable spline functions located on the network edges.
- [Kolmogorov-Arnold Networks](https://awesome-repositories.com/f/artificial-intelligence-ml/kolmogorov-arnold-networks.md) — Implements the Kolmogorov-Arnold Network architecture using learnable functions on edges.
- [Sparsity Regularization](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-optimization-and-inference/hardware-and-acceleration/tensor-computing-libraries/tensor-operations/sparse-tensor-representations/sparsity-regularization.md) — Employs specific solvers and penalty functions during training to encourage sparse and interpretable weight distributions. ([source](https://kindxiaoming.github.io/pykan/intro.html))
- [Model Interpretability Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/model-interpretability-frameworks.md) — Provides a toolkit for pruning and sparsification to derive transparent rules from complex models.
- [Model Sparsification](https://awesome-repositories.com/f/artificial-intelligence-ml/model-optimization/profiling-and-benchmarking/model-performance-optimization/model-sparsification.md) — Uses regularization-driven sparsification to force unimportant connections to zero for better interpretability.
- [Neural Network Interpretability](https://awesome-repositories.com/f/artificial-intelligence-ml/neural-network-interpretability.md) — Builds models where internal logic is converted into human-readable mathematical formulas for transparency.
- [Additive-Compositional Topologies](https://awesome-repositories.com/f/artificial-intelligence-ml/additive-compositional-topologies.md) — Implements an additive-compositional topology to represent high-dimensional multivariate functions.
- [Model Pruning](https://awesome-repositories.com/f/artificial-intelligence-ml/model-optimization/compression-techniques/model-pruning.md) — Removes unimportant edges from the model to reduce complexity and increase interpretability. ([source](https://kindxiaoming.github.io/pykan/intro.html))
- [Neural Network Topology Visualizations](https://awesome-repositories.com/f/artificial-intelligence-ml/neural-network-topology-visualizations.md) — Provides utilities to visualize the model structure and inspect learnable activation functions throughout the training process. ([source](https://kindxiaoming.github.io/pykan/intro.html))
- [Spline-Based Learning Libraries](https://awesome-repositories.com/f/artificial-intelligence-ml/spline-based-learning-libraries.md) — Provides a machine learning implementation using learnable spline functions to improve accuracy and transparency.

### Scientific & Mathematical Computing

- [Spline-Based Approximations](https://awesome-repositories.com/f/scientific-mathematical-computing/mathematical-function-approximations/spline-based-approximations.md) — Approximates complex non-linear mappings using learnable piecewise polynomial segments.
- [Symbolic Library Matching](https://awesome-repositories.com/f/scientific-mathematical-computing/symbolic-expression-manipulators/symbolic-library-matching.md) — Converts learned numerical functions into mathematical formulas by matching them against predefined symbolic expressions.
- [Symbolic Regression](https://awesome-repositories.com/f/scientific-mathematical-computing/symbolic-regression.md) — Converts trained network functions into symbolic expressions to derive exact mathematical rules from data.
- [Symbolic Regression Tools](https://awesome-repositories.com/f/scientific-mathematical-computing/symbolic-regression-tools.md) — Ships tools for converting trained neural network functions into human-readable mathematical formulas.
- [Symbolic Formula Conversions](https://awesome-repositories.com/f/scientific-mathematical-computing/symbolic-regression/symbolic-formula-conversions.md) — Converts learned spline activations into mathematical symbolic expressions using automated library matching. ([source](https://kindxiaoming.github.io/pykan/intro.html))
- [Symbolic Rule Extractions](https://awesome-repositories.com/f/scientific-mathematical-computing/symbolic-regression/symbolic-rule-extractions.md) — Extracts human-readable mathematical rules from trained network functions to improve interpretability. ([source](https://cdn.jsdelivr.net/gh/kindxiaoming/pykan@master/README.md))
- [Scientific Machine Learning](https://awesome-repositories.com/f/scientific-mathematical-computing/scientific-machine-learning.md) — Uses symbolic extraction and regularization to discover physical laws hidden within dataset patterns.

### Graphics & Multimedia

- [Scene Hierarchy Pruning](https://awesome-repositories.com/f/graphics-multimedia/scene-graphs/scene-hierarchy-pruning.md) — Provides automated pruning of redundant nodes and edges to simplify the model graph.
