Qu'est-ce qu'un noyau et ce qui le distingue des autres fonctions

13

Il semble y avoir de nombreux algorithmes d'apprentissage automatique qui reposent sur les fonctions du noyau. SVM et NN pour n'en nommer que deux. Alors, quelle est la définition d'une fonction du noyau et quelles sont les exigences pour qu'elle soit valide?

Franck Dernoncourt
la source
5
Je ne dirais pas que les NN s'appuient sur les fonctions du noyau - ils s'appuient sur une fonction de transfert pour atteindre la non-linéarité, mais ce n'est pas la même chose qu'une fonction du noyau
tdc

Réponses:

11

Pour x, y sur S, certaines fonctions K (x, y) peuvent être exprimées comme un produit intérieur (dans un espace généralement différent). K est souvent appelé noyau ou fonction de noyau. Le mot noyau est utilisé de différentes manières dans les mathématiques, mais c'est l'utilisation la plus courante dans l'apprentissage automatique.

L'astuce du noyau est un moyen de cartographier les observations d'un ensemble général S dans un espace produit interne V (équipé de sa norme naturelle), sans jamais avoir à calculer explicitement la cartographie, dans l'espoir que les observations acquièrent une structure linéaire significative dans V Ceci est important en termes d'efficacité (calcul des produits scalaires dans un espace dimensionnel très élevé très rapidement) et pratique (nous pouvons convertir des algorithmes ML linéaires en algorithmes ML non linéaires).

Pour qu'une fonction K soit considérée comme un noyau valide, elle doit satisfaire aux conditions de Mercer . Concrètement, cela signifie que nous devons nous assurer que la matrice du noyau (calcul du produit du noyau de chaque point de données que vous avez) sera toujours semi-définie positive. Cela garantira que la fonction de l'objectif de formation est convexe, une propriété très importante.

carlosdc
la source
Merci @carlosdc, mais j'ai peur que vous essayiez d'apprendre à ce vieux chien de nouveaux trucs. Beaucoup de choses sont bien au-dessus de ma tête. J'ai lu les conditions de Mercer, mais leur signification dans le monde réel est perdue pour moi. Je suppose de ce qui précède que l'intégrale d'un noyau doit être contrainte à une valeur finie. Cette hypothèse est-elle correcte?
1
La partie que l'objectif est convexe si la matrice du noyau est PSD dépend de l'objectif. Cela est vrai pour les SVM, mais avec les processus gaussiens, le fait est que la matrice du noyau est une matrice de covariance valide et donc inversible.
bayerj
2

De Williams, Christopher KI et Carl Edward Rasmussen. « Processus gaussiens pour l'apprentissage automatique », MIT Press 2, no. 3 (2006). Page 80 .

XXXXR

En outre, kernel = fonction du noyau.

Les noyaux utilisés dans les algorithmes d'apprentissage automatique satisfaisaient généralement plus de propriétés, comme être semi-définis positifs.

Franck Dernoncourt
la source
2

Va essayer pour une explication moins technique.

Commencez d'abord par le produit scalaire entre deux vecteurs. Cela vous indique à quel point les vecteurs sont "similaires". Si les vecteurs représentent des points dans votre ensemble de données, le produit scalaire vous indique s'ils sont similaires ou non.

Mais, dans certains (nombreux) cas, le produit scalaire n'est pas la meilleure mesure de similitude. Par exemple:

  • Peut-être que les points qui ont des produits à faible point sont similaires pour d'autres raisons.
  • Vous pouvez avoir des éléments de données qui ne sont pas bien représentés comme des points.

Ainsi, au lieu d'utiliser le produit scalaire, vous utilisez un "noyau" qui est juste une fonction qui prend deux points et vous donne une mesure de leur similitude. Je ne suis pas sûr à 100% des conditions techniques qu'une fonction doit remplir pour être techniquement un noyau, mais c'est l'idée.

Une très bonne chose est que le noyau peut vous aider à mettre vos connaissances de domaine dans le problème dans le sens où vous pouvez dire que deux points sont les mêmes à cause de la raison xyz qui vient de votre connaissance du domaine.

roundsquare
la source