HMY 795: Αναγνώριση Προτύπων

Σχετικά έγγραφα
HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 15-16

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 13-14

HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 17-18

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων

Το Πολυεπίπεδο Perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

HMY 795: Αναγνώριση Προτύπων

Μοντέλο Perceptron πολλών στρωμάτων Multi Layer Perceptron (MLP)

Το μοντέλο Perceptron

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 4 o Φροντιστήριο

HMY 795: Αναγνώριση Προτύπων

Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή

Τεχνητή Νοημοσύνη. 19η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 18η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων. Διάλεξη 2

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων

HMY 795: Αναγνώριση Προτύπων

Ασκήσεις μελέτης της 19 ης διάλεξης

Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν.

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

HMY 795: Αναγνώριση Προτύπων

Πολλαπλή παλινδρόμηση (Multivariate regression)

Τεχνητή Νοημοσύνη. 17η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

HMY 799 1: Αναγνώριση Συστημάτων

Μη γραµµικοί ταξινοµητές Νευρωνικά ίκτυα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή

ΚΑΤΗΓΟΡΙΕΣ ΤΑΞΙΝΟΜΗΣΗΣ

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων

ΔΙΚΤΥO RBF. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Αναγνώριση Προτύπων Ι

Κινητά Δίκτυα Επικοινωνιών. Συμπληρωματικό υλικό. Προσαρμοστική Ισοστάθμιση Καναλιού

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPTRON

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

HMY 795: Αναγνώριση Προτύπων

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 3ο Φροντιστήριο

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ. ΕΝΟΤΗΤΑ: Γραμμικές Συναρτήσεις Διάκρισης. ΔΙΔΑΣΚΟΝΤΕΣ: Βλάμος Π. Αυλωνίτης Μ. ΙΟΝΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

HMY 220: Σήματα και Συστήματα Ι

HMY 220: Σήματα και Συστήματα Ι

ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #8: Βελτιστοποίηση Συστημάτων Ασαφούς Λογικής. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε.

HMY 795: Αναγνώριση Προτύπων

Νευρωνικά Δίκτυα στο Matlab

4.3. Γραµµικοί ταξινοµητές

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

ΘΕΩΡΙΑ ΑΠΟΦΑΣΕΩΝ 3 ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΛΥΣΕΙΣ ΤΩΝ ΑΣΚΗΣΕΩΝ

HMY 795: Αναγνώριση Προτύπων

Μάθηση και Γενίκευση. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Υπολογιστική Νοημοσύνη. Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks

ΟΙΚΟΝΟΜΕΤΡΙΑ. Παπάνα Αγγελική

HMY 795: Αναγνώριση Προτύπων

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΔΕ. 11 ΙΟΥΝΙΟΥ 2012

Νευρωνικά ίκτυα και Εξελικτικός. Σηµερινό Μάθηµα. επανάληψη Γενετικών Αλγορίθµων 1 η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές

(1) L{a 1 x 1 + a 2 x 2 } = a 1 L{x 1 } + a 2 L{x 2 } (2) x(t) = δ(t t ) x(t ) dt x[i] = δ[i i ] x[i ] (3) h[i, i ] x[i ] (4)

ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ Τμήμα Επιστήμης Φυσικής Αγωγής και Αθλητισμού Πρόγραμμα Διδακτορικών Σπουδών ΠΛΗΡΟΦΟΡΙΑΚΟ ΕΝΤΥΠΟ ΜΑΘΗΜΑΤΟΣ

ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ ΣΤΑΤΙΣΤΙΚΗ Ι ΜΕΡΟΣ Α (Σ. ΧΑΤΖΗΣΠΥΡΟΣ) . Δείξτε ότι η στατιστική συνάρτηση T = X( n)

Εισόδημα Κατανάλωση

Πολλαπλή παλινδρόµηση. Μάθηµα 3 ο

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ. Καραγιώργου Σοφία

Εφαρμογές μεθοδολογιών μηχανικής εκμάθησης στο χώρο της παραγωγής υδρογονανθράκων. Βασίλης Γαγάνης

Αναγνώριση Προτύπων Ι

Υπολογιστική Νοημοσύνη. Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning

HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 9-10

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Αντικείμενο του κεφαλαίου είναι: Ανάλυση συσχέτισης μεταξύ δύο μεταβλητών. Εξίσωση παλινδρόμησης. Πρόβλεψη εξέλιξης

ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Νευρωνικά ίκτυα. Σηµερινό Μάθηµα

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π.

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΠΑ. 7 ΣΕΠΤΕΜΒΡΙΟΥ 2012

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

ΜΗ ΓΡΑΜΜΙΚΗ ΠΑΛΙΝΔΡΟΜΙΣΗ

Αναγνώριση Προτύπων Ι

Πρόλογος... xv. Κεφάλαιο 1. Εισαγωγικές Έννοιες... 1

ΤΕΙ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ Μεταπτυχιακό Τραπεζικής & Χρηματοοικονομικής

Συμπίεση Δεδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Γραµµικοί Ταξινοµητές

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

Θεωρία Λήψης Αποφάσεων

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών

E[ (x- ) ]= trace[(x-x)(x- ) ]

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών. Χρόνου (Ι)

HMY 795: Αναγνώριση Προτύπων

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών Σημάτων. Διάλεξη 20: Διακριτός Μετασχηματισμός Fourier (Discrete Fourier Transform DFT)

Τμήμα Μηχανικών Η/Υ και Πληροφορικής

Αναγνώριση Προτύπων (Pattern Recognition) Μπεϋζιανή Θεωρία Αποφάσεων (Bayesian Decision Theory) Π. Τσακαλίδης

Υπολογιστική Νοημοσύνη. Μάθημα 4: Μάθηση στον απλό τεχνητό νευρώνα (2)

Transcript:

HMY 795: Αναγνώριση Προτύπων Διαλέξεις 15 16 Λογιστική παλινδρόμηση (Logistic regression) Νευρωνικά Δίκτυα (Neural Networks)

g ( x) = w x+ w T k k k0 1 ( T T WLS = X X) X T= X T Γραμμικές διαχωριστικές συναρτήσεις Fisher s linear discriminant: Μείωση διαστάσεων (dimensionality reduction) Τ y = wx s + s =w S w 2 2 Τ 1 2 W ( ) 2 2 ( ) m m = wm wm = ws B w Τ Τ Τ 2 1 2 1

Fisher s linear discriminant Πολλαπλές κλάσεις Ck (k>2): T y = wx (k=1,2,,d ) k y = k T W x Within class scatter Between class scatter S Κ N ( m m)( m m) T B i i i i= 1 s s W B = W Τ S W W = W Τ SBW Τ s B S B J ( W) = = W W s W Τ S W W W W: ιδιοδιανύσματα του S 1 W S B που αντιστοιχούν στις D μεγαλύτερες ιδιοτιμές

Γραμμικά διαχωρίσιμα δεδομένα 2 κλάσεις w τ.ω. αν w T x>0 όταν x ανήκει στην κλάση C 1, w T x<0 αν ανήκει στην C 2 Μετ/σμός: x για κάθε x στην C 2 : w τ.ω. w T x>0 για κάθε x Γενικά: w T x>b (b: margin) w( k+ 1) = w( k) n( k) J( w) 2 J Hessian H = J, Hij = wi w j 2 w = w J nk ( ) = T J J H 1 ( k ) Newton w( k+ 1) = w( k) H J

Perceptron algorithm: μόνο τα λάθος ταξινομημένα δείγματα αλλάζουν τις τιμές του w T Criterion function J P ( w) = ( w xn) n M Batch training w( k+ 1) = w( k) + n( k) xn Single sample training i n M w(1) = αυθαίρετο w ( k+ 1) = w ( k ) + x k, k 1 Για περιθώριο b w(1) = αυθαίρετο w w x k ( k+ 1) = ( k) + n( k), k 1 Τ k όπου w ( k) x b Εναλλακτικές συναρτήσεις κριτηρίου (μη μηδενική Hessian) J q T ( w) = ( w xn) n M 2 J r T 2 1 ( n b) T ( w) = wx M: w x 2 n b 2 n M x n

