La fonction objective de l'analyse en composantes principales (ACP) minimise l'erreur de reconstruction dans la norme L2 (voir la section 2.12 ici . Une autre vue essaie de maximiser la variance sur la projection. Nous avons également un excellent article ici: Quelle est la fonction objective de l'ACP ? ).
Ma question est la suivante : l'optimisation PCA est-elle convexe? (J'ai trouvé quelques discussions ici , mais j'aimerais que quelqu'un puisse fournir une belle preuve ici sur CV).
machine-learning
pca
optimization
convex
Haitao Du
la source
la source
Réponses:
Non, les formulations habituelles de PCA ne sont pas des problèmes convexes. Mais ils peuvent être transformés en un problème d'optimisation convexe.
La perspicacité et le plaisir de cela sont de suivre et de visualiser la séquence de transformations plutôt que de simplement obtenir la réponse: cela réside dans le voyage, pas dans la destination. Les principales étapes de ce voyage sont
Obtenez une expression simple pour la fonction objectif.
Agrandir son domaine, qui n'est pas convexe, en un qui l'est.
Modifier l'objectif, qui n'est pas convexe, en un qui est, d'une manière qui ne change évidemment pas les points auxquels il atteint ses valeurs optimales.
Si vous surveillez de près, vous pouvez voir les multiplicateurs SVD et Lagrange qui se cachent - mais ils ne sont qu'un diaporama, là pour l'intérêt scénique, et je ne les commenterai pas plus loin.
La formulation standard de maximisation de la variance de l'ACP (ou au moins son étape clé) est
où la matrice A est une matrice symétrique semi-définie positive construite à partir des données (généralement sa somme des carrés et de la matrice des produits, sa matrice de covariance ou sa matrice de corrélation).n×n A
(De manière équivalente, nous pouvons essayer de maximiser l'objectif non contraint . Non seulement c'est une expression plus désagréable - ce n'est plus une fonction quadratique - mais la représentation graphique de cas spéciaux montrera rapidement que ce n'est pas une fonction convexe On observe généralement que cette fonction est invariante sous les redimensionnements x → λ x puis la réduit à la formulation contrainte ( ∗ ) .)x′Ax/x′x x→λx (∗)
Tout problème d'optimisation peut être formulé de manière abstraite comme
Rappelons qu'un problème d'optimisation est convexe lorsqu'il bénéficie de deux propriétés distinctes:
Le domaine est convexe.X⊂Rn Cela peut être formulé de plusieurs façons. L'une est que chaque fois que et y ∈ X et 0 ≤ λ ≤ 1 , λ x + ( 1 - λ ) y ∈ X également. Géométriquement: chaque fois que deux points d'extrémité d'un mensonge de segment de droite en X , les mensonges ensemble de segments dans X .x∈X y∈X 0≤λ≤1 λx+(1−λ)y∈X X X
La fonction est convexe.f Cela peut également être formulé de plusieurs façons. La première est que chaque fois que et y ∈ X et 0 ≤ λ ≤ 1 , f ( λ x + ( 1 - λ ) y ) ≥ λ f ( x ) + ( 1 - λ ) f ( y ) . (Nous avions besoin de Xx∈X y∈X 0≤λ≤1
L'archétype d'une fonction convexe est localement partout parabolique avec un coefficient de tête non positif: sur tout segment de droite, il peut s'exprimer sous la forme avec a ≤ 0.y→ay2+by+c a≤0.
Une difficulté avec est que X est la sphère unitaire S n - 1 ⊂ R n , qui n'est décidément pas convexe.(∗) X Sn−1⊂Rn Cependant, nous pouvons modifier ce problème en incluant des vecteurs plus petits. En effet, lorsque nous mettons à l'échelle par un facteur λ , f est multiplié par λ 2 . Lorsque 0 < x ′ x < 1 , nous pouvons mettre à l'échelle x jusqu'à la longueur unitaire en le multipliant par λ = 1 / √x λ f λ2 0<x′x<1 x , augmentant ainsifmais restant dans la boule unitaireDn={x∈ R n∣x′x≤1}. Reformulons donc(∗)commeλ=1/x′x−−−√>1 f Dn={x∈Rn∣x′x≤1} (∗)
Son domaine est qui est clairement convexe, nous sommes donc à mi-chemin. Reste à considérer la convexité du graphe de f .X=Dn f
Une bonne façon de penser au problème même si vous n'avez pas l'intention d'effectuer les calculs correspondants - est en termes de théorème spectral.(∗∗) Il dit qu'au moyen d'une transformation orthogonale , vous pouvez trouver au moins une base de R n dans laquelle A est diagonal: c'est-à-dire,P Rn A
la source
Non.
(∥⋅∥F
Bien que la norme soit convexe, l'ensemble sur lequel elle est optimisée n'est pas convexe.
Une relaxation convexe du problème de l'ACP est appelée approximation convexe de bas rang
Vous pouvez voir Apprentissage statistique avec parcimonie , ch 6 (décompositions matricielles) pour plus de détails.
Si vous êtes intéressé par des problèmes plus généraux et comment ils sont liés à la convexité, voir Modèles de bas rang généralisés .
la source
Avertissement: Les réponses précédentes expliquent très bien comment PCA dans sa formulation d'origine n'est pas convexe mais peut être converti en un problème d'optimisation convexe. Ma réponse ne s'adresse qu'aux pauvres âmes (comme moi) qui ne sont pas si familières avec le jargon des sphères unitaires et des SVD - ce qui est, en fait, bon à savoir.
Ma source est cette note de cours du Prof. Tibshirani
Pour qu'un problème d'optimisation soit résolu avec des techniques d'optimisation convexe, il y a deux conditions préalables.
La plupart des formulations d'ACP impliquent une contrainte sur le rang d'une matrice.
la source