Comme vous êtes confus, permettez-moi de commencer par énoncer le problème et répondre à vos questions une par une. Vous avez une taille d'échantillon de 10 000 et chaque échantillon est décrit par un vecteur d'entité . Si vous souhaitez effectuer une régression en utilisant des fonctions de base radiales gaussiennes, recherchez une fonction de la forme où les sont vos fonctions de base. Plus précisément, vous devez trouver les poids pour que pour les paramètres donnés et vous minimisez l'erreur entre et la prédiction correspondante = f ( x ) = Σ j w j * g j ( x , μ j , σ j ) , j = 1 .. m g i m w j μ j σ j y y f ( x )x ∈ R31
F( x ) = ∑jwj∗ gj( x ; μj, σj) , j = 1 .. m
gjemwjμjσjyy^f(x^) - généralement, vous minimiserez l'erreur des moindres carrés.
Quel est exactement le paramètre Mu indice j?
Vous devez trouver fonctions de base . (Vous devez encore déterminer le nombre ) Chaque fonction de base aura un et un (également inconnu). L'indice varie de à .g j m μ j σ j j 1 mmgjmμjσjj1m
Le un vecteur?μj
Oui, c'est un point dans . En d'autres termes, il s'agit d'un point quelque part dans votre espace d'entités et un doit être déterminé pour chacune des fonctions de base. μmR31μm
J'ai lu que cela régit les emplacements des fonctions de base. N'est-ce pas là la moyenne de quelque chose?
La fonction de base est centrée sur . Vous devrez décider de l'emplacement de ces emplacements. Donc non, ce n'est pas nécessairement la moyenne de quoi que ce soit (mais voir plus bas pour savoir comment le déterminer) μ jjthμj
Passons maintenant au sigma qui "régit l'échelle spatiale". Qu'est-ce que c'est exactement?
σ est plus facile à comprendre si nous nous tournons vers les fonctions de base elles-mêmes.
Cela aide à penser aux fonctions de base radiales gaussiennes dans les dimensons inférieurs, par exemple ou . Dans la fonction de base radiale gaussienne n'est que la courbe en cloche bien connue. La cloche peut bien entendu être étroite ou large. La largeur est déterminée par - plus le est grand, plus la forme de la cloche est étroite. En d'autres termes, échelle la largeur de la forme de la cloche. Donc, pour = 1, nous n'avons pas de mise à l'échelle. Pour les grands nous avons une mise à l'échelle substantielle.R 2 R 1 σσσσσR1R2R1σσσσσ
Vous pouvez demander quel est le but de ceci. Si vous pensez à la cloche couvrant une partie de l'espace (une ligne dans ) - une cloche étroite ne couvrira qu'une petite partie de la ligne *. Les points proches du centre de la cloche auront une plus grande valeur . Les points éloignés du centre auront une valeur plus petite . La mise à l'échelle a pour effet de pousser les points plus loin du centre - car la cloche se rétrécit les points seront situés plus loin du centre - réduisant la valeur de x g j (x) g j (x) g j (x)R1xgj(x)gj(x)gj(x)
Chaque fonction de base convertit le vecteur d'entrée x en une valeur scalaire
Oui, vous évaluez les fonctions de base à un moment donné .x∈R31
exp(−∥x−μj∥222∗σ2j)
Vous obtenez un scalaire en conséquence. Le résultat scalaire dépend de la distance du point au centre donné paret le scalaire .μ j ‖ x - μ j ‖ σ jxμj∥x−μj∥σj
J'ai vu des implémentations qui essaient des valeurs telles que .1, .5, 2.5 pour ce paramètre. Comment ces valeurs sont-elles calculées?
C'est bien sûr l'un des aspects intéressants et difficiles de l'utilisation des fonctions de base radiales gaussiennes. si vous effectuez une recherche sur le Web, vous trouverez de nombreuses suggestions sur la façon dont ces paramètres sont déterminés. Je vais décrire en termes très simples une possibilité basée sur le clustering. Vous pouvez trouver ceci et plusieurs autres suggestions en ligne.
Commencez par regrouper vos 10000 échantillons (vous pouvez d'abord utiliser PCA pour réduire les dimensions, suivi du regroupement k-Means). Vous pouvez laisser le nombre de clusters que vous trouvez (en utilisant généralement la validation croisée pour déterminer le meilleur ). Maintenant, créez une fonction de base radiale pour chaque cluster. Pour chaque fonction de base radiale, soit le centre (par exemple la moyenne, le centroïde, etc.) de l'amas. Laissons refléter la largeur du cluster (par exemple rayon ...) Maintenant allez-y et effectuez votre régression (cette description simple n'est qu'un aperçu - elle a besoin de beaucoup de travail à chaque étape!)m g j μ j σ jmmgjμjσj
* Bien sûr, la courbe en cloche est définie de - à donc aura une valeur partout sur la ligne. Cependant, les valeurs loin du centre sont négligeables∞∞∞
Permettez-moi d'essayer de donner une explication simple. Dans une telle notation, peut être un numéro de ligne mais peut également être un numéro d'entité. Si nous écrivons alors désigne le numéro de caractéristique, est le vecteur de colonne, est scalaire et est une colonne -vecteur. Si nous écrivons alors désigne le numéro de ligne, est scalaire, est vecteur de colonne et est un vecteur de ligne. La notation où désigne la ligne et indique la colonne est plus courante, alors utilisons la première variante.y = β 0 + ∑ j = 1 : 31 β j ϕ j ( x )j y=β0+∑j=1:31βjϕj(x) j y βj ϕj(x) yj=βϕj(x) j yj β ϕj(x) i j
En introduisant la fonction de base gaussienne dans la régression linéaire, (scalaire) ne dépend plus maintenant des valeurs numériques des entités (vecteur), mais des distances entre et le centre de tous les autres points . De cette manière, ne dépend pas de la valeur élevée ou petite de la ème caractéristique de la ème observation, mais dépend si la ème valeur de la caractéristique est proche ou éloignée de la moyenne pour cette caractéristique . Donc n'est pas un paramètre, car il ne peut pas être réglé. C'est juste une propriété d'un ensemble de données. Le paramètrex i x i μ i y i j i j j μ i j μ jyi xi xi μi yi j i j j μij μj y y σ 2σ2 est une valeur scalaire, elle contrôle la fluidité et peut être réglée. S'il est petit, les petits changements de distance auront un effet important (rappelez-vous gaussien raide: tous les points situés déjà à petite distance du centre ont de minuscules valeurs ). S'il est grand, les petits changements de distance auront un faible effet (rappelez-vous le gaussien plat: la diminution de avec l'augmentation de la distance du centre est lente). La valeur optimale de doit être recherchée (elle est généralement trouvée avec une validation croisée).y y σ2
la source
Les fonctions de base gaussiennes dans les paramètres multivariés ont des centres multivariés. En supposant que votre , puis également. La gaussienne doit être multivariée, c'est-à-dire que où est une matrice de covariance. L'indice n'est pas une composante d'un vecteur, c'est juste le ème vecteur. De même, est la ème matrice. μ j ∈ R 31 e ( x - μ j ) ' Σ - 1 j ( x - μ j ) Σ j ∈ R 31 × 31 j j Σ j jx∈R31 μj∈R31 e(x−μj)′Σ−1j(x−μj) Σj∈R31×31 j j Σj j
la source