Minimum squared error procedures Επιστρέφουμε στην τυποποίηση του προβλήματος ως πρόβλημα ελαχιστοποίησης τετραγωνικού σφάλματος χρησιμοποιώντας όλα τα δείγματα Είδαμε ότι αν χρησιμοποιήσουμε μεταβλητή στόχου της μορφής t={0,1} δεν παίρνουμε καλά αποτελέσματα T Στις προηγούμενες διαφάνειες προσπαθήσαμε να κάνουμε τα γινόμενα wx θετικά Μπορούμε όμως να προσπαθήσουμε να κάνουμε αυτά τα γινόμενα ίσα με ένα δά διάνυσμα περιθωρίων (margins) )b, δηλ: Xw = b όπου τα bi s είναι θετικές σταθερές Η λύση ελάχιστων τετραγώνων είναι: ( ) T 1 T wls = X X X b= X b Μάλιστα, για b=1,, ηλύσηαυτήπροσεγγίζειασυμπτωτι ασυμπτωτικά άτηβέλτιστηδιαχωριστι διαχωριστική συνάρτηση ταξινομητή κατά Bayes, δηλ. g0( x) = p( C1 x) p( C2 x) όμως η προσέγγιση αυτή είναι καλύτερη για σημεία στα οποία η πιθανότητα p( x) = p( x C είναι μεγάλη παρά κοντά στην επιφάνεια 1) p( C1) + p( x C2) p( C2) απόφασης g 0 (x)=0

Παράδειγμα: C1: (1 2) T (2 0) T C2: (3 1) T (2 3) T Ο πίνακας Χ είναι: Minimum squared error procedures 1 1 2 X = 1 2 0 1 3 1 1 2 3 Επιλέγοντας b=(1 1 1 1) T, η λύση είναι: w ( ) = X b= 11/3 4/3 2/3 T

Minimum squared error procedures Μπορούμε να ελαχιστοποιήσουμε το κριτήριο 2 J s ( w) = Xw b επαναληπτικά, καθώς: T J s ( w) = 2 X ( Xw b) με βάση την: w(1) = αυθαίρετο T w( k+ 1) = w( k) + n( k) X ( Xw( k) b) η οποία συγκλίνει για n(k)=1/k. Εναλλακτικά μπορούμε να θεωρήσουμε τα δείγματα σε σειρά (Widrow Hoff or LMS (least mean squares) procedure): w(1) = αυθαίρετο w w w x x ( k+ 1) = ( k) + n( k)( b( k) T ( k) k) Αποφεύγουμε πιθανά αριθμητικά προβλήματα, λιγότερες απαιτήσεις για αποθήκευση k

Logistic regression Είδαμε γενικά ότι η χρήση του κριτηρίου ελάχιστων τετραγώνων σε προβλήματα γραμμικής ταξινόμησης δεν είναι ιδανική Μπορούμε να βρούμε εναλλακτική συνάρτηση κριτηρίου που να είναι πιο κατάλληλη για τέτοια προβλήματα? Ας υποθέσουμε ότι έχουμε ένα πρόβλημα 2 κλάσεων. Η εκ των υστέρων πιθανότητα για την κλάση C1 είναι (κανόνας Bayes): όπου σ(α): logistic sigmoid function Για α μικρό, η σιγμοειδής προσεγγίζει γραμμική μορφή Αντίστροφη συνάρτηση: logit function log of ratio between posteriors (ln[p(c1 x)/p(c2 x)])

Logistic regression Για περισσότερες από 2 κλάσεις η γενίκευση της λογιστικής συνάρτησης είναι: normalized exponential function/softmax function όπου Αν a k >>a j P(C k x) 1, P(C j x)

Logistic regression Αν θεωρήσουμε ότι η διαχωριστική συνάρτηση για το πρόβλημα 2 κλάσεων είναι μια γενικευμένη γραμμική διαχωριστική συνάρτηση, δηλ. T y = g ( wx+ w0 ) τότε, μπορούμε να χρησιμοποιήσουμε g=σ: T σ( wx+ w0) = p( C1 x) = σ( a) ( 1) ( 1) 0 ln P x wx T + w = a = C P C P ( x C ) P ( C ) 2 2 Αν επιπλέον οι υπό συνθήκη κατανομές για την κάθε κλάση είναι κανονικές με ίσους πίνακες συνδιακύμανσης, δηλ. p( x C )~ N( μ, Σ) προκύπτει: i i 1 w =Σ ( μ1 μ2) 1 1 ( ) w = μ T Σ μ + μ T Σ μ + ln P C 2 2 ( ) 1 1 1 0 1 1 2 2 PC 2 Η έξοδος λοιπόν της σιγμοειδούς συνάρτησης για το πρόβλημα 2 κλάσεων μπορεί να ερμηνευθεί ως εκ των υστέρων πιθανότητα

