Réseaux de Kolmogorov-Arnold
From Wikipedia, the free encyclopedia
Les réseaux de Kolmogorov-Arnold (KAN) sont un type d'architecture de réseau de neurones artificiels inspirée du théorème de représentation de Kolmogorov-Arnold (en), également connu sous le nom de théorème de superposition. Contrairement aux perceptrons multicouches (MLP) traditionnels, qui utilisent des fonctions d'activation fixes et des poids linéaires, les KAN remplacent chaque poids par une fonction univariée apprenable, souvent représentée par des splines[1],[2],[3].
Historique
Les réseaux de Kolmogorov-Arnold (KAN) ont été proposés par Liu et al. (2024)[4] comme une généralisation du théorème de représentation de Kolmogorov-Arnold (KART), visant à surpasser les perceptrons multicouches (MLP) dans les petites tâches d'IA et scientifiques. Avant les KAN, de nombreuses études ont exploré les liens entre le KART et les réseaux de neurones, ou l'ont utilisé comme base pour concevoir de nouvelles architectures de réseaux.
Dans les années 1980 et 1990, les premières recherches ont appliqué la méthode du KART à la conception de réseaux de neurones. Kůrková et al. (1992)[5], Hecht-Nielsen (1987)[6] et Nees (1994)[7] ont établi les fondements théoriques des réseaux multicouches basés sur KART. Igelnik et al. (2003)[8] a introduit le réseau de splines de Kolmogorov, utilisant des splines cubiques pour modéliser des fonctions complexes. Sprecher (1996, 1997)[9],[10] a introduit des méthodes numériques pour la construction des couches du réseau, tandis que Nakamura et al. (1993)[11] ont créé des fonctions d'activation avec une précision d'approximation garantie. Ces travaux ont permis de relier le potentiel théorique du KART à la mise en œuvre pratique des réseaux de neurones.
Le théorème de représentation de Kolmogorov-Arnold (KART) a également été utilisé dans d'autres domaines informatiques et théoriques. Par exemple, Coppejans (2004)[12] a développé des estimateurs de régression non paramétriques utilisant des B-splines ; Bryant (2008) l'a appliqué à des tâches d'imagerie de grande dimension ; Liu (2015) a étudié des applications théoriques dans le transport optimal et le chiffrement d'images ; plus récemment, Polar et Poluektov (2021)[13] ont utilisé des opérateurs d'Urysohn pour une construction KART efficace ; et Fakhoury et al. (2022)[14] ont intégré le KART à des arbres probabilistes et des B-splines multivariées pour obtenir une approximation de fonction améliorée.
Architecture
Les réseaux de Kolmogorov-Arnold (KAN) sont basés sur le théorème de représentation de Kolmogorov-Arnold (KART), qui était lié au 13e problème de Hilbert[15],[16],[17].
Donné composée de n variables, une fonction continue multivariée peut être représenté comme :
- (1)
Cette formulation contient deux sommes imbriquées : une somme externe et une somme interne. La somme externe agrège termes, chacun impliquant une fonction .
La somme intérieure calcule n termes pour chaque q, où chaque terme est une fonction continue de la variable unique . Les fonctions continues intérieures sont universels, indépendants de , tandis que les fonctions externes dépendent de la fonction spécifique étant représentée. La représentation (1) est valable pour toutes les fonctions multivariées comme démontré dans [17]. Si si est continue, alors les fonctions extérieures sont continues ; si est discontinue, alors les fonctions extérieures correspondantes sont généralement discontinues, tandis que les fonctions internes restent les mêmes fonctions universelles.
Un KAN général composé de L couches prend x en entrée pour générer la sortie comme suit :
- (3)
Ici, est la matrice de fonction de la l-ième couche KAN ou d'un ensemble de pré-activations.
Si i est le neurone de la l-ième couche et j le neurone de la (l+1)-ième couche, alors la fonction d'activation relie (l, i) à (l+1, j) comme suit :
- (4)
où nl est le nombre de nœuds de la l-ième couche.
Par conséquent, la matrice de fonction peut être représentée comme une matrice des activations :
Implémentations
Pour rendre optimisables les couches d'un KAN, la fonction interne est formée par la combinaison de fonctions spline et de fonctions de base selon la formule :
où est la fonction de base, généralement définie comme , et est la matrice de pondération de base. est la matrice de pondération des splines, et est la fonction spline. La fonction spline peut être une somme de B-splines.
De nombreuses études ont suggéré de remplacer les B-splines par d'autres fonctions polynomiales ou d'autres courbes pour créer de nouvelles variantes de KAN[18],[19],[3].
Fonctions utilisées
Le choix de la base fonctionnelle a une forte influence sur les performances des KAN. Parmi les différentes familles de fonctions courantes, on trouve :
- Les B-splines : elles offrent à la fois localité, régularité et interprétabilité ; ce sont les plus utilisées dans les implémentations actuelles[3].
- Les fonctions de base radiales ou RBF (y compris les RBF gaussiennes) : elles capturent les caractéristiques localisées des données, et sont efficaces pour approximer les fonctions ayant des structures non linéaires ou groupées[3],[20].
- Les polynômes de Tchebychev : ils offrent une approximation efficace avec une erreur minimale dans la norme maximale, ce qui les rend utiles pour la représentation stable des fonctions[3],[21].
- Les fonctions rationnelles : elles sont utiles pour approximer des fonctions présentant des singularités ou des variations brusques, car elles modélisent mieux les comportements asymptotiques que les polynômes[3],.
- Les séries de Fourier : elles permettent de capturer efficacement les motifs périodiques et sont particulièrement utiles dans des domaines tels que l'apprentissage automatique basé sur la physique[3],[22],[23].
- Les fonctions d'ondelettes (différence de gaussiennes, chapeau mexicain, Morlet et Shannon) : elles sont utilisées pour extraire des caractéristiques spécifiques, grâce à leur capacité à capturer à la fois les composantes de données à haute et à basse fréquence[3],[24],.
- Les fonctions linéaires par morceaux : elles fournissent une approximation efficace pour les fonctions multivariées dans les KAN[25],[26].
Utilisation
Dans certaines architectures neuronales modernes, comme les réseaux de neurones convolutifs (CNN), les réseaux de neurones récurrents (RNN) et les transformeurs, les KAN sont généralement utilisés comme substituts directs aux couches MLP. Malgré leur conception généraliste, les KAN ont été utilisés pour de nombreuses tâches spécifiques, notamment :
- L'apprentissage automatique scientifique (SciML) : ajustement de fonctions, équations aux dérivées partielles (EDP)[1],[27],[28] et lois physiques/mathématiques.
- L'apprentissage continu : les KAN préservent mieux les informations apprises précédemment lors des mises à jour incrémentales, évitant ainsi les phénomènes d'oubli catastrophique dû à la localité des ajustements de spline[2],[29].
- Les réseaux neuronaux graphiques : des extensions telles que les réseaux neuronaux graphiques de Kolmogorov-Arnold (KA-GNN) intègrent des modules KAN dans des architectures à passage de messages, montrant des améliorations dans les tâches de prédiction des propriétés moléculaires[3],[30],[31].
Inconvénients
Du fait de leur utilisation de fonctions polynomiales pour capturer les données, les KAN peuvent nécessiter une puissance de calcul importante et un grand nombre de paramètres[32],.
Voir aussi
- Théorème de représentation de Kolmogorov-Arnold
- Théorème d'approximation universelle