L'analyse en composantes principales à noyau (ACP à noyau) est une technique d'apprentissage automatique pour la réduction de dimensionnalité non linéaire. Elle étend l'analyse en composantes principales (ACP) classique en appliquant l'astuce du noyau, ce qui permet à l'algorithme de fonctionner dans un espace de caractéristiques implicite de haute dimension sans calculer explicitement les coordonnées des données dans cet espace. Cela permet à l'ACP à noyau de capturer des motifs non linéaires que l'ACP linéaire manquerait, ce qui la rend utile pour des tâches telles que la visualisation de données, la réduction de bruit et le prétraitement pour d'autres algorithmes.
La méthode a été introduite en 1998 par Bernhard Schölkopf, Alexander Smola et Klaus-Robert Müller. Leur formulation a montré que les composantes principales dans l'espace de caractéristiques peuvent être obtenues en résolvant un problème de valeurs propres sur la matrice de noyau, qui contient les similarités par paires entre les points de données calculées via une fonction de noyau. Les noyaux courants incluent le noyau polynomial, le noyau à fonction de base radiale (RBF) et le noyau sigmoïde. Le choix du noyau et de ses paramètres influence significativement l'intégration résultante.
Formulation mathématique
Étant donné un ensemble de n points de données x_i dans l'espace d'entrée, l'ACP à noyau mappe d'abord chaque point vers un espace de caractéristiques via une fonction φ, telle que φ(x_i) soit un vecteur dans un espace de Hilbert potentiellement de dimension infinie. La fonction de noyau k(x_i, x_j) calcule le produit scalaire ⟨φ(x_i), φ(x_j)⟩. L'algorithme centre les données dans l'espace de caractéristiques en modifiant la matrice de noyau, puis calcule les vecteurs propres et les valeurs propres de la matrice de noyau centrée. La projection d'un nouveau point sur une composante principale est exprimée comme une somme pondérée d'évaluations du noyau entre le nouveau point et les points d'entraînement, avec des poids dérivés des vecteurs propres.
Contrairement à l'ACP linéaire, qui trouve les directions de variance maximale dans l'espace d'origine, l'ACP à noyau trouve les directions de variance maximale dans l'espace de caractéristiques. Le nombre de composantes principales est au plus égal au nombre de points d'entraînement, et la méthode peut produire plus de composantes que la dimensionnalité d'entrée. En pratique, on sélectionne généralement les k composantes supérieures en fonction de l'ampleur des valeurs propres associées.
Relation avec d'autres méthodes
L'ACP à noyau est étroitement liée à d'autres méthodes basées sur le noyau telles que les machines à vecteurs de support (SVM) et la régression par processus gaussiens, qui reposent toutes sur l'astuce du noyau. Elle peut être considérée comme une généralisation non linéaire de l'ACP, et elle est également connectée au regroupement spectral et à l'échelonnage multidimensionnel. Dans le cas d'un noyau linéaire, l'ACP à noyau se réduit exactement à l'ACP standard. La méthode est également un précurseur de techniques d'intégration non linéaire plus avancées comme l'intégration stochastique de voisins avec distribution t (t-SNE) et l'approximation et projection de variété uniforme (UMAP), bien que ces méthodes optimisent des objectifs différents.
Applications et limites
L'ACP à noyau a été appliquée dans divers domaines, notamment la reconnaissance faciale, le débruitage d'images et la détection d'anomalies. En reconnaissance faciale, elle peut extraire des caractéristiques non linéaires qui améliorent la précision de classification par rapport à l'ACP linéaire. Pour la détection d'anomalies, l'erreur de reconstruction dans l'espace de caractéristiques peut indiquer des valeurs aberrantes. Cependant, l'ACP à noyau présente des limites notables : le coût de calcul croît quadratiquement avec le nombre d'échantillons d'entraînement, ce qui la rend impraticable pour de très grands ensembles de données sans approximations. Le choix du noyau et des hyperparamètres nécessite souvent une validation croisée, et l'interprétabilité des composantes résultantes est inférieure à celle de l'ACP linéaire. De plus, la méthode suppose que les données se trouvent sur une variété de faible dimension dans l'espace de caractéristiques, ce qui peut ne pas être vrai dans tous les cas.
Considérations pratiques
L'implémentation de l'ACP à noyau implique de sélectionner une fonction de noyau et ses paramètres, tels que la largeur de bande dans un noyau RBF. La matrice de noyau doit être centrée, et la décomposition en valeurs propres peut être effectuée à l'aide de bibliothèques standard d'algèbre linéaire. Pour les problèmes à grande échelle, des méthodes approximatives telles que la méthode de Nyström ou les cartes de caractéristiques aléatoires peuvent réduire la charge de calcul. Dans les pipelines modernes d'apprentissage automatique, l'ACP à noyau est souvent utilisée comme étape de prétraitement avant d'appliquer des algorithmes de regroupement ou de classification. Elle a été implémentée dans des bibliothèques populaires telles que scikit-learn, qui fournit une classe KernelPCA avec des options pour différents noyaux et solveurs.