Logistic regression Για την περίπτωση Κ κλάσεων θα έχουμε: T exp( αk ) g k( wx+ w0 ) = p( Ck x) = exp( α j ) j T w x+ w = α ( x) w w k k0 k 1 k =Σ μk 1 = μ Σ μ + ln P( C ) 2 T 1 k0 k k k Σημ: Τα αποτελέσματα αυτά είναι τα ίδια με αυτά της διάλεξης 4, όπου είχαμε υπολογίσει αναλυτικά τις εκ των υστέρων πιθανότητες για υπό συνθήκη κανονικές κατανομές για κάθε κλάση. Εδώ είδαμε το πρόβλημα από τη σκοπιά της εύρεσης γενικευμένης ευμέ γραμμικής διαχωριστικής συνάρτησης

Logistic regression Γενικεύοντας αν έχουμε οποιονδήποτε μη γραμμικό μετασχηματισμό των χαρακτηριστικών φ(x) για το πρόβλημα 2 κλάσεων: Πως μπορούμε να βρούμε το διάνυσμα w? Καταρχάς για την παράγωγο της σιγμοειδούς ως προς α ισχύει: Για σύνολο δεδομένων {φ n,t n } όπου t n ={0,1} (n=1,2,,n) η πιθανοφάνεια για Ν ανεξάρτητες παρατηρήσεις είναι γινόμενο Bernoulli: όπου Όμως και. Ισοδύναμα μπορούμε να ελαχιστοποιήσουμε τον αρνητικό λογάριθμο της πιθανοφάνειας, δηλ.: cross entropy error function H κλίση ως προς w προκύπτει αρκετά απλοποιημένη:

Logistic regression Η συνεισφορά κάθε σημείου n είναι ανάλογη της διαφοράς y n t n. Μπορούμε να χρησιμοποιήσουμε αυτή την σχέση για να υπολογίσουμε επαναληπτικά τα w (gradient descent). Μπορεί να χρησιμοποιηθεί και η μέθοδος Newton (4.3.3 Bishop) Βελτίωση σε σύγκριση με τα απλά ελάχιστα τετράγωνα Παρόμοια και για πολλαπλές λέ κλάσεις (softmax function multi class l entropy)

Νευρωνικά Δίκτυα Στα προηγούμενα (παλινδρόμηση και γραμμική ταξινόμηση) είδαμε μοντέλα όπου οι συναρτήσεις βάσης ήταν σταθερές (συγκεκριμένης μορφής) και επίσης ο αριθμός τους ήταν προαποφασισμένος Για προβλήματα με πολλές διαστάσεις μεγάλη αύξηση πολυπλοκότητας Υπάρχουν 2 τρόποι βελτίωσης Επιλογή συναρτήσεων βάσης από τα δεδομένα δ (support vector machines) Χρήση συγκεκριμένου αριθμού συναρτήσεων βάσης, των οποίων οι παράμετροι καθορίζονται από τα δεδομένα εκπαίδευσης προσαρμοστικά (1) Επίσης στα προηγούμενα είδαμε γραμμικές διαχωριστικές συναρτήσεις πολλές φορές δεν είναι ικανοποιητικές για δεδομένα που δεν είναι γραμμικά διαχωρίσιμα (2) Μια προσέγγιση που υλοποιεί τις (1), (2) είναι αυτή των νευρωνικών δικτύων (neural networks) Το όνομα προέρχεται από τις (περιορισμένες) ομοιότητες αυτών των αρχιτεκτονικών με δίκτυα νευρώνων (κύτταρα νευρικού συστήματος) Διαλέγουμε τόσο τις συναρτήσεις βάσης όσο και κατάλληλες μη γραμμικότητες για το δίκτυο και «εκπαιδεύουμε» τις παραμέτρους των κατά τη φάση εκπαίδευσης με βάση παρόμοιες τεχνικές που είδαμε στον αλγόριθμο perceptron (gradient descent)

