PC A.el
Σύνοψη
- Ο PCA βρίσκει ορθογώνιες κατευθύνσεις μέγιστης διακύμανσης και προβάλλει τα δεδομένα στις κυρίαρχες συνιστώσες.
- Οι αναλογίες εξηγούμενης διακύμανσης παρέχουν ποσοτικό τρόπο επιλογής του αριθμού συνιστωσών.
- Η κλιμάκωση χαρακτηριστικών επηρεάζει σημαντικά τον PCA, οπότε η τυποποίηση είναι συχνά υποχρεωτική.
Εισαγωγή #
Ο PCA περιστρέφει το σύστημα συντεταγμένων προς κατευθύνσεις που συλλαμβάνουν το μεγαλύτερο μέρος της μεταβλητότητας. Διατηρώντας μόνο τους ισχυρότερους άξονες, συμπιέζει τα δεδομένα ενώ διατηρεί την κυρίαρχη δομή.
Αναλυτική Επεξήγηση #
1. Γιατί PCA; #
- Τα δεδομένα υψηλών διαστάσεων είναι δύσκολο να ερμηνευτούν και να οπτικοποιηθούν· ο PCA βρίσκει ορθογώνιες κατευθύνσεις που συνοψίζουν το μεγαλύτερο μέρος της διακύμανσης.
- Η μέθοδος είναι μη επιβλεπόμενη: δεν χρησιμοποιεί ετικέτες, μόνο τη δομή συνδιακύμανσης των δεδομένων.
- Μόλις προβάλλουμε στις κύριες συνιστώσες, μπορούμε να οπτικοποιήσουμε, να αφαιρέσουμε θόρυβο ή να τροφοδοτήσουμε τα συμπιεσμένα χαρακτηριστικά σε μοντέλα κατάντη.
2. Μαθηματικά #
Δεδομένου ενός πίνακα δεδομένων με μηδενικό μέσο (X \in \mathbb{R}^{n \times d}):
- Πίνακας συνδιακύμανσης $$ \Sigma = \frac{1}{n} X^\top X $$
- Ιδιοανάλυση $$ \Sigma v_j = \lambda_j v_j $$ όπου (v_j) είναι τα ιδιοδιανύσματα (κύριοι άξονες) και (\lambda_j) οι ιδιοτιμές (εξηγούμενη διακύμανση).
- Προβολή $$ Z = X V_k $$ χρησιμοποιώντας τα κορυφαία (k) ιδιοδιανύσματα.
3. Δημιουργία δείγματος δεδομένων #
| |
4. Εκτέλεση PCA με scikit-learn #
| |
5. Η κλιμάκωση έχει σημασία #
| |
Ο PCA κυριαρχείται από χαρακτηριστικά με μεγάλη διακύμανση· η κλιμάκωση (ή λεύκανση) είναι απαραίτητη όταν οι μονάδες χαρακτηριστικών διαφέρουν.
6. Πρακτικές εκτιμήσεις #
- Αναλογία εξηγούμενης διακύμανσης: (\lambda_j / \sum_i \lambda_i) βοηθά να αποφασίσετε πόσες κύριες συνιστώσες να κρατήσετε (συνήθως 80–90%).
- Υπολογισμός: ο PCA υλοποιείται μέσω SVD εσωτερικά· χρησιμοποιήστε
svd_solver='randomized'για μεγάλα σύνολα δεδομένων. - Kernel PCA: όταν ο γραμμικός PCA δεν αρκεί, μεταβείτε σε πυρήνες (δείτε την αντίστοιχη ενότητα) ή δοκιμάστε UMAP/t-SNE για τοπική δομή.