Svd.el
Σύνοψη
- Η SVD παραγοντοποιεί έναν πίνακα σε ορθογώνιες βάσεις και ιδιάζουσες τιμές, επιτρέποντας προσέγγιση χαμηλής τάξης.
- Η αποκοπή μικρών ιδιαζουσών τιμών αφαιρεί θόρυβο ενώ διατηρεί τις κύριες συνιστώσες του σήματος.
- Η SVD αποτελεί τη βάση πολλών πρακτικών τεχνικών, συμπεριλαμβανομένων του PCA και μοντέλων λανθανόντων παραγόντων.
Εισαγωγή #
Η SVD αποσυνθέτει τα δεδομένα σε ανεξάρτητους τρόπους ταξινομημένους κατά ισχύ. Η διατήρηση μόνο των ισχυρών τρόπων δίνει συμπαγείς αναπαραστάσεις με ελεγχόμενη απώλεια πληροφορίας.
Αναλυτική Επεξήγηση #
1. Γιατί SVD; #
- Οποιοσδήποτε ορθογώνιος πίνακας (A) μπορεί να αποσυντεθεί σε ερμηνεύσιμα κομμάτια: περιστροφές συν κλιμάκωση.
- Με την αποκοπή των ιδιαζουσών τιμών παίρνουμε τη βέλτιστη προσέγγιση χαμηλής τάξης υπό την έννοια της νόρμας Frobenius.
- Η SVD είναι αριθμητικά σταθερή και αποτελεί τη ραχοκοκαλιά πολλών αλγορίθμων (LSA, PCA, συνεργατικό φιλτράρισμα).
2. Ορισμός #
Για (A \in \mathbb{R}^{m \times n}):
$$A = U \Sigma V^\top$$- (U): αριστερά ιδιάζοντα διανύσματα (ορθοκανονικά, μέγεθος (m \times m))
- (\Sigma): διαγώνιος πίνακας με ιδιάζουσες τιμές (\sigma_1 \ge \sigma_2 \ge \dots)
- (V): δεξιά ιδιάζοντα διανύσματα (ορθοκανονικά, μέγεθος (n \times n))
Οι κορυφαίες ιδιάζουσες τιμές συλλαμβάνουν το μεγαλύτερο μέρος της ενέργειας του πίνακα.
3. Προετοιμασία εικόνας #
| |
4. Υπολογισμός της SVD #
| |
5. Προσέγγιση χαμηλής τάξης / συμπίεση #
| |
Ένας μικρός αριθμός ιδιαζουσών τιμών αρκεί ήδη για μια λογική ανακατασκευή της εικόνας.
6. Εξέταση ιδιαζόντων διανυσμάτων #
| |
Κάθε ζεύγος ιδιαζόντων διανυσμάτων κωδικοποιεί ένα συγκεκριμένο μοτίβο στην εικόνα· η προσθήκη περισσότερων ζευγών βελτιώνει τη λεπτομέρεια.
7. Πρακτικές συμβουλές #
- Συμπίεση: επιλέξτε (k) ώστε (\sum_{i=1}^k \sigma_i / \sum_j \sigma_j) να φτάνει στην επιθυμητή ενέργεια.
- Μείωση θορύβου: η αφαίρεση μικρών ιδιαζουσών τιμών λειτουργεί συχνά ως αποθορυβοποιητής.
- PCA: απλά εφαρμόστε SVD στον κεντραρισμένο πίνακα δεδομένων· τα δεξιά ιδιάζοντα διανύσματα αντιστοιχούν σε κύριους άξονες.
- Κόστος: η πλήρης SVD είναι (O(mn \min(m,n)))· χρησιμοποιήστε αποκομμένη ή τυχαιοποιημένη SVD για μεγάλους πίνακες.