Νευρωνικά Δίκτυα Στο προηγούμενο κεφάλαιο είδαμε την αρχιτεκτονική δικτύου με ένα στρώμα (single layer network) η οποία μπορεί να χρησιμοποιηθεί για την υλοποίηση γραμμικών ταξινομητών Γενικώς θέλουμε να κατασκευάσουμε μοντέλα της μορφής όπου f(.) μια μη γραμμική συνάρτηση ενεργοποίησης (activation function) για προβλήματα ταξινόμησης. Θέλουμε να είμαστε σε θέση να «μάθουμε» από τα δεδομένα εκπαίδευσης τόσο τις τιμές των συντελεστών w j, όσο και την ακριβή μορφή των συναρτήσεων βάσης φ j (x) καθώς και τη συνάρτηση f(.)

Νευρωνικά Δίκτυα Η βασική αρχιτεκτονική νευρωνικού δικτύου που μπορεί να υλοποιήσει το μοντέλο αυτό είναι το δίκτυο δύο στρωμάτων (two layer network) του σχήματος Feed forward network (δίκτυο πρόσω τροφοδότησης), multi layer perceptron (αναγνωριστής πολλαπλών λώ στρωμάτων) ) Πρώτο στρώμα/στρώμα εισόδου weights biases j=1,2,,m (Μ αριθμός κρυμμένων μονάδων) Συναρτήσεις ενεργοποίησης εργοποίησης h(.) (hidden units/hidden layer). Συνηθισμένη η επιλογή για προβλήματα ταξινόμησης: sigmoidal functions Δεύτερο στρώμα: k=1,2,,k (K αριθμός εξόδων)

Έξοδος: y = g( a ) k = 1, 2,..., K k k Νευρωνικά Δίκτυα Τελικά λοιπόν ο συνολικός μετ/σμός είναι: M D (2) (1) yk = g wkj h wji xi k = 1, 2,..., K j= 0 i= 0 όπου θεωρούμε x 0 =1 και z 0 =1, η οποία είναι ίδιας μορφής με την: Παρατήρηση: Αν οι συναρτήσεις ενεργοποίησης των κρυμμένων μονάδων είναι αρατήρηση: οι συ αρτήσεις ε εργοποίησης τω ρυμμέ ω μο άδω εί αι γραμμικές, τότε μπορούμε να βρούμε ένα ισοδύναμο δίκτυο χωρίς το κρυμμένο στρώμα καθώς η αλληλουχία γραμμικών μετασχηματισμών είναι επίσης γραμμικός μετασχηματισμός. Στην περίπτωση αυτή, αν ο αριθμός των κρυμμένων μονάδων Μ είναι μικρότερος από τον αριθμό των εισόδων D ή/και εξόδων Κ τότε ο γραμμικός μετ/σμος δε θα είναι ο γενικότερος δυνατός

Νευρωνικά Δίκτυα Kolmogorov s theorem: Κάθε συνεχής συνάρτηση πολλών μεταβλητών μπορεί να αναπαρασταθεί ως υπέρθεση ενός πεπερασμένου αριθμού συναρτήσεων μιας μεταβλητής στην περίπτωση που το πεδίο τιμών των εισόδων είναι κλειστό και φραγμένο Εφαρμογή στα νευρωνικά δίκτυα: Οποιαδήποτε συνεχής απεικόνιση y(x), όπου το x έχει διάσταση D μπορεί να αναπαρασταθεί ακριβώς από ένα δίκτυο τριων στρωμάτων με D(2D+1) μονάδες στο πρώτο στρώμα και 2D+1 στο δεύτερο, όπου οι συναρτήσεις ενεργοποίησης του πρώτου στρώματος hi είναι αυστηρά μονοτονικές και: D 2D+ 1 z λ h ( x ) y= g( z ) = k i j i j i= 1 j= 1 όπου g πραγματική και συνεχής συνάρτηση. Με άλλα λόγια μπορούμε να προσεγγίσουμε κάθε συνεχή συνάρτηση για την οποία το πεδίο τιμών της εισόδου είναι κλειστό και φραγμένο αν το δίκτυο έχει ικανό αριθμό κρυμμένων μονάδων Universal approximation property of neural networks Το ίδιο ισχύει και για σύνορα αποφάσεων, δηλ. ένα νευρωνικό δίκτυο με τρία στρώματα και συναρτήσεις ενεργοποίησης κατωφλίου ή σιγμοειδείς μπορεί να αναπαραστήσει σύνορα οποιασδήποτε μορφής με αυθαίρετη ακρίβεια (Bishop NN book sections 4.2 4.4)

