Sto cercando di imparare come ridurre la dimensionalità nei set di dati. Mi sono imbattuto in alcuni tutorial su Principle Component Analysis
e Singular Value Decomposition
. Comprendo che prende la dimensione della massima varianza e collassa sequenzialmente le dimensioni della varianza immediatamente successiva (eccessivamente semplificata).Come interpretare i risultati della decomposizione dei valori singolari (Python 3)?
Sono confuso su come interpretare le matrici di output. Ho guardato la documentazione ma non è stato di grande aiuto. Ho seguito alcuni tutorial e non ero sicuro di quali fossero esattamente le matrici risultanti. Ho fornito un codice per avere un'idea della distribuzione di ciascuna variabile nel set di dati (sklearn.datasets
).
mio array di input iniziale è un (n x m)
matrice di n samples
e m attributes
. Potrei fare una trama PCA comune di PC1 contro PC2 ma come faccio a sapere quali dimensioni rappresenta ciascun PC?
Siamo spiacenti se questa è una domanda di base. Molte risorse sono molto complesse per la matematica e io sto bene, ma una risposta più intuitiva sarebbe utile. No, dove ho visto discorsi su come interpretare l'output in termini di dati etichettati originali.
Sono aperto ad usare sklearn
s' decomposition.PCA
#Singular Value Decomposition
U, s, V = np.linalg.svd(X, full_matrices=True)
print(U.shape, s.shape, V.shape, sep="\n")
(442, 442)
(10,)
(10, 10)
È possibile fare riferimento a questa risposta pdf e stackoverflow per ottenere un'intuizione. Li ho anche letti qualche giorno fa e per me erano come la Bibbia. http://www.cs.otago.ac.nz/cosc453/student_tutorials/principal_components.pdf – hashcode55
http://stats.stackexchange.com/questions/2691/making-sense-of-principal-component-analysis-eigenvectors- autovalori – hashcode55
[Tutorial PCA] di Jonathan Shlens (http://arxiv.org/abs/1404.1100) è uno dei migliori. – lightalchemist