si est observé matrice de données et est variable latente alors
Où est la moyenne des données observées, et est l'erreur / bruit gaussien dans les données, et est appelé sous-espace principal.
Ma question est quand une PCA normale est utilisée, nous obtiendrions un ensemble de vecteurs propres orthonormés pour lesquels ce qui suit est vrai
Mais dans PPCA, n'est ni orthonormé ni vecteur propre. Alors, comment puis-je obtenir les principaux composants de ?
Suite à mon instinct, j'ai cherché ppca dans MATLAB, où je suis tombé sur cette ligne:
À la convergence, les colonnes de W s'étendent sur le sous-espace, mais elles ne sont pas orthonormées. ppca obtient les coefficients orthonormaux, coeff, pour les composantes par orthogonalisation de W.
J'ai modifié le code PPCA un peu pour obtenir le W , il a couru et après orthogonalisation j'ai obtenu P de W .
Pourquoi cette orthogonalisation a donné des vecteurs propres, le long desquels la plupart des variances seront observées?
Je suppose que l'orthogonalisation me donne un ensemble de vecteurs orthogonaux / orthonormaux qui s'étendent sur le sous-espace principal, mais pourquoi cette matrice résultante orthogonalisée est égale à la matrice propre (je sais que la matrice propre en pca est également orthonormée)? Puis-je supposer que le sous-espace principal n'est couvert que par un ensemble unique de vecteurs orthonormaux? Dans ce cas, les deux résultats coïncideront toujours.
la source
Réponses:
Ceci est une excellente question.
L'ACP probabiliste (PPCA) est le modèle de variable latente suivant où est une observation et est un latent vecteur variable; généralement . Notez que cela diffère de l'analyse factorielle dans un seul petit détail: la structure de la covariance des erreurs dans PPCA est et dans FA c'est une matrice diagonale arbitraire .
Tipping & Bishop, 1999, Probabilistic Principal Component Analysis prouvent le théorème suivant: la solution de maximum de vraisemblance pour PPCA peut être obtenue analytiquement et est donnée par (Eq. 7): où est une matrice de directions principales principales (vecteurs propres de la matrice de covariance), est la matrice diagonale des valeurs propres correspondantes, est également donnée par une formule explicite, et est une matrice de rotation arbitraire (correspondant aux rotations dans l'espace latent).
LaWML
ppca()
fonction implémente l'algorithme de maximisation des attentes pour s'adapter au modèle, mais nous savons qu'il doit converger vers le comme indiqué ci-dessus.Votre question est: comment obtenir si vous connaissez .Uq WML
La réponse est que vous pouvez simplement utiliser la décomposition en valeurs singulières de . La formule ci-dessus est déjà de la forme matrice orthogonale fois matrice diagonale fois matrice orthogonale, donc elle donne la SVD, et comme elle est unique, vous obtiendrez comme vecteurs singuliers gauches de .WML Uq WML
C'est exactement ce que fait la
ppca()
fonction de Matlab à la ligne 305:Non! Il existe un nombre infini de bases orthogonales couvrant le même sous-espace principal. Si vous appliquez un processus d'orthogonalisation arbitraire à vous n'êtes pas assuré d'obtenir . Mais si vous utilisez SVD ou quelque chose d'équivalent, cela fonctionnera.WML Uq
la source