Νευρωνικά Δίκτυα Παράδειγμα: NN με 2 στρώματα 3 μονάδων, σιγμοειδείς συναρτήσεις ενεργοποίησης, x ομοιόμορφο μεταξύ 1 και 1, Ν=50

Νευρωνικά Δίκτυα Συμμετρία ως προς τους συντελεστές w j Αν π.χ. οι συναρτήσεις ενεργοποίησης είναι: ha ( ) = tanh( a) j j η οποία είναι περιττή συνάρτηση (tanh( α)= tanh(α)), μπορούμε να αλλάξουμε το πρόσημο όλων των συντελεστών που συνδέονται με την είσοδο των κρυφών μονάδων και να αλλάξουμε ταυτόχρονα το πρόσημο όλων των συντελεστών που «βγαίνουν» από τις μονάδες και να πάρουμε ακριβώς την ίδια απεικόνιση εισόδου/εξόδου Για Μ κρυμμένες μονάδες 2 Μ επιλογές. Γενικά, ειά, πολλαπλές επιλογές για τους συντελεστές μπορεί να δίνουν ακριβώς την ίδια απεικόνιση

Συναρτήσεις ενεργοποίησης Συναρτήσεις ενεργοποίησης: Μια συνηθισμένη επιλογή είναι η λογιστική σιγμοειδής συνάρτηση (logistic sigmoidal) ειδικά για προβλήματα ταξινόμησης Γιατί? Είδαμε ότι μπορούμε να ερμηνεύσουμε αυτή τη συνάρτηση στο πλαίσιο ενός προβλήματος ταξινόμησης με 2 κλάσεις. Συχνά χρησιμοποιείται και η ισοδύναμη συνάρτηση: a a e e tanh( a ) = = 2 σ ( a ) 1 a a e + e η οποία μπορεί να δώσει γρηγορότερη σύγκλιση Άλλες πιθανές συναρτήσεις ενεργοποίησης: συνάρτηση κατωφλίου (threshold function) 0, a < 0 ga ( ) = 1, a 0

Συναρτήσεις ενεργοποίησης Softmax function προβλήματα ταξινόμησης Κ κλάσεων:

Εκπαίδευση δικτύου Πως παίρνουμε εκτίμηση για τις παραμέτρους του δικτύου? Ας υποθέσουμε ότι έχουμε μια συνεχή μεταβλητή στόχου t. Τότε, όπως και στην περίπτωση της γραμμικής παλινδρόμησης μπορούμε να θεωρήσουμε ότι αν έχουμε Γκαουσιανό θόρυβο, η κατανομή του t είναι: Σε αυτή την περίπτωση μπορούμε να πάρουμε μοναδιαία συνάρτηση ενεργοποίησης στην έξοδο (δηλ λ g(.)). ()) Η αντίστοιχη πιθανοφάνεια είναι: Παίρνοντας αρνητικό λογάριθμο: Μπορούμε να πάρουμε την εκτίμηση μέγιστης πιθανοφάνειας η οποία είναι ισοδύναμη με την ελαχιστοποίηση της συνάρτησης σφάλματος του αθροίσματος των τετραγώνων, δηλ:

Εκπαίδευση δικτύου Διαφορά με την απλή περίπτωση γραμμικής παλινδρόμησης δεν έχουμε κυρτή συνάρτηση κόστους (nonconvex), μπορεί να έχουμε τοπικά ελάχιστα Αφού υπολογίσουμε το w ML, η ακρίβεια του θορύβου υπολογίζεται όπως και πριν: Αν η συνάρτηση ενεργοποίησης εξόδου είναι μοναδιαία: E E yk = ak =yk tk ak Έστω τώρα ότι έχουμε πρόβλημα ταξινόμησης με 2 κλάσεις οπότε η μεταβλητή στόχου t είναι 1 (C1) ή 0 (C2). Μπορούμε να θεωρήσουμε ένα δίκτυο με συνάρτηση ενεργοποίησης εξόδου: Η έξοδος μπορεί να ερμηνευθεί ως η εκ των υστέρων πιθανότητα p(c 1 x) άρα p(c 2 x)=1 y=1 y(x,w) Η υπό συνθήκη κατανομή της μεταβλητής στόχου είναι Bernoulli:

