La différence des noyaux dans SVM?


27

Quelqu'un peut-il me dire la différence entre les noyaux dans SVM:

  1. Linéaire
  2. Polynôme
  3. Gaussien (RBF)
  4. Sigmoïde

Parce que, comme nous le savons, le noyau est utilisé pour mapper notre espace d'entrée dans un espace de fonctionnalité de haute dimensionnalité. Et dans cet espace caractéristique, nous trouvons la frontière séparable linéairement ..

Quand sont-ils utilisés (dans quelles conditions) et pourquoi?

Réponses:


4

Le noyau linéaire est ce que vous attendez, un modèle linéaire. Je crois que le noyau polynomial est similaire, mais la frontière est d'un ordre défini mais arbitraire

(par exemple ordre 3: ).a=b1+b2X+b3X2+b4X3

RBF utilise des courbes normales autour des points de données et les additionne pour que la limite de décision puisse être définie par un type de condition de topologie, comme des courbes où la somme est supérieure à une valeur de 0,5. (voir cette photo )

Je ne suis pas certain de ce qu'est le noyau sigmoïde, à moins qu'il ne soit similaire au modèle de régression logistique où une fonction logistique est utilisée pour définir des courbes selon où la valeur logistique est supérieure à une certaine valeur (probabilité de modélisation), comme 0,5 comme la normale Cas.


Donc, nous pouvons obtenir l'hyperplan (frontière) séparable de façon linéaire, si nous utilisons le noyau linéaire ?? et si nous utilisons un noyau polynomial ou RBF, l'hyperlane (pour le polynôme) pourrait être un cercle de classes groupées (pour RBF) et une courbe ?? Est-ce correct?? scikit-learn.org/stable/modules/svm.html
user3378327

Chacun des kernals travaille pour des versions de haute dimension de leurs limites respectives. Est-ce que ça répond à votre question? Vous n'êtes pas limité à trois dimensions pour tout noyau que je connaisse.
John Yetter

Je veux juste que ce soit clair. Donc, la frontière en utilisant le noyau linéaire est linéaire? Pour RBF, c'est comme un cercle de classe groupée ?? et pour le polynôme, il peut s'agir d'une courbe basée sur le degré du polynôme ??
user3378327

Je ne dirais pas que RBF est un cercle de classe groupée. Ma compréhension est qu'il applique une fonction basée sur une distribution normale à chaque point de données et résume ces fonctions. Ensuite, une frontière est formée par la courbe représentant une certaine valeur sur cette fonction. Si quelqu'un qui a contribué à une bibliothèque SVM pouvait sonner, cela pourrait aider. Je pense que votre compréhension des deux autres noyaux est correcte.
John Yetter

U a dit que Linier Kernel est ce que j'attendais (pour obtenir une classe séparable de manière plus linéaire) en utilisant Kernel. et en utilisant le classificateur SVM, nous l'avons appelé LINIER SVM. Mais comment faire si nous pouvons obtenir les données séparables sans aucun noyau dans SVM. Comment on l'appelle ?? SVM encore plus linéaire ou SVM non plus linéaire ??
user3378327

11

S'appuyer sur les connaissances de base du lecteur sur les noyaux.

Noyau linéaire:K(X,Y)=XTY

Noyau polynomial:K(X,Y)=(γXTY+r)d,γ>0

Fonction de base radiale (RBF) Noyau: qui, sous une forme simple, peut s'écrireK(X,Y)=exp(XY2/2σ2)exp(γXY2),γ>0

Noyau sigmoïde: qui est similaire à la fonction sigmoïde en régression logistique.K(X,Y)=tanh(γXTY+r)

Ici, , et sont des paramètres du noyau.rdγ


3
Bien que les informations contenues dans votre réponse soient correctes, je ne pense pas qu'elles répondent à la question soulevée ici, qui concerne davantage la différence pratique entre elles, c'est -à- dire quand utiliser l'une ou l'autre.
Firebug

1
Étonnamment, ces définitions simples sont difficiles à trouver. Ils devraient être la première chose présentée lorsque l'on parle des différences de noyaux, mais il y a un échec généralisé à les énoncer.
cammil

Existe-t-il une source officielle pour ces informations? (Je les ai testés et ils semblent corrects, mais j'aimerais pouvoir les citer.)
Christian Eriksson

6

On peut répondre à cette question d'un point de vue théorique et pratique. De la théorie selon le théorème No-Free Lunch, il n'y a aucune garantie qu'un noyau fonctionne mieux que l'autre. C'est a priori que vous ne savez jamais et vous ne pouvez pas savoir quel noyau fonctionnera mieux.

D'un point de vue pratique, consultez la page suivante:

Comment sélectionner le noyau pour SVM?


1

Tout en réfléchissant à ce à quoi un noyau est "bon" ou quand il doit être utilisé, il n'y a pas de règles strictes et rapides.

Si votre classificateur / régresseur fonctionne bien avec un noyau donné, il est approprié, sinon, envisagez de passer à un autre.

Un aperçu des performances de votre noyau, en particulier s'il s'agit d'un modèle de classification, peut être obtenu en examinant certains exemples de visualisation, par exemple https://gist.github.com/WittmannF/60680723ed8dd0cb993051a7448f7805

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.