ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα 005 - Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Ανάλυση Κυρίων Συνιστωσών (Principal-Coponent Analysis, PCA) καθ. Βασίλης Μάγκλαρης aglaris@netode.ntua.gr www.netode.ntua.gr Πέμπτη 21/3/2019
Μη Επιβλεπόμενη Μάθηση Επιβλεπόμενη Μάθηση (Supervised Learning μέσω Labeled Training Saples) Εκτίμηση υπό συνθήκη πιθανοτήτων p y x; w της εξόδου y = h w (x) για δείγμα δεδομένων x = (x 1, x 2,..., x ) με χαρακτηριστικά (features) x i. Οι παράμετροι του συστήματος w προκύπτουν με ελαχιστοποίηση μέτρου αποκλίσεων ε n = d n y n = d n h w (x n ) σε N labeled δείγματα μάθησης {x n, d(n)}, n = 1,2,, N Μη Επιβλεπόμενη Μάθηση (Unsupervised Learning, Hebbian Learning) Εκτίμηση a-priori πιθανοτήτων p(x) του δείγματος δεδομένων x = (x 1, x 2,..., x ) με features x i, π.χ. K-Means Clustering - επιλογή Κ Κέντρων Βάρους Συστοιχιών (cluster centroids) και κατανομή σε clusters δυσδιάστατων σημείων x = x 1, x 2 Δεν υπάρχει εκ των προτέρων κατηγοροποίηση (labelling) δεδομένων. Το σύστημα με βάση features δειγμάτων x (π.χ. συντεταγμένες σημείων σε δύο διαστάσεις) ορίζει επιθυμητή έξοδο d και χειρίζεται νέα δείγματα ως προς αυτή (π.χ. συμμετοχή στο πλησιέστερο cluster centroid) μέσω μετασχηματισμού (συνάρτησης) y = h w (x) d με στατιστικά κριτήρια Τα συστήματα με μη επιβλεπόμενη μάθηση βασίζονται σε αυτο-οργάνωση (π.χ. Self- Organizing Maps - SOM) και μαθηματικά εργαλεία ανίχνευσης κοινών χαρακτηριστικών (features, patterns) για την αποτελεσματική επεξεργασία αποθήκευση ταξινόμηση δεδομένων χωρίς εξωτερική βοήθεια, π.χ. για επεξεργασία σήματος (speech iage processing) και αναγνώριση προτύπων (pattern recognition)
Μη Επιβλεπόμενη Μάθηση: Ανάλυση Κυρίων Συνιστωσών Principal Coponents Analysis - PCA The Curse of Diensionality: Σε ένα δειγματικό χώρο δεδομένων x = x 1, x 2,, x T η κωδικοποίηση των χαρακτηριστικών των δειγμάτων μπορεί να απαιτεί μεγάλο αριθμό διακριτών στοιχείων x i, i = 1,2,,. Για καταγραφή με στατιστική επάρκεια όλων των χαρακτηριστικών απαιτείται αριθμός δειγμάτων N πολλαπλάσιος του (π.χ. N 5, https://en.wikipedia.org/wiki/curse_of_diensionality ) Reduction of Diensionality Principal Coponents: Με εφαρμογή Unsupervised Learning σε γραμμικό σύστημα με είσοδο x = x 1, x 2,, x T μπορεί να μειωθεί ο αριθμός των χαρακτηριστικών (αριθμός συντεταγμένων ) μέσω μετασχηματισμού σε Ασυσχέτιστες Κύριες Συνιστώσες (Principal Coponents) και έξοδο y = y 1, y 2,, y l T με επιλογή των σημαντικότερων συνιστωσών (l χαρακτηριστικών) με τη μεγαλύτερη αναμενόμενη διασπορά Αναλογία με ιδιοτιμές (eigenvalues) και ιδιοδιανύσματα (eigenvectors) στη γραμμική άλγεβρα και σχετικούς αλγόριθμους μετασχηματισμού συνιστωσών σε ορθοκανονικό (orthonoral) σύστημα συντεταγμένων
Orthonoral Transforation σε Principal Coponents Ορισμοί: Δείγμα δεδομένων x με χαρακτηριστικά (features) όπως κωδικοποιούνται στα στοιχεία (συνιστώσες) x i x = x 1, x 2,, x T Το δείγμα x ανήκει στον δειγματικό χώρο τυχαίων διανυσμάτων Χ και x i είναι δειγματικές τιμές της τυχαίας μεταβλητής X i. Θεωρούμε πως E X = E X i = 0 Η συμμετρική μήτρα R = E[XX T ] είναι η μήτρα συσχέτισης (Correlation Matrix) των τυχαίων διανυσμάτων Χ με ιδιοδιανύσματα (eignevectors) q j και ιδιοτιμές (eigenvalues) λ j : Rq j = λ j q j, j = 1,2,, αριθμημένα κατά φθίνουσα σειρά των ιδιοτιμών λ j q T j q k = 1, k = j 0, k j Τα ιδιοδιανύσματα q j ορίζουν ορθοκανονικές (orthonoral) κύριες (principal) κατευθύνσεις που μετασχηματίζουν το δείγμα x = x 1, x 2,, x T με συντεταγμένες x i σε a = a 1, α 2,, α T = x T q 1, x T q 2,, x T q με συντεταγμένες a i που αποτελούν τις Κύριες Συνιστώσες (Principal Coponents). Η αρίθμηση ακολουθεί τη φθίνουσα σειρά των λ j = q T j Rq j = var A j δειγματική τιμή α j και q j T Rq k = λ j, k = j 0, k j σ j 2 όπου A i τυχαία μεταβλητή με Oι αρχικές συντεταγμένες προκύπτουν μονοσήμαντα από τις Κύριες Συνιστώσες: x = a j q j
Orthonoral Transforation σε Principal Coponents Αν αγνοήσουμε τις συνιστώσες α j, j = l + 1, l + 2,, προκύπτει εκτίμηση του δείγματος x από δείγμα x = x 1, x 2,, x l = [q 1, q 2,, q l ] a 1, α 2,, α T l με μικρότερο αριθμό συνιστωσών l < επιλέγοντας τις σημαντικότερες συνιστώσες - Principal Coponents l x = a j q j για l < Το σφάλμα εκτίμησης e = x x = e T x = i=l+1 a i q i είναι διάνυσμα ορθογώνιο προς το x : i=l+1 T a i q j l a j q j Η συνολική διασπορά των τυχαίων μεταβλητών X j είναι σ j 2 = λ j = 0 l l Η συνολική διασπορά των l τυχαίων μεταβλητών A j είναι σ 2 j = λ j Η συνολική διασπορά του σφάλματος e = x x είναι λ l+1 + λ l+2 + + λ που αντιστοιχεί στις κύριες συνιστώσες με τις μικρότερες διακυμάνσεις
Προσδιορισμός Μέγιστης Συνιστώσας μέσω Φίλτρου Hebbian ενός Γραμμικού Νευρώνα (1/2) (First Principal Coponent via Hebbian-based Maxiu Eigenfilter) Αξίωμα του Hebbs: Αν σε τα σήματα στα άκρα μιας νευρωνικής σύναψης i ενεργοποιούνται ταυτόχρονα σε μια χρονική στιγμή που ορίζεται από το βήμα n, το συναπτικό της βάρος w i n ενισχύεται. Αλλιώς φθίνει προς μηδενισμό (παραλλαγή από αρχικό αξίωμα για μάθηση με όρους νευροψυχολογίας) Νευρωνικό Δίκτυο για Προσδιορισμό του First Principal Coponents από δεδομένα διαστάσεων y n = i=1 w i n x i n στην επανάληψη n Τα βάρη αυξάνονται στην επανάληψη n n + 1 αν το γινόμενο y n x i n είναι θετικό (αξίωμα Hebbs) w i n + 1 = w i n + ηy n x i n, i = 1,2,, όπου η learning paraeter Απαιτείται noralization για ευστάθεια: n + ηy n x i n w i n + 1 = w i w k n + ηy n x k n 2 1 2 w i n + ηy n [x i n y n w i (n)], i = 1,2,, Η θετική ανάδραση y n x i n που προκαλεί αστάθεια αντισταθμίζεται από την y n w i (n): w i n + 1 = w i n + ηy n x i n, x i n = x i n y n w i (n), i = 1,2,,
Προσδιορισμός Μέγιστης Συνιστώσας μέσω Φίλτρου Hebbian ενός Γραμμικού Νευρώνα (2/2) (First Principal Coponent via Hebbian-based Maxiu Eigenfilter) Ζητήματα Σύγκλισης Διανυσματικοί ορισμοί x(n) = [x 1 n, x 2 n,, x n ] T w(n) = [w 1 n, w 2 n,, w n ] T y n = w T n x(n), w n + 1 = w n + ηy n [x n y n w n ] Αλγόριθμος αυτό-οργανωμένης μη επιβλεπόμενης μάθησης: w n + 1 = w n + η[x n x T (n)w n w T n (x n x T (n))w n w n ] Οι όροι x n x T (n) αποτελούν μια στιγμιαία υλοποίηση της μήτρας συσχέτισης R = E[XX T ] χωρίς μέσους όρους και οδηγούν προς την ανάλυση της σύγκλισης του αλγορίθμου μέσω μη γραμμικής στοχαστικής εξίσωσης διαφορών (εκτός ορίων του μαθήματος) Δεν υπάρχει εξωτερική επιρροή στον αλγόριθμο λόγω της μη επιβλεπόμενης (αυτό-οργανωμένης ) φύσης του πλην του a-priori καθορισμού της παραμέτρου μάθησης η
Ανάλυση Κύριων Συνιστωσών μέσω Γραμμικού Μονοεπίπεδου Νευρωνικού Δικτύου (1/3) (Hebbian-based Principal-Coponent Analysis) Γενίκευση του Hebbian-based axiu Eigenfilter: Γραμμικό Feedforward Νευρωνικό Δίκτυο ενός επιπέδου με l νευρώνες για προσδιορισμό των l Principal Coponents από Δεδομένα Διαστάσεων, l < : y j n = w ji n x i n, j = 1,2,, l i=1 j w ji n = η y j n x i n y j (n) w ki n y k n, j = 1,2,, l και i = 1,2,,
Ανάλυση Κύριων Συνιστωσών μέσω Γραμμικού Μονοεπίπεδου Νευρωνικού Δικτύου (2/3) (Hebbian-based Principal-Coponent Analysis) Γενικευμένος Αλγόριθμος του Hebbs Generalized Hebbian Algorith (GHA) w ji n = ηy j n x i n w ji n y j n, j = 1,2,, l και i = 1,2,, w ji n = ηy j n x i n όπου x i n = x i n w ji n y j n w ji n + 1 = w ji n + w ji n, w ji n = ȥ 1 [w ji n + 1 ] Διανυσματική Μορφή: w j n = ηy j n x i n ηy 2 j n w j n, j = 1,2,, l j 1 j 1 x i n = x i n w ki n y k n όπου x n = x n w k n y k (n)
Ανάλυση Κύριων Συνιστωσών μέσω Γραμμικού Μονοεπίπεδου Νευρωνικού Δικτύου (3/3) (Hebbian-based Principal-Coponent Analysis) x (n) = x n j 1 w k n y k n Για j = 1: x n = x n Προσδιορισμός 1 ης κύριας συνιστώσας y 1 n, j = 1,2,, l Για j = 2: x n = x n w 1 n y 1 n Προσδιορισμός 2 ης συνιστώσας y 2 n σαν 1 η συνιστώσα μετά από αφαίρεση της ήδη υπολογισθείσας y 1 n Για j = 3: x n = x n w 1 n y 1 n w 2 n y 2 n Προσδιορισμός 3 ης συνιστώσας y 3 n σαν 1 η συνιστώσα μετά από αφαίρεση των ήδη υπολογισθείσας y 1 n και y 2 n.. Οι l πιο σημαντικές κύριες συνιστώσες αντιστοιχούν στα ιδιοδιανύσματα q k της μήτρας συσχέτισης R = E[XX T ], k = 1,2,, l αριθμημένες κατά τη φθίνουσα σειρά των ιδιοτιμών λ 1 > λ 2 > > λ l και δίνουν την εκτίμηση x(n) με l χαρακτηριστικά του δείγματος x n με > l x(n) = l y k (n)q k για l <
Εφαρμογή στη Κωδικοποίηση Εικόνας Αρχική Εικόνα (Lena): 256 256 pixels, 256 gray levels στην πάνω εικόνα δεξιά Κωδικοποίηση με Μονοστρωματικό Linear Feedforward Δίκτυο l = 8 Νευρώνων με = 64 εισόδους και αλγόριθμο GHA (Generalized Hebbian Algorith) Μάθηση μέσω 2000 σκαναρισμένων διεγμάτων της εικόνας, χωρισμένων σε 1024 μη επικαλυπτόμενα τμήματα (Blocks), το καθένα μεγέθους 8 8 pixels Ρυθμός μάθησης (Learning Rate): η = 10 4 Το κάθε δείγμα αναλύεται σε γραμμικό συνδυασμό από 64 χαρακτηριστικά συνιστώσες, x(n) = [x 1 n, x 2 n,, x n ] T, = 64 που οδηγούν διαδικασία GHA με δίκτυο από l = 8 Νευρώνες. Το σύστημα συγκλίνει σε 8 64 συναπτικά βάρη w ji n και απολήγει σε 8 εξόδους (κυριότερες συνιστώσες, Principal Coponents): 64 y j n = i=1 w ji n x i n, j = 1,2,, 8 Τα βάρη (weights) μετά τη σύγκλιση παρίστανται στην μεσαία εικόνα με 4 2 = 8 περιοχές (asks), η κάθε μία με 64 τμήματα, σύνολο 8 64 τμήματα που καταγράφουν χρωματικά την συνεισφορά των 64 χαρακτηριστικών των δειγμάτων εισόδου στις 8 εξόδους. Το άσπρο χρώμα υποδηλώνει θετική συνεισφορά ενός χαρακτηριστικού, το μαύρο αρνητική και το γκρι μηδενική Στη κάτω εικόνα παρουσιάζεται ανασύσταση της αρχικής με τη συμμετοχή μόνο των 8 κυριότερων χαρακτηριστικών της (Principal Coponents) x(n) = 8 y k (n)q k