Εκπαίδευση δικτύου Για Ν ανεξάρτητες παρατηρήσεις, η πιθανοφάνεια είναι: N tn p( t x,w) = y( x,w) {1 y( x,w)} n= 1 n n 1 t n Παίρνοντας αρνητικό λογάριθμο, η συνάρτηση σφάλματος είναι (cross entropy error function) N { } E( w) = t ln y + (1 t )ln(1 y ) n=1 n n n n Αν θέλουμε να λύσουμε Κ προβλήματα 2 κλάσεων ταυτόχρονα > Κ έξοδοι στο δίκτυο με σιγμοειδείς συναρτήσεις ενεργοποίησης. Η κατανομή του διανύσματος στόχου t είναι και η αντίστοιχη συνάρτηση σφάλματος: E Και σε αυτή την περίπτωση: =y k t k a k

Εκπαίδευση δικτύου Για πρόβλημα Κ κλάσεων έχουμε διάνυσμα στόχου t με Κ στοιχεία εκ των οποίων μόνο ένα μπορεί να ισούται με 1. Δίκτυο με Κ εξόδους κάθε έξοδος αντιστοιχεί στην πιθανότητα: K t yk( x, w) = p( tk = 1 x) = yk( x, w) k Η πιθανοφάνεια είναι: N K tnk p( T w) y = n= 1 k= 1 nk k = 1 Η συνάρτηση σφάλματος είναι (αρνητικός λογάριθμος της (1)): multi class cross entropy error function Σε αυτή την περίπτωση, οι συναρτήσεις ενεργοποίησης αντιστοιχούν στη συνάρτηση softmax: E E Ακόμη και σε αυτή την περίπτωση: =y k t k a k

Εκπαίδευση δικτύου Ανακεφαλαιώνοντας, ανάλογα με το πρόβλημα επιλέγουμε τις συναρτήσεις ενεργοποίησης εξόδου καθώς και τη συνάρτηση σφάλματος t συνεχής (regression) sum of squares, γραμμικές συναρτήσεις ενεργοποίησης Ταξινόμηση 2 κλάσεων (μια ή περισσότερες) σιγμοειδείς συναρτήσεις, cross entropy error function Ταξινόμηση Κ κλάσεων softmax functions, multi class cross entropy error

Εκπαίδευση δικτύου Ελαχιστοποίηση της συνάρτησης σφάλματος: Επαναληπτική Δεν έχουμε μοναδική λύση! Υπάρχουν ολικά και τοπικά ελάχιστα (global/local minima) δεν υπάρχει εγγύηση ότι μπορεί να βρεθεί το ολικό ελάχιστο Οι τεχνικές βελτιστοποίησης για ΝΝ βασίζονται στη μέθοδο καθοδικής κλίσης Μπορούμε να έχουμε εκπαίδευση σε παρτίδες (batch) ήανάδείγμα(single sample/stochastic/ sequential gradient descent) Πως μπορεί να υλοποιηθεί η ελαχιστοποίηση σε δίκτυα πολλαπλών στρωμάτων?? Backpropagation

Εκπαίδευση δικτύου Error backpropagation Error backpropagation algorithm: Πρώτη αναφορά το 1969, όμως εκτεταμένη εφαρμογή μετά το 1986 (Rumelhart, Hinton, Williams) Ο όρος προέρχεται από το ότι έχουμε διάδοση «σφαλμάτων» προς τα πίσω σε ένα δίκτυο σύμφωνα με τον αλγόριθμο Επαναληπτική διαδικασία με τρία βασικά διακριτά στάδια σε κάθε βήμα 1. Οι τιμές όλων των zk, yk του δικτύου υπολογίζονται από τις «τρέχουσες» τιμές των παραμέτρων 2. Οι παράγωγοι της συνάρτησης σφάλματος ως προς τα βάρη w υπολογίζονται με βάση τις «τρέχουσες» τιμές των τελευταίων 3. Οι παράγωγοι αυτές χρησιμοποιούνται για να ενημερωθούν οι τιμές των βαρών w (π.χ. gradient descent) Όπως θα δούμε η «διάδοση» των σφαλμάτων γίνεται στο στάδιο 1

