Au début du mois, des chercheurs du MIT et d'autres institutions ont proposé une alternative très prometteuse au MLP - KAN.
KAN surpasse MLP en termes de précision et d'interprétabilité. Et il peut surpasser le MLP fonctionnant avec un plus grand nombre de paramètres avec un très petit nombre de paramètres. Par exemple, les auteurs ont déclaré avoir utilisé KAN pour reproduire les résultats de DeepMind avec un réseau plus petit et un degré d'automatisation plus élevé. Plus précisément, le MLP de DeepMind compte environ 300 000 paramètres, tandis que le KAN n'en compte qu'environ 200.
KAN a le même fondement mathématique solide que MLP, qui est basé sur le théorème d'approximation universelle, tandis que KAN est basé sur le théorème de représentation de Kolmogorov-Arnold.
Comme le montre la figure ci-dessous, KAN a des fonctions d'activation sur les bords, tandis que MLP a des fonctions d'activation sur les nœuds. KAN semble être plus efficace en termes de paramètres que MLP, mais chaque couche KAN a plus de paramètres que les couches MLP. image: [Figure 1 : Diagramme schématique] Brève explication: KAN est une structure de réseau neuronal basée sur les bords, et chaque nœud a une fonction de poids de bord et d'activation. Il réalise la transmission et la mise à jour des informations via la propagation de périphérie. MLP est une structure de réseau neuronal basée sur des nœuds, chaque nœud a une entrée
Récemment, certains chercheurs ont étendu le concept du cadre innovant KAN aux réseaux neuronaux convolutifs, transformant la transformation linéaire classique de la convolution au lieu d'un fonction d'activation non linéaire apprenable dans chaque pixel, la convolution KAN (CKAN) est proposée et open source.
Adresse du projet : https://github.com/AntonioTepsich/Convolutional-KANs
La convolution KAN+ est très similaire à la convolution, mais pas dans le noyau et l'image au lieu de en appliquant un produit scalaire entre les pixels correspondants, une fonction d'activation non linéaire apprenable est appliquée à chaque élément puis additionnée. Le noyau de KAN+convolution est équivalent à une couche KAN+linéaire avec 4 neurones d’entrée et 1 neurone de sortie. Pour chaque entrée i, en appliquant la fonction apprenable ϕ_i, le pixel résultant de cette étape de convolution est la somme de ϕ_i (x_i).
Paramètres KAN en convolution
En supposant qu'il existe un noyau KxK, pour chaque élément de cette matrice, il existe un ϕ avec un nombre de paramètres de : taille de grille + 1, ϕ est défini comme :
Cela offre plus d'expressibilité pour la fonction d'activation b, le nombre de paramètres de la couche linéaire est taille de grille + 2. Par conséquent, la convolution KAN a un total de paramètres K ^ 2 (taille de la grille + 2), tandis que la convolution ordinaire n'a que K ^ 2.
Les différentes architectures testées par l'auteur sont :
L'auteur déclare que la mise en œuvre de convolution KAN est une idée prometteuse, même si elle en est encore à ses débuts. Ils ont mené quelques expériences préliminaires pour évaluer les performances des convolutions KAN.
Il convient de noter que la raison de la publication de ces résultats « préliminaires » est qu'ils espèrent introduire cette idée au monde extérieur le plus rapidement possible et promouvoir une recherche plus large dans la communauté.
Chaque élément de la liste dans la couche convolutive contient le numéro de convolution et la taille du noyau correspondant.
Sur la base de l'ensemble de données MNIST 28x28, on peut observer que les modèles KANConv et MLP atteignent une précision acceptable par rapport à ConvNet (grand). Cependant, la différence est que KANConv & MLP nécessitent 7 fois plus de paramètres que ConvNet standard. De plus, la précision de KKAN est inférieure de 0,04 à celle de ConvNet Medium, tandis que le nombre de paramètres (94 000 contre 157 000) est presque la moitié de celui de ConvNet Medium, ce qui montre le potentiel de cette architecture. Nous devons également mener des expériences sur davantage d’ensembles de données pour tirer des conclusions à ce sujet.
Dans les jours et semaines à venir, les auteurs peaufineront également en profondeur le modèle et les hyperparamètres des modèles utilisés à des fins de comparaison. Bien que certaines variantes d'hyperparamètres et d'architecture aient été essayées, il s'agit uniquement d'heuristiques et ne suivent aucune approche précise. Ils n’ont pas encore travaillé avec des ensembles de données volumineux ou plus complexes en raison de contraintes de puissance de calcul et de temps, et travaillent à résoudre ce problème.
À l'avenir, l'auteur mènera des expériences sur des ensembles de données plus complexes, ce qui signifie que la quantité de paramètres de KANS augmentera car davantage de couches convolutives KAN doivent être implémentées.
Actuellement, par rapport aux réseaux convolutifs traditionnels, l'auteur a déclaré qu'il n'a pas constaté d'amélioration significative des performances des réseaux convolutifs KAN. Leur analyse estime que cela est dû à l'utilisation d'ensembles de données et de modèles simples. Par rapport à la meilleure architecture essayée (ConvNet Big, cette comparaison est injuste en fonction du facteur d'échelle), l'avantage de cette architecture est qu'elle a un bon contrôle. paramètres. Les exigences sont bien moindres.
La comparaison entre 2 couches convolutives identiques et la couche convolutive KAN avec le même MLP connecté à la fin montre que la méthode classique est légèrement meilleure avec une augmentation de 0,06 en précision, tandis que la couche convolutive KAN et KAN linéaire Le nombre de paramètres dans la couche est presque la moitié de celle de la méthode classique, mais la précision est réduite de 0,04.
L'auteur a déclaré qu'à mesure que la complexité du modèle et de l'ensemble de données augmente, les performances du réseau convolutif KAN devraient s'améliorer. Dans le même temps, à mesure que la dimension d’entrée augmente, le nombre de paramètres du modèle augmentera également plus rapidement.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!