Je connais la définition de la matrice définie positive symétrique (SPD), mais je veux en savoir plus.
Pourquoi sont-ils si importants, intuitivement?
Voici ce que je sais. Quoi d'autre?
Pour une donnée donnée, la matrice de co-variance est SPD. La matrice de co-variance est une métrique importante, voir cet excellent article pour une explication intuitive.
La forme quadratique est convexe, si est SPD. La convexité est une belle propriété pour une fonction qui peut s'assurer que la solution locale est une solution globale. Pour les problèmes convexes, il existe de nombreux bons algorithmes à résoudre, mais pas pour les problèmes non covex.
Lorsque est SPD, la solution d'optimisation pour la forme quadratique et la solution pour le système linéaire sont les mêmes. Nous pouvons donc exécuter des conversions entre deux problèmes classiques. C'est important car cela nous permet d'utiliser des astuces découvertes dans un domaine dans l'autre. Par exemple, nous pouvons utiliser la méthode du gradient conjugué pour résoudre un système linéaire.
Il existe de nombreux bons algorithmes (rapides, stables numériquement) qui fonctionnent mieux pour une matrice SPD, comme la décomposition de Cholesky.
EDIT: Je n'essaie pas de demander les identités pour la matrice SPD, mais l'intuition derrière la propriété pour montrer l'importance. Par exemple, comme mentionné par @Matthew Drury, si une matrice est SPD, les valeurs propres sont toutes des nombres réels positifs, mais pourquoi tout positif est important. @Matthew Drury avait une excellente réponse à donner et c'est ce que je cherchais.
Réponses:
Une matrice symétrique (réelle) possède un ensemble complet de vecteurs propres orthogonaux pour lesquels les valeurs propres correspondantes sont toutes des nombres réels. Pour les matrices non symétriques, cela peut échouer. Par exemple, une rotation dans un espace bidimensionnel n'a pas de vecteur propre ou de valeurs propres dans les nombres réels, vous devez passer à un espace vectoriel sur les nombres complexes pour les trouver.
Si la matrice est en outre définie positive, ces valeurs propres sont toutes des nombres réels positifs. Ce fait est beaucoup plus facile que le premier, car si est un vecteur propre avec une longueur unitaire, et la valeur propre correspondante, alorsv λ
où la dernière égalité utilise la définition du caractère définitif positif.
L'importance ici pour l'intuition est que les vecteurs propres et les valeurs propres d'une transformation linéaire décrivent le système de coordonnées dans lequel la transformation est la plus facilement comprise. Une transformation linéaire peut être très difficile à comprendre dans une base «naturelle» comme le système de coordonnées standard, mais chacune est accompagnée d'une base «préférée» de vecteurs propres dans laquelle la transformation agit comme une mise à l'échelle dans toutes les directions. Cela rend la géométrie de la transformation beaucoup plus facile à comprendre.
Par exemple, le test de dérivée seconde pour les extrema locaux d'une fonction est souvent donné comme une série de conditions mystérieuses impliquant une entrée dans la matrice de dérivée seconde et certains déterminants. En fait, ces conditions codent simplement l'observation géométrique suivante:R2→R
Vous pouvez comprendre cela avec le raisonnement géométrique ci-dessus dans une base propre. La dérivée première à un point critique disparaît, donc les taux de changement de la fonction ici sont contrôlés par la dérivée seconde. Maintenant, nous pouvons raisonner géométriquement
Puisque les vecteurs propres couvrent tout l'espace, toute autre direction est une combinaison linéaire de directions propres, donc les taux de changement dans ces directions sont des combinaisons linéaires des taux de changement dans les directions propres. Donc, en fait, cela vaut dans toutes les directions (c'est plus ou moins ce que cela signifie pour une fonction définie sur un espace de dimension supérieure pour être différenciable). Maintenant, si vous dessinez une petite image dans votre tête, cela a beaucoup de sens de quelque chose qui est assez mystérieux dans les textes de calcul débutant.
Cela s'applique directement à l'un de vos puces
La matrice des dérivées secondes est partout, qui est définie positive symétrique. Géométriquement, cela signifie que si nous nous éloignons dans n'importe quelle direction propre (et donc dans n'importe quelle direction, car toute autre est une combinaison linéaire de directions propres), la fonction elle-même se pliera au- dessus de son plan tangent. Cela signifie que toute la surface est convexe.A
la source
Vous trouverez une certaine intuition dans les nombreuses façons élémentaires de montrer que les valeurs propres d'une matrice symétrique réelle sont toutes réelles: /mathpro/118626/real-symmetric-matrix-has-real-eigenvalues-elementary- épreuve / 118640 # 118640
En particulier, la forme quadratique se produit naturellement dans le quotient de Rayleigh, et les matrices symétriques fournissent ce qui est sans doute le moyen le plus naturel d'exposer une grande famille de matrices dont les valeurs propres sont réelles. Voir le théorème de Courant minimax par exemple: https://en.wikipedia.org/wiki/Courant_minimax_principlexTAx
En outre, les matrices symétriques définies positives sont strictement le seul ensemble de matrices qui peuvent définir un produit scalaire non négligeable, avec une norme induite: . En effet, par définition pour les vecteurs réels x , y d ( x , y ) = d ( y , x ) pour tous les x , y et ‖ x ‖ 2 =d(x,y)=⟨x,Ay⟩=xTAy x,y d(x,y)=d(y,x) x,y pour x ≠ 0 . De cette façon, les matrices définies positives symétriques peuvent être considérées comme des candidats idéaux pour les transformations de coordonnées.∥x∥2=xTAx>0 x≠0
Cette dernière propriété est absolument essentielle dans le domaine des machines à vecteurs de support, en particulier les méthodes du noyau et l'astuce du noyau , où le noyau doit être symétrique positif pour induire le bon produit interne. En effet, le théorème de Mercer généralise les propriétés intuitives des matrices symétriques aux espaces fonctionnels.
la source
En ce qui concerne l'optimisation (parce que vous avez marqué votre question avec la balise d'optimisation), les matrices SPD sont extrêmement importantes pour une raison simple - un SPD Hessian garantit que la direction de recherche est une direction de descente. Considérons la dérivation de la méthode de Newton pour une optimisation sans contrainte. Tout d'abord, nous formons l'expansion de Taylor de :f(x+Δx)
Ensuite, nous prenons la dérivée par rapport à :Δx
Lorsque vous utilisez la méthode de Newton, les matrices de Hesse non SPD sont généralement "poussées" pour être SPD. Il existe un algorithme soigneux appelé Cholesky modifié qui détectera une toile de jute non SPD, la "poussera" de manière appropriée dans la bonne direction et factorisera le résultat, le tout (essentiellement) pour le même coût qu'une factorisation Cholesky. Les méthodes Quasi-Newton évitent ce problème en forçant le Hessian approximatif à être SPD.
Soit dit en passant, les systèmes indéfinis symétriques reçoivent beaucoup d'attention ces jours-ci. Ils apparaissent dans le contexte des méthodes de point intérieur pour l'optimisation contrainte.
la source
Géométriquement, une matrice définie positive définit une métrique , par exemple une métrique riemannienne, de sorte que nous pouvons immédiatement utiliser des concepts géométriques.
la source
Il existe déjà plusieurs réponses expliquant pourquoi les matrices définies positives symétriques sont si importantes, donc je fournirai une réponse expliquant pourquoi elles ne sont pas aussi importantes que le pensent certaines personnes, y compris les auteurs de certaines de ces réponses. Par souci de simplicité, je limiterai la focalisation aux matrices symétriques et me concentrerai sur les Hessois et l'optimisation.
Si Dieu avait rendu le monde convexe, il n'y aurait pas d'optimisation convexe, il y aurait juste une optimisation. De même, il n'y aurait pas de matrices définies positives (symétriques), il y aurait juste des matrices (symétriques). Mais ce n'est pas le cas, alors traitez-le.
Si un problème de programmation quadratique est convexe, il peut être résolu "facilement". S'il n'est pas convexe, un optimum global peut toujours être trouvé en utilisant des méthodes de branchement et liées (mais cela peut prendre plus de temps et plus de mémoire).
Si une méthode de Newton est utilisée pour l'optimisation et que la Hesse à une certaine itération est indéfinie, alors il n'est pas nécessaire de la "finagler" à une définition positive. Si vous utilisez une recherche de ligne, des directions de courbure négative peuvent être trouvées et la recherche de ligne exécutée le long d'elles, et si vous utilisez une région de confiance, alors il y a une région de confiance suffisamment petite pour que la solution du problème de la région de confiance atteigne la descente.
Comme pour les méthodes Quasi-Newton, BFGS (amorti si le problème est contraint) et DFP maintiennent une définition positive de l'approximation de la Hesse ou de la Hesse inverse. D'autres méthodes Quasi-Newton, telles que SR1 (Symmetric Rank One) ne maintiennent pas nécessairement une définition positive. Avant de vous déformer, c'est une bonne raison de choisir SR1 pour de nombreux problèmes - si la Hesse n'est vraiment pas définie positive le long du chemin vers l'optimum, alors forcer l'approximation de Quasi-Newton à être définie positive peut entraîner une approximation quadratique moche de la fonction objectif. En revanche, la méthode de mise à jour SR1 est "lâche comme une oie", et peut fausser sa définition à mesure qu'elle progresse.
Pour les problèmes d'optimisation non linéairement contraints, ce qui importe vraiment n'est pas le Hessien de la fonction objectif, mais le Hessien du Lagrangien. Le Hessien du Lagrangien peut être indéfini même à un (l'opt) optimum, et en effet, ce n'est que la projection du Hessien du Lagrangien dans l'espace nul du Jacobien des contraintes actives (linéaires et non linéaires) qui doivent être semi positives -fini à l'optimum. Si vous modélisez la Hesse du Lagrangien via BFGS et ainsi la contraignez à être définie positive, cela pourrait être un ajustement terrible partout, et ne fonctionnera pas bien. En revanche, SR1 peut adapter ses valeurs propres à ce qu'il "voit" réellement.
Il y a beaucoup plus que je pourrais dire à propos de tout cela, mais cela suffit pour vous donner une saveur.
Edit : ce que j'ai écrit 2 paragraphes est correct. Cependant, j'ai oublié de souligner qu'il s'applique également aux problèmes à contraintes linéaires. Dans le cas de problèmes linéairement contraints, le Hessien du Lagrangien est juste (réduit à) le Hessien de la fonction objectif. Ainsi, la condition d'optimalité de second ordre pour un minimum local est que la projection du Hessien de la fonction objectif dans l'espace nul du Jacobien des contraintes actives est semi-définie positive. Plus particulièrement, la toile de jute de la fonction objectif n'a pas besoin (nécessairement) d'être psd à l'optimum, et ce n'est souvent pas le cas, même sur des problèmes à contraintes linéaires.
la source
Vous avez déjà cité un tas de raisons pour lesquelles le SPD est important, mais vous avez toujours posté la question. Il me semble donc que vous devez d'abord répondre à cette question: pourquoi les quantités positives sont-elles importantes?
Ma réponse est que certaines quantités doivent être positives afin de se réconcilier avec nos expériences ou modèles. Par exemple, les distances entre les éléments dans l'espace doivent être positives. Les coordonnées peuvent être négatives, mais les distances sont toujours non négatives. Par conséquent, si vous avez un ensemble de données et un algorithme qui le traite, vous risquez de vous retrouver avec un qui tombe en panne lorsque vous y insérez une distance négative. Donc, vous dites "mon algorithme nécessite des entrées de distance positives à tout moment", et cela ne ressemblerait pas à une demande déraisonnable.
Ainsi, les matrices de variance-covariance sont semi-définies positives, c'est-à-dire "non négatives" dans cette analogie. L'exemple d'un algorithme qui nécessite cette condition est la décomposition de Cholesky, c'est très pratique. On l'appelle souvent une "racine carrée de la matrice". Ainsi, comme la racine carrée d'un nombre réel qui nécessite la non-négativité, Cholesky veut des matrices non négatives. Nous ne trouvons pas cela contraignant lorsqu'il s'agit de matrices de covariance car elles le sont toujours.
Voilà ma réponse utilitaire. Les contraintes telles que la non-négativité ou SPD nous permettent de construire un algorithme de calcul plus efficace ou des outils de modélisation pratiques qui sont disponibles lorsque vos entrées satisfont à ces contraintes.
la source
Voici deux autres raisons qui n'ont pas été mentionnées pour lesquelles les matrices semi-définies positives sont importantes:
La matrice graphique laplacienne est diagonalement dominante et donc PSD.
La semi-infinité positive définit un ordre partiel sur l'ensemble des matrices symétriques (c'est le fondement de la programmation semi-infinie).
la source