Εκπαίδευση δικτύου Error backpropagation Στη γενική περίπτωση, έστω ότι έχουμε ένα δίκτυο πρόσω τροφοδότησης με (οποιεσδήποτε) συναρτήσεις ενεργοποίησης οι οποίες είναι διαφορίσιμες και με συνάρτηση σφάλματος Ε(w) μπορεί να είναι π.χ. κάποια από αυτές που ήδη είδαμε Ο αλγόριθμος χρησιμοποιεί επανειλημμένα τον κανόνα αλυσίδας (chain rule) f ( nw ( )) f nw ( ) = w n w Σε μια γενική αρχιτεκτονική πρόσω τροφοδότησης, κάθε μονάδα υπολογίζει το γραμμικό συνδυασμό: και στη συνέχεια τον (στη γενική περίπτωση μη γραμμικό) μετασχηματισμό h της παραπάνω: Σημ: αν z 0 =1 περιλαμβάνονται και biases

Error backpropagation Ξεκινάμε από την έξοδο του δικτύου. Η συνάρτηση σφάλματος είναι: Θέλουμε να υπολογίσουμε την παράγωγο του E n ως προς τον συντελεστή w ji. Από τον κανόνα αλυσίδας: (1) Ορίζοντας το σφάλμα δ j ως και επειδή η (1) γράφεται: Για το στρώμα εξόδου όμως, είδαμε ότι και στις 3 περιπτώσεις συναρτήσεων κόστους (sum ofsquares, cosse cross entropy, opy, multi class ut cassentropy) που εξετάσαμε έχουμε:

Error backpropagation Πηγαίνουμε ένα στρώμα πίσω. Το σφάλμα για τις κρυμμένες μονάδες είναι: Το σφάλμα εξαρτάται μόνο τις μονάδες του επόμενου στρώματος με τις οποίες υπάρχει σύνδεση. Τελικά: ak a z k j δ j = δk = δk = h'( aj) δkwkj a z a k j k j j k αφού και Πηγαίνοντας προς τα πίσω με τον ίδιο τρόπο ηγαί ο τας προς τα πίσω με το ίδιο τρόπο μπορούμε να φτάσουμε μέχρι το στρώμα εισόδου και να υπολογίσουμε επαναληπτικά όλους τους συντελεστές

Error backpropagation Ο αλγόριθμος λοιπόν λειτουργεί ως εξής: 1. Αρχικοποίηση w (συνήθως τυχαίοι αριθμοί κοντά στο μηδέν) 2. Για οποιοδήποτε διάνυσμα εκπαίδευσης x n πηγαίνουμε προς τα μπροστά και υπολογίζουμε όλα τα z και a του δικτύου: Βήμα 2 3. Υπολογίζουμε τα σφάλματα εξόδου από την: 4. Πηγαίνουμε προς τα πίσω και υπολογίζουμε τα σφάλματα δ j = h '( aj ) δkwkj k 5. Υπολογίζουμε τις παραγώγους και ενημερώνουμε τις τιμές των συντελεστών Βήμα 4 w( k+ 1) = w( k) n( k) J( w) Σημ: Οι συναρτήσεις ενεργοποίησης μπορεί να είναι διαφορετικές σε κάθε στρώμα/μονάδα

Error backpropagation Παράδειγμα: Δίκτυο 2 στρωμάτων, τετραγωνικό σφάλμα, μοναδιαίες συναρτήσεις ενεργοποίησης στην έξοδο (y k =α k ) και συναρτήσεις ενεργοποίησης για τις κρυμμένες μονάδες: Βήμα 2 για την οποία ισχύει: Συνάρτηση σφάλματος: 1. Αρχικοποίηση 2. Forward dpopagato propagation

Error backpropagation 3. Σφάλμα εξόδου 4. Backpropagation για τις κρυμμένες μονάδες τα σφάλματα είναι: 5. Υπολογισμός παραγώγων και ενημέρωση Βήμα 4