SVM rbf kernel - méthode heuristique pour estimer le gamma

8

J'ai lu sur cet échange une méthode heuristique d'estimation du gamma pour le noyau rbf dans les SVM. Je me demandais si quelqu'un pourrait me l'expliquer plus en détail? Je crois que vous sélectionnez 1000 (ou un grand nombre) de paires de points de données dans l'ensemble de données, puis calculez la norme pour la différence de chaque paire. Apparemment, l'inverse des quantiles .1, .9 et la médiane sont de bons candidats pour un gamma approprié pour le noyau rbf.

Merci

tomas
la source
Voir aussi cette réponse à une question en double
denis

Réponses:

8

Tout d'abord, il n'y a aucune raison, à l'exception du coût de calcul, de ne pas utiliser l'ensemble de vos données. Tant que vous n'utilisez pas les informations d'étiquette, il n'y a aucune raison de ne pas utiliser toutes les informations que vous pouvez obtenir de vos données.

Pourquoi les quantiles de la distance sont-ils une bonne heuristique? La solution d'un problème SVM est une combinaison linéaire des noyaux RBF qui reposent sur les vecteurs de support . Pendant la phase d'apprentissage, l'optimisation adapte le pour maximiser la marge tout en conservant une classification correcte.iyiαiexp(γ||xxi||2)αi

Maintenant, il y a deux cas extrêmes pour le choix de :γ

  1. Imaginez que le est très petit, ce qui signifie que le noyau RBF est très large. Supposons qu'il soit si large que le noyau RBF soit encore suffisamment positif pour chaque point de données de l'ensemble de données. Cela donnera probablement à l'optimiseur un travail difficile car changer la valeur d'un seul changera la fonction de décision sur tous les points de données car le noyau est trop large.γαi
  2. L'autre situation extrême est lorsque le est grand, ce qui signifie que le noyau RBF est très étroit. Lorsque vous modifiez le pour ce point de données, la fonction de décision du SVM ne changera essentiellement que pour ce point de données uniquement. Cela signifie que probablement tous les vecteurs d'apprentissage finiront comme vecteurs de support. Ce n'est clairement pas souhaitable.γαi

Pour voir que l'heuristique est un bon choix, il faut réaliser qu'une certaine valeur de détermine une limite pour le noyau RBF dans laquelle le noyau sera plus grand qu'une certaine valeur (comme le one- -quantile pour le Normal Distribution). En choisissant le fonction des quantiles sur les distances par paires, vous vous assurez qu'un certain pourcentage des points de données se trouve dans cette limite. Par conséquent, si vous modifiez le pour un point de données, vous n'affecterez en fait que la fonction de décision pour un certain pourcentage de points de données, ce que vous voulez. Le choix de ce pourcentage dépend du problème d'apprentissage, mais vous évitez de modifier la fonction de décision pour tous ouγσγαiun seul point de données.

fabee
la source
Merci fabee qui a beaucoup de sens. Je suis curieux en raison des coûts de calcul liés à la validation croisée + à la recherche de grille avec mon ensemble de données. Je m'occupe également de séries chronologiques, donc je fais une validation croisée de type fenêtre glissante plutôt que des k-folds. Si vous avez des suggestions d'accélération, ouvrez-les définitivement. Ou toute suggestion sur le traitement des données chronologiques dépendantes (autocorrélées). Merci.
tomas
Désolé, je n'ai aucune bonne suggestion du haut de ma tête. Le problème est que les données ne sont plus iid. Un moyen simple de se débarrasser des autocorrélations pour former un modèle autorégressif et soustraire la prédiction des points de données. C'est essentiellement un blanchiment.
fabee
1

Ouais! Vous décrivez le soi-disant "truc médian".

J'aime vraiment l'intuition derrière la réponse ci-dessus. Je pense aussi qu'il est plus facile de comprendre le problème du choixγ en le considérant comme l'inverse de la variance du FBR, à la

γ=12σ2
de sorte que le RBF devient
ϕ(x)=exxi22σ2

Il est maintenant clair que le problème de la recherche d'un bon est essentiellement le même que celui de la recherche d'une bonne variance pour une fonction gaussienne (moins un facteur d'échelle).γ

Pour ce faire, nous nous tournons vers des estimateurs de variance, mais au lieu de calculer la variance via la distance quadratique moyenne de certains comme , nous calculons des quantiles sur cette distance quadratique.xiE[(xxi)2]

Comme l'a indiqué l'affiche ci-dessus, l'utilisation des quantiles nous permet de contrôler le nombre de points de données situés dans un (ou deux, ou trois ..) écarts-types de notre fonction gaussienne.

dswah
la source