Content



Multi layered Kolmogorov-Arnold network

Reference to code KAN



Original Kolmogorov-Arnold representation (KAR) $$ M(x_1, x_2, x_3, ... , x_n) = \sum_{q=0}^{2n} \Phi_q\left(\sum_{p=1}^{n} \phi_{q,p}(x_{p})\right) $$ can be graphically depicted by the following hierarchical chart



where each block is individual Urysohn operator $$ u_q = \sum_{p=1}^{n} \phi_{q,p}(x_{p}). $$ Kolmogorov-Arnold network (KAN) has a different structure. It has more than two layers and each Urysohn from lower level is connected to each Urysohn object of the next one.


To avoid confusion we will use slightly different abbreviations KAN and KAR.

KAR is very powerful model with the high descriptive power, but unfortunately it has some limitations. It can be seen on very simple example: the modeling of Area of rectangle by the coordinates of vertices



The code referenced on the top of this page runs two tests. One of them is classic KAR, which gives relative error near 4% and another one is multi layered KAN, which gives relative error for validation set usually near 1%.

Below is program printout:
Epoch 199, current relative error 0.030632
Time for training 3.955 sec.
Relative RMSE error for unseen data 0.03778

Epoch 199, current relative error 0.011223
Time for training 7.923 sec.
Relative RMSE error for unseen data 0.01415
The training set is 10,000 records, validation set is 2,000 records. We can recommend this dataset as a good challenge or benchmark for testing other AI models.