Soutenir les machines vectorielles et la régression

26

Il y a déjà eu une excellente discussion sur la façon dont les machines à vecteurs de support gèrent la classification, mais je suis très confus sur la façon dont les machines à vecteurs de support se généralisent à la régression.

Quelqu'un veut-il m'éclairer?

Zach
la source

Réponses:

17

Fondamentalement, ils se généralisent de la même manière. L'approche de régression basée sur le noyau consiste à transformer l'entité, à l'appeler dans un espace vectoriel, puis à effectuer une régression linéaire dans cet espace vectoriel. Pour éviter la «malédiction de la dimensionnalité», la régression linéaire dans l'espace transformé est quelque peu différente de celle des moindres carrés ordinaires. Le résultat est que la régression dans l'espace transformé peut être exprimée comme , où sont des observations de l'ensemble d'apprentissage, est la transformation appliquée aux données et le point est le produit scalaire. Ainsi, la régression linéaire est «supportée» par quelques (de préférence un très petit nombre) de vecteurs d'apprentissage. ( x ) = i w i ϕ ( x i ) ϕ ( x ) x i ϕ ( )X(X)=jewjeϕ(Xje)ϕ(X)Xjeϕ()

Tous les détails mathématiques sont cachés dans la régression étrange effectuée dans l'espace transformé («tube insensible à epsilon» ou autre) et le choix de la transformation, . Pour un praticien, il y a aussi des questions sur quelques paramètres libres (généralement dans la définition de et la régression), ainsi que sur la personnalisation , qui est généralement utile pour la connaissance du domaine.ϕϕ

shabbychef
la source
Du point de vue de l'intuition, est-ce presque comme une classification à classe unique, où la ligne de "limite" de classe finit par parcourir les points plutôt qu'entre les points de deux classes?
Wayne
@Wayne, c'est ce que je comprends, oui. Mais je ne suis pas à 100%.
Zach
5

Pour un aperçu de SVM: comment fonctionne une machine à vecteur de support (SVM)?

En ce qui concerne la régression des vecteurs de support (SVR), je trouve ces diapositives de http://cs.adelaide.edu.au/~chhshen/teaching/ML_SVR.pdf ( miroir ) très claires:

entrez la description de l'image ici

entrez la description de l'image icientrez la description de l'image ici

entrez la description de l'image ici

entrez la description de l'image ici

entrez la description de l'image ici

entrez la description de l'image ici

entrez la description de l'image ici

entrez la description de l'image ici

La documentation Matlab a également une explication décente et passe en outre sur l'algorithme de résolution d'optimisation: https://www.mathworks.com/help/stats/understanding-support-vector-machine-regression.html ( miroir ).

Jusqu'à présent, cette réponse a présenté la régression dite SVM insensible à epsilon (ε-SVM). Il existe une variante plus récente de SVM pour l'une ou l'autre classification de régression: les moindres carrés supportent la machine vectorielle .

De plus, SVR peut être étendu pour les sorties multiples aka multi-cibles, par exemple voir {1}.


Les références:

Franck Dernoncourt
la source