HMY 795: Αναγνώριση Προτύπων Διαλέξεις 2-22 Support vector machies (συνέχεια) Support vector machies (συνέχεια) Usupervised learig: Clusterig ad Gaussia mixtures
Kerel fuctios: k( xx, ') = ϕ ( x) ϕ( x ') = ϕ( x), ϕ( x') k( xx, ') = ϕ ( x) ϕ( x ') = ( x, 2 x x, x ) ( x, 2 x x, x ) = 2 2 Τ '2 ' ' '2 2 2 2 2 = ( x x + 2 x x x x + x x ) 2 '2 ' ' 2 '2 2 2 2 2 = ( x x') = ( x x + x x ) 2 ' ' 2 2 2 k(x,x )έγκυρη συνάρτηση πυρήνα:συμμετρική,πίνακας Κ={k(x,x m )} θετικά ημιορισμένος(positive semidefiite) M Παραδείγματα: M k ( xx, ') = x x ' = x x ' ( ) k ( xx, ') = exp( x x ' 2) Δεν είναι απαραίτητη η γνώση του φ(x)! 2 ( x x ) k( xx, ') = tah a ' + b
Kerel trick: Αν ο αλγόριθμος ταξινόμησης εκφράζεται σε σχέση με το εσωτερικό γινόμενο x x μπορούμε να αντικαταστήσουμεαυτό το εσωτερικό γινόμενο με οποιαδήποτε συνάρτηση πυρήνα k(x,x ) Παράδειγμα: Kerel perceptro Γενικεύουμε τον απλό αλγόριθμο perceptro w() = αυθαίρετο w( k+ ) = w( k) + tx M : tw x 0 ως εξής: w () = αυθαίρετο M w( k+ ) = w( k) + tϕ( x ) M : tw ϕ( x ) 0 M g( x ) = w x = t x x = t x, x M M g( x) = tϕ ( x ) ϕ( x) = t ϕ( x ), ϕ( x) = t k( x, x) M M M Τελικά: w() = αυθαίρετο g( k+ ) = g( k) + t k( x, x) M : t g( x ) 0 M
Support vector machies r = y( x) w t ={+,-} Τ y( x) = w x+ b t y ( x ) > 0 Support Vectors Κλάση Κλάση 2 Κλάση Κλάση 2 x Τ t y( x ) t( w x+ b) = w w Τ arg maxw, b mi t( w x+ b) w ( ) Τ Caoical represetatio t( w x+ b) = Costraits t( w Τ x+ b) =,2,..., Πρόβλημα βελτιστοποίησης 2 arg miw w 2 subject to t( w Τ x+ b) =, 2,..., Lagrage multipliers a 0 2 L( w, b, a) = w a( t( w Τ x+ b) ), a= ( a, a2,..., a ) 2 =
Συνθήκες Kaush-Kuh-ucker: L( w, b, a) L( w, b, a) = 0 w= a tx, = 0 0= w b Τ t ( w x + b) 0 =,2,..., a 0 Τ ( w x ) a t ( + b) =0 = = Τ Support vectors active costraits t( w x+ b) = a i >0 Τ Για όλα τα υπόλοιπα t( w x+ b) > a i =0 Δυαδική Lagragia Lɶ ( a) = m m m (maximize wrt a) a a a t t x x a 0 = 2 = m= a t Kerel trick Bias estimatio a t Lɶ ( a) = a a a t t k( x, x ) m m m = 2 = m= b= t amtmk(, m) S x x S m S = = 0
Μη γραμμικά διαχωρίσιμα δεδομένα: ξ 0(=,2,,) 0 αν το σηµείο είναι σωστά ταξινοµηµένο ξ = t y( x ) ειδάλλως Σημεία πάνω στο σύνορο ξ = (y(x )=0) Λάθος ταξινομημένα σημεία ξ > 0 ξ < βρίσκονται εντός του περιθωρίου, σωστή πλευρά Τ Περιορισμοί t( w x+ b) ξ =,2,..., Ελαχιστοποίηση της 2 Cξ+ w = 2 2 L( w, b, a) = w + Cξ a( t y( x ) + ξ ) µ ξ 2 KK coditios = = =
Support vector machies for regressio Είδαμε ότι σε ένα τυπικό πρόβλημα γραμμικής παλινδρόμησης με κανονικοποίηση ελαχιστοποιούμε την: 2 λ 2 ( y t) + w 2 = 2 Το βασικό χαρακτηριστικό των SVMs είναι ότι εξαρτώνται από ένα (μικρό) υποσύνολο των σημείων εκπαίδευσης Πως μπορεί να γίνει το ίδιο στην περίπτωση της παλινδρόμησης? Εναλλακτική συνάρτηση σφάλματος: ε-isesitive error fuctio (Vapik 995) 0 αν y( x) t < ε Eε ( y( x) t) = y( x) t - ε αλλιώς Κανονικοποιημένη συνάρτηση σφάλματος: C Eε ( y( x) t) + 2 = w 2 όπου y( x ) = w Τ ϕ( x ) + b
Support vector machies for regressio Ορίζουμε τις μεταβλητές ξ ˆ 0, ξ 0 ξ > 0 και ˆ ξ = 0 αν t > y( x ) + ε ˆ ξ > 0 και ξ = 0 αν t < y( x ) ε ως εξής: ˆ ξ = 0 και ξ = 0 αν y( x) ε t y( x) + ε Η λογική είναι παρόμοια με την περίπτωση ταξινόμησης: τα πρότυπα που βρίσκονται κοντά στις πραγματικές τιμές της μεταβλητής στόχου t (όπως και τα σωστά ταξινομημένα πρότυπα που βρίσκονται μακριά από το σύνορο) δενσυνεισφέρουν στο συνολικό κόστος Θα πρέπει να ισχύει για όλα τα σημεία: t y( x ) + ε+ ξ () t y( x ) ε ˆ ξ (2) Το πρόβλημα βελτιστοποίησης γράφεται: 2 miimize C ( ˆ ) s.t., ˆ ξ+ ξ + w ξ ξ 0 ad (),(2) 2 =
Support vector machies for regressio Lagragia ( a ˆ ˆ ):, a 0 και µ, µ 0 2 L= C ( ξ ˆ ) ( ˆ ˆ + ξ + w µ ξ + µ ξ) 2 = = ( ε ξ ( x ) ) ˆ ( ε ˆ ξ ( x ) ) a + + y t a + y + t = = Παραγωγίζοντας: Τ y( x ) = w ϕ( x ) + b
Support vector machies for regressio Αντικαθιστώντας παίρνουμε τη δυαδική Lagragia, η οποία πρέπει να μεγιστοποιηθεί ως προς a ˆ, a : L( aa, ˆ) = ( a aˆ )( a aˆ ) k( x, x ) ε( a + aˆ ) + ( a aˆ ) t 2 = m= = = Επειδή a, a ˆ 0 και µ, ˆ µ 0 και : m m m ΚΚΤ coditios τα γινόμενα μεταξύ των πολλαπλασιαστών και των αντίστοιχων ενεργών περιορισμών πρέπει να ισούνται με μηδέν:
Support vector machies for regressio Συνέπειες Για να είναι κάποιος συντελεστής a μη μηδενικός: ε+ ξ+ y( x ) t = 0 Άρα το αντίστοιχο σημείο βρίσκεται είτε ακριβώς στο ανώτερο όριο του ε-tube (ξ =0) ή πάνω από αυτό (ξ >0) Παρομοίως για να ισχύει a ˆ πρέπει (σημεία > 0 ε+ ˆ ξ y( x) + t = 0 ακριβώς ή κάτω από το κατώτερο όριοτου ε-tube) Μόνο ένας από τα a ˆ, a μπορεί να είναι μη μηδενικός! (support vectors) Προσδιορισμός b: Για κάποιο 0< a (ή ) για το οποίο πρέπει < C 0< aˆ < C ξ = 0 άρα και ε+ y( x ) t = 0, οπότε: Για καινούρια σημεία η πρόβλεψη μοντέλου είναι:
Support vector machies for regressio Εναλλακτικά αντί να πρέπει να προσδιορίσουμε το εμπορούμε να ορίσουμε μια παράμετρο νη οποία καθορίζει το κλάσμα των σημείων που βρίσκονται εκτός των ορίων. Τότε πρέπει να μεγιστοποιήσουμε την: με περιορισμούς: Σημ: Οι παράμετροι ε, ν, C μπορούν να επιλεγούν από δεδομένα επικύρωσης
Παράδειγμα Support vector machies for regressio
Μη επιβλεπόμενη μάθηση (usupervised learig) Στα προηγούμενα είδαμε αποκλειστικά αλγορίθμους επιβλεπόμενης μάθησης η κλάση κάθε δείγματος εκπαίδευσης θεωρούνταν γνωστή Μη επιβλεπόμενη μάθηση η κλάση των δεδομένων δεν είναι γνωστή Η διαδικασία τοποθέτησης ετικετών μπορεί να είναι ακριβή ή αδύνατη Τα χαρακτηριστικά των κλάσεων μπορεί να αλλάζουν με το χρόνο Μπορεί ο αριθμός των κλάσεων να είναι γνωστός ή άγνωστος Γενικά, ψάχνουμε να βρούμε ομοιότητες (similarities) σε κάποια υποσύνολα παρατηρήσεων
Ομαδοποίηση - Clusterig Ομαδοποίηση: Το πρόβλημα της αναγνώρισης ομάδων (clusters) σημείων σε πολυδιάστατο χώρο πρόβλημα μη επιβλεπόμενης (usupervised) μάθησης Έστω ότι έχουμε ένα σύνολο δεδομένων (παρατηρήσεων){x,x 2,,x } σε ένα χώρο διάστασης Dκαι θέλουμε να διαχωρίσουμε τα δεδομένα σε Κομάδες Έστω ότι (προς το παρόν) ότι το Κείναι γνωστό Μια ομάδα μπορεί να οριστεί ως ένα σύνολο παρατηρήσεων η απόσταση μεταξύ των οποίων είναι «μικρή» σε σύγκριση με την απόσταση με άλλα σημεία εκτός της ομάδας Άρα μπορούμε ισοδύναμα να ορίσουμε ένα σύνολο διανυσμάτων µ k όπου k=,2,,k, το καθένα από τα οποία αντιστοιχεί σε κάθε μια ομάδα (π.χ. στο «κέντρο» της) Ο σκοπός μας είναι να βρούμε αυτά τα διανύσματα καθώς και την αντιστοιχία κάθε προτύπου σε μια από τις ομάδες Έστω οι μεταβλητές r k ={0,}ώστε r k =αν το σημείο x ανατεθεί στην κλάση k (άρα r = 0, j k ). Μπορούμε να ορίσουμε τότε τη συνάρτηση: j distortio measure
Ομαδοποίηση - Clusterig Σκοπός είναι η ελαχιστοποίηση ως προς r k καιµ k Επαναληπτική διαδικασία με 2 διαδοχικά βήματα σε κάθε επανάληψη. Αρχικοποίηση µ k 2. Ελαχιστοποίηση Jως προς r k (κρατώντας τα µ k σταθερά) 3. Ελαχιστοποίηση J ως προς µ k (κρατώντας τα r k σταθερά) μέχρι να επιτευχθεί σύγκλιση. Αναλογία με αλγόριθμο μεγιστοποίησης αναμενόμενης τιμής (expectatio maximizatio ΕΜ algorithm) Η ελαχιστοποίηση ως προς r k (για γνωστό µ k ) είναι εύκοληκαι μπορεί να γίνει ξεχωριστά για κάθε σημείο (Ε-step): Κατόπινελαχιστοποιούμε ως προς µ k παραγωγίζοντας την J ως προς µ k (M step): μέση τιμή των σημείων που έχουν ανατεθεί στην ομάδα Κ K meas clusterig
Ομαδοποίηση - Clusterig Τα δύο βήματα επαναλαμβάνονται μέχρι να μην έχουμε αλλαγή στις αναθέσεις ή να φτάσουμε έναν μέγιστο αριθμό επαναλήψεων Εγγυημένη σύγκλιση, αλλά πιθανά σε τοπικό και όχι ολικό ελάχιστο Μπορούμε να αρχικοποιήσουμε τα µ k με τη μέση τιμή ενός τυχαίου υποσυνόλου των αρχικών δεδομένων μας Αργή υλοποίηση (ειδικά Ε-step) Μπορούμε να γενικεύσουμε θεωρώντας ένα πιο γενικό μέτρο της ομοιότητας μεταξύ δύο διανυσμάτων
Παράδειγμα Ομαδοποίηση - Clusterig
Παράδειγμα Ομαδοποίηση - Clusterig
Ομαδοποίηση - Clusterig Εφαρμογές K-meas clusterig: image segmetatio, data compressio
Mixture models Στη γενική του μορφή ένα πιθανοτικό μοντέλο μείξης δίνεται από τη σχέση: compoet desities K p( x θ) = p( x Ck, θk ). p( C ) k k= όπου θ= ( θ, θ,..., θ ) 2 k mixig parameters Σε ένα πρόβλημα μη επιβλεπόμενης μάθησης, σκοπός είναι ο προσδιορισμός του διανύσματος θκαι (πιθανόν)των παραμέτρων μείξης p(c k)(δηλ. των εκ των προτέρων πιθανοτήτων για κάθε κλάση) έχοντας κάποιες παρατηρήσεις που προέρχονται από αυτή την παραπάνω κατανομή Προς το παρόν υποθέτουμε ότι Ο αριθμός των κλάσεων Κ είναι γνωστός Η μορφή των υπό συνθήκη πιθανοτήτων p(x C k,θ k )είναι γνωστή Αν υπολογίσουμε το θ(και τις εκ των προτέρων πιθανότητες p(c k )) μπορούμε κατόπιν να χρησιμοποιήσουμε τον κανόνα Bayesγια να ταξινομήσουμε τα δεδομένα μας
Mixture models Μπορούμε πάντα να το κάνουμε? Ορισμός:Μια κατανομή λέγεται αναγνωρίσιμηαν για θ θ τότε υπάρχει xτέτοιο ώστε p(x θ) p(x θ ) Παράδειγμα: Έστω μια δυαδική τ.μ. η οποία προέρχεται από τη μείξη 2 κατανομών Beroulli. Τότε: x x x x p( x ) θ ( θ) θ = + θ2 ( θ2) 2 2 ( θ+ θ2 ) if x = 2 = - ( θ+ θ2) if x= 0 2 Έστω ότι γνωρίζουμε ότι p(x= θ)=0.6 άρα p(x=0 θ)=0.4. Μπορούμε να λύσουμε το πρόβλημα μη επιβλεπόμενης ταξινόμησης σε αυτή την περίπτωση? θ +θ 2 =.2 Αυτό το πρόβλημα μπορεί να προκύψει για διακριτές μεταβλητές, αλλά ευτυχώς όχι τόσο για συνεχείς μεταβλητές.
Mixture models ML estimatio Έστω ότι έχουμε ένα σύνολο D={x,x 2,,x } ανεξάρτητων παρατηρήσεων χωρίς «ετικέτες», οι οποίες προέρχονται από την κατανομή μείξης: K = k= p( x θ) p( x C, θ ) p( C ) Πιθανοφάνεια: = = p( D θ) p( x θ) k k k Η εκτίμηση μέγιστης πιθανοφάνειας είναι: Gradiet of log-likelihood: K θ l p( D θ) = (, ) ( ) i θ p i Ck k p Ck = = p( ) x θ x θ k= = p( C x, θ) l p( x C, θ ) = i θ i i Άρα θα πρέπει να ισχύουν οι συνθήκες: = i θˆ arg max p( D θ) ML = θ p( C x, θ) l p( x C, θ ) = 0 k=,2,..., K k θ k k k p( C x, θ) = Αν επιπλέον οι εκ των προτέρων πιθανότητες είναι άγνωστες, πρέπει να μεγιστοποιήσουμε και ως προς αυτές, υπό τους περιορισμούς: i K p( C ) 0, p( C ) = i p( x Ci, θi ) p( Ci ) p( x θ) i= i
Mixture models ML estimatio Μάλιστα στην περίπτωση αυτή πρέπει να πληρούνται οι συνθήκες: pˆ ( ) ˆ ˆ ML Ci = = p( Ci x, θml) K = pˆ( C x, θˆ ) l p( x C, θˆ ) = 0 i ML θ i i, ML όπου: pˆ (C x, θˆ ) = i i ML K p( x C, θˆ ) pˆ ( C ) i i, ML ML i ˆ p( x,, ) ˆ C j θ j ML pml ( C j ) j=
Gaussia mixtures Στην περίπτωση μιας μείξης Γκαουσιανών έχουμε: K p( x θ) = π ( x µ, Σ ) k= k k k π = p( C ), p( x C, θ ) = ( x µ, Σ ) k k k k k k όπου και Πως εφαρμόζονται τα προηγούμενα αποτελέσματα? Έστω ότι μόνο οι μέσες τιμές είναι άγνωστες. Η πιθανοφάνεια για την κλάση kείναι: D/2 /2 l p( x C, µ Τ k k ) = l (2 π ) Σ k ( k ) k ( k ) 2 x µ Σ x µ και µ l p( x C, µ ) = Σ ( x µ ) Οι συνθήκες k k k k k = p( C x, θ) l p( x C, θ ) = 0 k=,2,..., K k θ k k δίνουν για τις εκτιμήσεις μέγιστης πιθανοφάνειας: p( C, ˆ ) ( ˆ ˆ ˆ ˆ k x µ ML Σk x µ k, ML ) = 0 µ ML = ( µ, ML,..., µ k, ML ) = k
Λύνοντας ως προς µ k µ ˆ k, ML = = = p( C x, µ ˆ ) x p( C x, µ ˆ ) Gaussia mixtures ML estimatio k ML k ML Άρα η εκτίμηση ML για τη μέση τιμή της k-οστήςκλάσης είναι ένας σταθμισμένος μέσος όρος των δειγμάτωνμε βάρη που ισούνται με την (εκτίμηση) της πιθανότητας το κάθε δείγμα να ανήκει στην κλάση k Η εξίσωση αυτή δεν μας δίνει το µ k όμως, καθώς έχουμε: p( x, ˆ ˆ Ck µ k, ML ) p( Ck ) ( x µ k, ML, Σk ) π k p( C, ˆ k x µ ML ) = = K K p( x C, µ ˆ ) p( C ) ( x µ ˆ, Σ ) π k k, ML k k, ML k k k= k= Έχουμε λοιπόν δύο συζευγμένες εξισώσεις, οι οποίες γενικά δεν έχουν μοναδική λύση. Ένας τρόπος να πάρουμε κάποια λύση είναι επαναληπτικά. Αν μπορούμε να κάνουμε μια λογική αρχικοποίηση µ(0): µ ˆ ( j+ ) = k, ML = = p( C x, µ ˆ ( j)) x k ML p( C x, µ ˆ ( j)) k ML () όπου οι εκ των υστέρων πιθανότητες υπολογίζονται από την () για τις τρέχουσες μέσες τιμές
Παράδειγμα: Gaussia mixtures ML estimatio p 2 2 2 ( x, 2) exp ( ) exp ( 2) 3 2 2 x µ µ µ 3 2 2 x = µ π + π Έστω ότι μ =-2 και μ 2 =2 και ότι παίρνουμε 25 δείγματα. Log-likelihood: 2 = 2 = l( µ, µ ) l p( x µ, µ ) H πιθανοφάνεια έχει ένα ολικό ελάχιστο στο µ =-2.3 και µ 2 =.668 άρα είναι αναγνωρίσιμη, αλλά έχει και ένα τοπικό ελάχιστο στο µ =2.085και µ 2 =-.257 Τι συμβαίνει αν χρησιμοποιήσουμε το προηγούμενο επαναληπτικό σχήμα? -Εξάρτηση από την αρχική τιμή