ΕΠΛ 604 Τεχνητή Νοηµοσύνη ***************** Κώστας Νεοκλέους, PhD Τηλέφωνο Γραφείου: 2240639 Email: costas@ucyaccy ΤΕΧΝΗΤΑ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Adaline, Madaline, MLP Αλγόριθµος Ελαχίστων Μέσων Τετραγώνων Least Mean Square Algorithm (LMS) Αλγόριθµος Backpropagation
Γενικά τη σειρά αυτή θα δούµε µερικές από τις πιο βασικές αρχιτεκτονικές (ή τοπολογίες) τεχνητών νευρωνικών δικτύων που µπορούν να χρησιµοποιηθούν για τη δηµιουργία άλλων, πιο σύνθετων δοµών Αυτές είναι τα Adaline, Madaline, Perceptrons και σταδιακά τα MLP Τέτοιες αρχιτεκτονικές έχουν πολλές εφαρµογές όπως θα δούµε στη συνέχεια ADALINE Είναι µια βασική δοµή ενός γραµµικού νευρώνα Είναι προσαρµοζόµενος (adaptive) γραµµικός συνδυαστής (simple adaptive linear combiner) Οι πληροφορίες εισόδου και εξόδου είναι συνήθως σε ψηφιακή (δυαδική) µορφή
οµήενός απλού Adaline τοιχεία εισόδου υναπτικά Βάρη x (κ) w (κ) x 2 (κ) w 2 (κ) u N = i= xw i i όπου, x R Nx x N (κ) w N (κ) w R Nx x w u = x T w u R ADALINE Το απλό µοντέλο Adaline µοιάζει µε το Finite Impulse Response Filter FIR που χρησιµοποιείται στη ψηφιακή επεξεργασία σήµατος Μετά από κατάλληλη µάθηση που γίνεται συνήθως µε αλγόριθµο LMS που θα δούµε αργότερα το adaline µπορεί να χρησιµοποιηθεί για να αναγνωρίζει τα αρχικά σήµατα έστω και αν αυτά έχουν αλλοιωθεί ελαφρά
ΒΑΙΚΑ ΤΟΙΧΕΙΑ ΓΙΑ ΦΙΛΤΡΑ Παράδειγµα εφαρµογής φίλτρου που προσαρµόστηκε µε µάθηση LMS: Το σήµα εισόδου Η κατηγοριοποίηση ΦΙΛΤΡΟ Καλό φιλτράρισµα ΦΙΛΤΡΟ 05 Ικανοποιητικό φιλτράρισµα ΦΙΛΤΡΟ 0 Απορριπτέο φιλτράρισµα κοκ ΒΑΙΚΑ ΤΟΙΧΕΙΑ ΓΙΑ ΦΙΛΤΡΑ Τα φίλτρα µπορεί να είναι υλισµικά (physical hardware) ή υπολογιστικά (computer software) Οι εργασίες που συνήθως κάνουν είναι: Φιλτράρισµα (filtering) υπό την έννοια της απάλειψης θορύβου (noise) και άλλων µη-επιθυµητών παρεµβολών Βελτίωση (smoothening) που γίνεται συνήθως όταν έχουµε καλή γνώση των σχετικών διαδικασιών Χρονική πρόβλεψη (prediction)
ΜΕΡΙΚΑ ΠΑΡΑ ΕΙΓΜΑΤΑ ΕΦΑΡΜΟΓΗ ΦΙΛΤΡΩΝ Τα φίλτρα µπορούν να κατηγοριοποιηθούν ως γραµµικά ή µη-γραµµικά ε συστήµατα εντοπισµού στόχων µε ραντάρ (pulse radar tracking systems), το φίλτρο θα µπορούσε να κάνει, καθάρισµα σήµατος (filtering), βελτίωση (smoothening) και πρόγνωση (prediction) 2 ιαχωρισµός ηλεκτροκαρδιογραφήµατος (ΗΚΓ, ΕCG) εγκύου από το ΗΚΓ του εµβρύου ΠαράδειγµαΕΚΓ Παράδειγµα 3: Καθαρισµός ECG σήµατος από παρεµβολές Η/Μ πεδίου 50 Hz Ηλεκτροκαρδιογράφος Ηλεκτροκαρδιογράφηµα µε παρεµβολές από το Η/Μ πεδίο των 50 Ηz
ΠαράδειγµαΕΚΓ ECG σήµα µετά τον καθαρισµό του από κατάλληλο φίλτρο: ΠαράδειγµαΕΚΓ Λεπτοµέρεια ECG σήµατος Το αποτέλεσµα επετεύχθη µε µόνο δύο βάρη (w και w 2 ) και µε τη χρήση αλγόριθµου LMS
Adaline Για επεξεργασία µε ψηφιακά σήµατα, συχνά χρησιµοποιούµε στην έξοδο περιοριστή (ή κβαντιστή, ή ψαλιδιστή, ή στοιχείο κατωφλίου) (threshold, quantizer, signum, hard limiter, Heavyside,) όπως πιο κάτω: x (κ) w (κ) Κβαντιστής x 2 (κ) w 2 (κ) u N = i= xw i i y = + ή - x N (κ) w N (κ) Adaline Γενικά το Adaline - όπως και τα περισσότερα µονοκατευθυντικά τεχνητά νευρωνικά δίκτυα (feedforward neural networks) πραγµατοποιούν µιαν αντιστοίχηση (mapping) από N στοιχεία εισόδου σε στοιχείο εξόδου R Ν R Μετά που θα µάθει τα παραδείγµατα που το δόθηκαν, θα πρέπει να ελεγχθεί µε άγνωστες περιπτώσεις Εάν διακριβώνει σωστά µε ικανοποιητική πιθανότητα, τότε λέµε ότι έµαθε να γενικεύει (generalization)
Λίγη ξεκούραση! Adalines σαν λογικές πύλες Τα Adalines µπορούν να χρησιµοποιηθούν σαν λογικές πύλες AND, OR, MAJ, NOT Μαθηµατικά: N y x AND( x x x) = sgn( ( i) + - N ) =, 2,, N = i= + Εάν όλα τα x i = + - Εάν όχι N = + = OR( ) = i= y sgn( ( xi) N - ) x, x2,, xn + Εάν µερικά x i = + - Εάν όχι
Adalines σαν λογικές πύλες N = sgn( ) = ) = i= y xi MAJ( x, x2,, xn + Εάν τα πλείστα x i = + - Εάν όχι y = s g n( x) = NOT( x) = + Εάν x =- - Εάν x =+ Adalines σαν λογικές πύλες Οι πύλες AND, OR, MAJ δείχνονται γραφικά µε adalines πιο κάτω: x 0 (κ)= x (κ) - Ν AND x 2 (κ) y = πύλη AND x N (κ)
Adalines σαν λογικές πύλες x 0 (κ)= x (κ) Ν - OR x 2 (κ) y = πύλη OR x N (κ) Adalines σαν λογικές πύλες x 0 (κ)= x (κ) 0 MAJ x 2 (κ) y = πύλη MAJ x N (κ)
Adaline µε µη-γραµµικά στοιχεία εισόδου (Polynomial Discriminant Function Specht, 967) x x x 2 w 3 [ ] 2 w X w 2 w 3 Περιοριστής y w 4 x 2 [ ] 2 w 5 Χρησιµοποιήθηκε για ανάλυση δεδοµένων ECG MADALINE τις περιπτώσεις που τα σήµατα εισόδου δεν µπορούν να διαχωριστούν γραµµικά, τα απλά adaline αποτυγχάνουν να τα διαχωρίσουν ε τέτοιες περιπτώσεις θα µπορούσαµε να χρησιµοποιήσουµε MADALINES (από το Multiple ADALINE) όπου πολλά adalines συνδέονται σε σειρά
MADALINE x y = sgn(u ) x 2 y 2 = sgn(u 2 ) x N Όπου για ευκρίνεια τα βάρη δεν δείχνονται PERCEPTRON Τo απλό µονοεπίπεδο (single-layer) PERCEPTRON (Rosenblatt, 950) είχε εξαιρετικά µεγάλη επίδραση στην ανάπτυξη των τεχνητών νευρωνικών δικτύων Μοιάζει πολύ µε το Adaline που είδαµε Ο Rosenblatt χρησιµοποίησε το απλό µοντέλο νευρώνων των McCuloch - Pitts (947)
Απλό µονοεπίπεδο PERCEPTRON Ο Rosenblatt χρησιµοποίησε το µοντέλο που ονόµασε Perceptron, στη προσπάθεια του να µελετήσει τη λειτουργία του οφθαλµού Απλό µονοεπίπεδο PERCEPTRON Τo απλό µονοεπίπεδο PERCEPTRON έχει πολλές οµοιότητες µε αυτό που ονοµάζεται Maximum- likelihood Gaussian Classifier Παρόλο που ήταν µια νέα νέα και πρωτοποριακή µοντελοποίηση νευρωνικού δικτύου, υποβλήθηκε σε πολλή κριτική, κυρίως από τους Minsky και Papert* γιατί, µεταξύ άλλων, δεν µπορούσε να επιλύσει το κλασσικό πρόβληµα ΧOR Φαίνεται ότι ο κάπως υπερβολικός όρος Perceptron, προδιάθεσε µερικούς επιστήµονες αρνητικά ήµερα, το ενδιαφέρον εστιάζεται στα πολυεπίπεδα perceptrons που θα δούµε λίγο µετά * M Minsky and S A Papert Perceptrons: An Introduction to Computational Geometry MIT Press, Cambridge, MA, expanded edition, 988/969
Πολυεπίπεδα PERCEPTRONS MultiLayer Perceptrons (MLP) Τυπικά ένα τέτοιο δίκτυο αποτελείται από: Ένα σύνολο αισθητήρων ή πληροφοριών εισόδου (πηγαίοι κόµβοι), που αποτελούν το επίπεδο εισόδου (input layer) Ένα ή περισσότερα κρυµµένα επίπεδα (hidden layers) υπολογιστικών κόµβων και ένα επίπεδο υπολογιστικών κόµβων εξόδου Πολυεπίπεδα PERCEPTRONS κρυµµένα επίπεδα Ε Ι Ο Ο Ε Ξ Ο Ο
Πολυεπίπεδα PERCEPTRONS - MLP Τα MLP εφαρµόστηκαν µε επιτυχία στην επίλυση ποικίλων και δύσκολων προβληµάτων, όπως δείχνεται παρακάτω για ηλεκτρονική µύτη
Μάθηση στα ADALINES MADALINES PERCEPTRONS και MLP Μάθηση στο απλό Adaline x (κ) x 2 (κ) w (κ) w 2 (κ) u(κ N ) = xw i i i= Επιθυµητή έξοδος - d(κ) + ύγκριση φάλµα e(κ) = d(κ) u(κ) x N (κ) w N (κ) Οαλγόριθµος µάθησης καθορίζει πως να προσαρµοστούν τα βάρη ώστε το σφάλµα να γίνει ικανοποιητικά µικρό Αλγόριθµος µάθησης
Αλγόριθµος Ελαχίστων Μέσων Τετραγώνων (ΕΜΤ, LMS) Τα Adalines συνήθως εκπαιδεύονται µε τον αλγόριθµο των Ελαχίστων Μέσων Τετραγώνων, που είναι επίσης γνωστός ως Widrow-Hoff ή Κανόνας έλτα (Delta Rule) ή Error Correction Rule Είναι ένας απλός κανόνας Bernard Widrow Εφαρµόζεται συνήθως σε γραµµικά στοιχεία Θα εξηγηθεί για ένα απλό νευρώνα Αλγόριθµος Ελαχίστων Μέσων Τετραγώνων Η µέθοδος είναι σηµαντική γιατί: Είναι προϊόν πρωτοποριακής εργασίας που έγινε στο Πανεπιστήµιο Stanford από τους Widrow και Hoff τη δεκαετία του 960 Βοηθά στη κατανόηση της θεωρίας των γραµµικών προσαρµοζόµενων φίλτρων που χρησιµοποιούν απλό γραµµικό νευρώνα Βοηθά επίσης στη θεωρητική ανάπτυξη των µη-γραµµικών πολυεπίπεδων perceptron (Multi Layer Perceptrons, MLP)
Αλγόριθµος Ελαχίστων Μέσων Τετραγώνων Οι Widrow και Hoff προσπάθησαν να βρουν µια διαδικασία που να προσαρµόζει τα συναπτικά βάρη w έτσι ώστε ο νευρώνας να αναγνωρίζει (ξεχωρίζει, καθορίζει) κάποια πρότυπα εισόδου, µε όσο το δυνατό λιγότερο γενικό σφάλµα Βασίστηκαν στην εργασία του Rosenblatt που έγινε στα Perceptrons αν µέτρο αποδοτικότητας (performance), χρησιµοποίησαν το κριτήριο Ελάχιστου Μέσου Τετραγωνικού φάλµατος (LMS) Αλγόριθµος Ελαχίστων Μέσων Τετραγώνων O αλγόριθµος LMS έχει πολλές εφαρµογές όπως σε: Προσαρµοζόµενα κυκλώµατα (ήταν η πρώτη εφαρµογή που έγινε) [Adaptive Switching Circuits (Widrow και Hoff, 960)] Προσαρµοζόµενες τηλεφωνικές γραµµές για γρήγορη µεταφορά πληροφοριών [Adaptive equalization of telephone channels (Lucky 965, 966)] Προσαρµοζόµενες αντένες για τη µείωση των παρεµβολών [Adaptive antennas (Widrow et al, 967)] Προσαρµοζόµενη ακύρωση ηχούς που έρχεται από µακρινές αποστάσεις [Adaptive echo cancellation (Sondhi και Berkley, 980)] Προσαρµοζόµενη κωδικοποίηση οµιλίας [Adaptive differential pulse code modulation (Jayant και Noll, 984)]
Ανάπτυξη Αλγόριθµου Ελαχίστων Μέσων Τετραγώνων Έστω x = [x, x 2,, x N ] T τα σήµατα εισόδου που παράγονται από κάποιους αισθητήρες Θέση αισθητήρα x x 2 w w 2 x w N T y = xw = w x i= i i Αθροιστής (Adder) y Ένταση φωτός Tα σήµατα εφαρµόζονται σε αντίστοιχο σύνολο βαρών: w = [ w,w 2,, w N ] T x N Αισθητήρες (Sensors) w N Βάρη Weights (multipliers) Ανάπτυξη Αλγόριθµου Ελαχίστων Μέσων Τετραγώνων όπου, y είναι η έξοδος (εξαρτηµένη µεταβλητή) του δικτύου d είναι η επιθυµητή έξοδος (desired output) [είναι επίσης γνωστή ως target ή observation] Το ζητούµενο είναι να υπολογιστούν οι βέλτιστες τιµές του w, έτσι ώστε να ελαχιστοποιείται κάποιο κατάλληλο συνολικό σφάλµα, J Αυτό είναι συνήθως µια συνάρτηση του σφάλµατος e όπου e d y Όταν το συνολικό σφάλµα εκφράζεται ως µέσο τετραγωνικό, η λύση θα µπορούσε να βρεθεί από ένα σύστηµα εξισώσεων που είναι γνωστές ως Wiener-Hopf Την απόδειξη αυτών των εξισώσεων θα δούµε αµέσως µετά
Ανάπτυξη Εξισώσεων Wiener-Hopf µε χρήση Αλγόριθµου Ελαχίστων Μέσων Τετραγώνων H σχέση εισόδου-εξόδου είναι: N T y = xw = w x (4) i= Το σήµα σφάλµατος για ένα πρότυπο µάθησης και για ένα νευρώνα εξόδου είναι: e = d y i i (42) Αλγόριθµος Ελαχίστων Μέσων Τετραγώνων Ένα κατάλληλο µέτρο απόδοσης (performance criterion ή measure), ή συνάρτηση κόστους (cost function) J, για όλα τα πρότυπα, είναι το µέσο τετραγωνικό σφάλµα (mean square error - MSE), που ορίζεται από τη σχέση: J = E e E d y E d wx 2 = = 2 2 2 ( 2 ) ( N 2 i i) i= Όπου Ε είναι ο τελεστής της «αναµενόµενης τιµής» ή στατιστική µέση τιµή (expectation, mean, ensemble average) (43)
Ορισµός: Ορισµός και ιδιότητες του Ε[] Για τυχαία συνεχή µεταβλητή x, που παρουσιάζεται µε πιθανότητα P x : + Ex [ ] = x xpx ( xdx ) (44) Νοουµένου βέβαια ότι το ολοκλήρωµα έχει απόλυτη σύγκλιση Για τυχαία διακριτή µεταβλητή, x: E[ x] = x xp{x i = x i } = xp i i i i (45) Ορισµός και ιδιότητες του Ε[] Χρήσιµες ιδιότητες του Ε[] : Εάν c και c 2 είναι σταθερές που παίρνουν πραγµατικές τιµές, Ε[c x + c 2 ]=c Ε[x] + c 2 Ε[x x 2 x 3 ]=Ε[x ] Ε[x 2 ] Ε[x 3 ] (46) (47) Ε[x] Ε[ x ] (48)
Γραµµικό πρόβληµα βέλτιστου φιλτραρίσµατος Το πρόβληµα αυτό µπορεί να θεωρηθεί και ως γραµµικό πρόβληµα βέλτιστου φιλτραρίσµατος (linear optimum filtering problem) που συνοπτικά ορίζεται ως εξής: Ζητείται να καθοριστεί το βέλτιστο σύνολο βαρών w *,w* 2,, w* Ν, για το οποίο το µέσο τετραγωνικό λάθος J είναι ελάχιστο Εξισώσεις Wiener-Hopf Λύση: (γνωστή σαν φίλτρο Wiener) Από την (43) και τις ιδιότητες του τελεστή E[ ]: N N N 2 J = E[ d ] E i i i j i j 2 wxd + E ww x x i= 2 j= i= (49) όπου Ν είναι ο αριθµός των στοιχείων εισόδου
Εξισώσεις Wiener-Hopf Επειδή ο τελεστής Ε[] είναι γραµµικός, µπορούµε να αλλάξουµε τη σειρά του Ε µε το, οπόταν η (49) γίνεται: J = Ed wexd + wwexx 2 2 N N N 2 [ ] i [ i ] i j [ i j] i= j= i= ήσε διανυσµατική µορφή: όπου τα συναπτικά βάρη w θεωρούνται σταθερά, και βγαίνουν έξω από τα Ε[] (40) 2 T T T J = E[ d ] E[ x d] w+ w E[ xx ] w (4) 2 2 Εξισώσεις Wiener-Hopf Για ευκολία στη χρήση, και χρησιµοποιώντας τους γνωστούς στατιστικούς ορισµούς: E[d 2 ] r d = Μέση τετραγωνική τιµή Τη συνάρτηση ετεροσυσχέτισης (cross-correlation): E[x i d] R xd (i) όπου i =, 2,,Ν (42) (43) και τη συνάρτηση αυτοσυσχέτισης (auto-correlation): ( ) R i, j E[ x, x ] i, j =, 2,, N xx i j (44) Η (40) γράφεται:
Εξισώσεις Wiener-Hopf N N N J = rd wr i xd() i + wwr i j xx(, i j) 2 i= 2 j= i= (45) Ηεξίσωση αυτή είναι θετική για όλα τα βάρη, και εποµένως έχει ολικό ελάχιστο (global minimum) Για τη περίπτωση δύο βαρών µόνο, η επιφάνεια δείχνεται παρακάτω Επιφάνεια σφάλµατος για Adaline
Επιφάνεια σφάλµατος Γενικότερα, η σχεδίαση του κόστους J σαν συνάρτηση δύο παραµέτρων w, w2 δείχνει µιαν επιφάνεια σφάλµατος, µε πολλά ελάχιστα J w w2 Επιφάνεια σφάλµατος Ανάλογα, η σχεδίαση κόστους J σε πολυδιάστατο χώρο είναι µια νοητή επιφάνεια σφάλµατος το γραµµικό adaline, η επιφάνεια έχει κοίλο σχήµα (convex), µε πολύ καλά καθορισµένα τοπικά ελάχιστα και ολικό ελάχιστο (global minimum) Αυτό το σηµείο, είναι το βέλτιστο για το φίλτρο, µε την έννοια ότι το µέσο τετραγωνικό λάθος δίνει την ελάχιστη τιµή στο J 25
Ελάχιστο της επιφάνειας σφάλµατος Όπως για να βρούµε το ελάχιστο µιας µονοδιάστατης συνάρτησης, εξισώνουµε τη παράγωγο µε µηδέν και λύνουµε την εξίσωση, έτσι και εδώ, για το προσδιορισµό του βέλτιστου, διαφορίζουµε τη συνάρτηση κόστους J ως προς τα βάρη w i και εξισώνουµε µε µηδέν Η µερική παράγωγος του J ως προς w i, είναι η κλίση (gradient) της επιφάνειας σφάλµατος ως προς το συγκεκριµένο w i Παραγωγίζοντας την (45) ως προς w i και εξισώνοντας µε µηδέν, έχουµε: N J w J i = = R () i + w R (, i j ) = 0 (46) xd j xx w i j=
Εξισώσεις Wiener-Hopf Έτσι παίρνουµε τις εξισώσεις Wiener-Hoff για βέλτιστο φίλτρο τύπου Adaline: N j= wr ( i, j) = R ( i) i=, 2,, N * j xx dx (47) Όπου το w * i δηλώνει τη βέλτιστη τιµή του w i Tο νευρωνικό δίκτυο που έχει βάρη που ικανοποιούν τις πιο πάνω εξισώσεις, είναι γνωστό ως φίλτρο Wiener Εφαρµογή φίλτρου Wiener Lena µε θόρυβο Lena µετά από φίλτρο Wiener
Λύση εξισώσεων Wiener-Hopf υνήθως δεν είναι εύκολο (ή είναι αδύνατο) να βρεθούν αναλυτικές λύσεις του συστήµατος Wiener-Hopf Χρειάζεται να βρεθεί το αντίστροφο ενός µεγάλου πίνακα [ΝxΝ], που είναι δύσκολη και χρονοβόρος εργασία Μπορούν όµως να να βρεθούν µε διερεύνηση (search), ψάχνοντας στο χώρο της επιφάνειας σφάλµατος, εφαρµόζοντας τη µέθοδο ταχυτέρας καθόδου που είδαµε προηγουµένως Η µέθοδος που προκύπτει λέγεται Μέθοδος Ελαχίστων Τετραγώνων (LMS) ή Κανόνας ιορθώµατος φάλµατος (Error Correction Learning), ή Κανόνας έλτα (Delta Rule) (Widrow Hoff, 960) Μέθοδος ταχυτέρας καθόδου στη λύση των εξισώσεων Wiener-Hoff Χρησιµοποιώντας τη µέθοδο όπως εξηγήθηκε προηγουµένως, έχουµε: w i = - η wi J i =,, N όπου η παράµετρος η είναι γνωστή ως Ρυθµός Μάθησης (Learning Rate ή Learning Coefficient) ήσε διαφορική µορφή για τη περίπτωση συνεχούς χρονικής µεταβολής των βαρών: dw dt = -η wi J (48) (49)
Μέθοδος ταχυτέρας καθόδου στη λύση των εξισώσεων Wiener-Hoff Χρησιµοποιώντας τον δείκτη κ, να αναφέρεται στον αριθµό επανάληψης (ή δοκιµής, ή προσπάθειας), ο συνδυασµός των εξισώσεων (45) και (48) δίνουν: N w i [κ+] = w i [κ] + η{r xd (i) - w [ κ j ] Rxx( i, j) } i =,, Ν (420) j= Θα µπορούσαµε να καταλήξουµε σε ανάλογα συµπεράσµατα χρησιµοποιώντας ένα συνολικό άθροισµα των σφαλµάτων αντί της αναµενόµενης ή µέσης τιµής J Μέθοδος ταχυτέρας καθόδου στη λύση των εξισώσεων Wiener-Hoff ε τέτοια περίπτωση το κόστος που προσπαθούµε να ελαχιστοποιήσουµε συµβολίζεται συνήθως µε Ε (από το Energy) ή C, και δίνεται όπως πιο κάτω: E ολικό P = ei 2 i= 2 (42) τη βιβλιογραφία θα το βρείτε επίσης µε το όνοµα SSE από το Sum Square Error
Μέθοδος ταχυτέρας καθόδου στη λύση των εξισώσεων Wiener-Hoff Ο συνδυασµός της έκφρασης του κόστους ως συνάρτηση των µέσων τετραγώνων του σφάλµατος, και της µεθόδου της ταχυτέρας καθόδου, είναι γνωστός ως: Αλγόριθµος Ελαχίστου Μέσου Τετραγώνου ή Κανόνας έλτα ή Κανόνας Widrow-Hoff Επειδή δεν γνωρίζουµε τη τελική µορφή της επιφάνειας σφάλµατος, σε πρακτική αλγοριθµική µορφή χρησιµοποιούµε τα στιγµιαία βάρη και τη στιγµιαία επιφάνεια Αλγόριθµος Ελαχίστου Μέσου Τετραγώνου Least Mean Square Algorithm (LMS) Αρχικοποίηση (initialization): wˆ [] = 0 για i =,, N i (422) Το καπελάκι υποδηλώνει καθ υπολογισµό βάρη, για τη στιγµιαία επιφάνεια Φιλτράρισµα (filtering): Για χρόνους κ =, 2, Υπολόγισε: N y[ κ] = x[ ] ˆ i κ wi[ κ] i= και e[κ] = d[κ] y[κ] (423) (424)
Αλγόριθµος Ελαχίστου Μέσου Τετραγώνου Least Mean Square Algorithm (LMS) Αναθεώρηση βαρών w (weight updating): w ˆ i[ κ + ] = wi[ κ] + ηe[ κ] xi[ κ ] (424) για i =,, Ν Για την αρχικοποίηση, συνήθως βάζουµε τα βάρη να έχουν αρχικές τιµές ίσες µε µηδέν Θα µπορούσαµε όµως να χρησιµοποιήσουµε άλλες τιµές Αλγόριθµος Ελαχίστου Μέσου Τετραγώνου Least Mean Square Algorithm (LMS) Όπως είπαµε, µεγάλες τιµές του η θα µπορούσαν να οδηγήσουν σε αστάθειες, ενώ πολύ µικρές θα έκαναν το ρυθµό µάθησης πολύ αργό ηµαντική θεωρητική εργασία που έγινε, δίνει καθοδήγηση για µεταβαλλόµενο η όπως δείχνετε στον παρακάτω αλγόριθµο
Αλγόριθµος Ελαχίστου Μέσου Τετραγώνου µε µεταβαλλόµενο ρυθµό µάθησης, η Βήµα Για χρόνο κ = ώσε αρχικά βάρη w[] και διάλεξε τιµές για το η ο και το τ Βήµα 2 Υπολόγισε το ρυθµό µάθησης από: o η[ κ ] = η κ + τ Βήµα 3 Βρές το σφάλµα: e[ κ] = d( κ) - wˆ i[ κ] xi[ κ] N i= (425) (425) Αλγόριθµος Ελαχίστου Μέσου Τετραγώνου µε µεταβαλλόµενο ρυθµό µάθησης, η Βήµα 4 Αναθεώρησε τα βάρη: w ˆ i[ κ + ] = wi[ κ] + η[ κ] e[ κ] xi[ κ] (424) για i =,, Ν Βήµα 5 Έλεγχος για σύγκλιση: Εάν ναι, σταµάτα Εάν όχι, θέσε: κ κ + Πίσω στο βήµα 2
Μάθηση στα MADALINES Τα MADALINES µπορούν να εκπαιδευτούν µε τον κανόνα LMS ή από άλλους κατάλληλους που θα δούµε αργότερα Λίγη ξεκούραση!
Μάθηση σε Πολυεπίπεδα PERCEPTRONS υνήθως εκπαιδεύονται µε επιβλεπόµενο τρόπο (supervised learning), χρησιµοποιώντας τον πολύ δηµοφιλή αλγόριθµο ανατροφοδότησης σφάλµατος (Α) (Error Backpropagation -BP)που είναι επίσης γνωστός ως Γενικευµένος Κανόνας έλτα (Generalized Delta Rule) Ο αλγόριθµος βασίζεται σε κανόνα µάθησης που χρησιµοποιεί το σφάλµα στην έξοδο για να οδηγήσει το δίκτυο σε σταδιακά καλύτερη απόδοση (Error Correction Learning Rule) Μάθηση σε Μη-Γραµµικά PERCEPTRONS κατωφλίου Η µάθηση που συνήθως χρησιµοποιείται είναι βασισµένη σε µέσο τετραγωνικό σφάλµα (MSE) και σε κανόνα ταχυτέρας καθόδου Οαρχικός αλγόριθµος όπως προτάθηκε από τον Rosenblatt ήταν: w ij [κ+] = w ij [κ] + ηe j [κ]x i [κ] (425) και e j [κ] = d j [κ] y j [κ] = d j [κ] sgn(u j [κ])
Μάθηση σε Μη-Γραµµικά PERCEPTRONS τη περίπτωση που η συνάρτηση δραστηριοποίησης είναι σιγµοειδής, η εφαρµογή του πιο πάνω κανόνα οδηγά στον κλασσικό αλγόριθµο Backpropagation (BP) για µονοεπίπεδο, µη-γραµµικό perceptron τη περίπτωση που η συνάρτηση δραστηριοποίησης είναι για παράδειγµα η: yj = f ( uj) = tanh( γuj) (426) Οαλγόριθµος µάθησης γίνετε: w ij [κ+] = w ij [κ] + ηe j [κ]{- (y j [κ]) 2 }x i [κ] Που είναι ο BP για µονοεπίπεδο perceptron (427) MLP και BP Βασικά η διαδικασία της Α αποτελείται από δυο περάσµατα διαµέσου των επιπέδων του δικτύου: Ένα πέρασµα προς τα εµπρός (ενεργοποίηση) (forward pass) και ένα πέρασµα προς τα πίσω (ανάδραση) (backward pass) την την ενεργοποίηση τα βάρη στο δίκτυο διατηρούνται σταθερά Κατά τη διάρκεια της ανατροφοδότησης τα βάρη προσαρµόζονται σύµφωνα µε τον κανόνα διόρθωσης σφάλµατος, ώστε σταδιακά να µειωθεί το συνολικό σφάλµα
MLP και BP Ηπαρουσία της µη-γραµµικότητας είναι σηµαντική, διότι διαφορετικά η σχέση εισόδου-εξόδου θα µπορούσε να απλοποιηθεί σε αυτή ενός µονοεπίπεδου perceptron Η χρήση της λογιστικής συνάρτησης στη δραστηριοποίηση έχει και βιολογικά κίνητρα, µιας και προσοµοιάζει την επίµονη φάση (refractory phase) των πραγµατικών νευρώνων ηµειώνεται επίσης το σηµαντικό χαρακτηριστικό των πραγµατικών βιολογικών νευρώνων, ότι δεν έχουν ψηφιακές (δυαδικές) εξόδους, αλλά η έξοδος τους έχει συνεχώς κάποια τιµή (συρµός από ώσεις) MLP και BP Η κατανεµηµένη µορφή της µη-γραµµικότητας και η υψηλή διασύνδεση του δικτύου κάνουν την θεωρητική ανάλυση ενός MLP εξαιρετικά δύσκολη Επίσης, η χρήση κρυµµένων νευρώνων κάνει την διαδικασία µάθησης δύσκολη, και δυσνόητη O αλγόριθµος BP είναι ένας γρήγορος τρόπος για τη µάθηση τέτοιων νευρωνικών δικτύων, όπου βοηθά στη κατανοµή της αναγκαίας διόρθωσης στους κρυµµένους νευρώνες, ώστε το συνολικό σφάλµα να µειώνεται σταδιακά
MLP και BP O κλασσικός αλγόριθµος BP εφαρµόζεται σε πολυεπίπεδα δίκτυα που έχουν ένα ή περισσότερα κρυµµένα επίπεδα, που είναι πλήρως συνδεδεµένα Οι υπολογισµοί από την είσοδο προς την έξοδο, λέγονται συνήθως σήµατα ενεργοποίησης ή συναρτησιακά σήµατα (function signals), ή σήµατα δραστηριοποίησης, ενώ τα σήµατα που στέλλονται πίσω για να διορθώσουν τα βάρη λέγονται σήµατα διόρθωσης βαρών (error correction signals) ή ανατροφοδότησης (feedback signals) Έρευνες έδειξαν ότι δύο κρυµµένα επίπεδα µε λογιστικήσιγµοειδή δραστηριοποίηση, είναι αρκετό για να επιλύσει τα πλείστα µη- γραµµικά προβλήµατα απεικόνισης εισόδουεξόδου (Kolmogorov, White, Hecht- Nielsen) Ηπρώτη εργασία έγινε από τον Paul Werbos* το 974 στο διδακτορικό του Ακολούθως ξανα-ανακαλύφθηκε από τον Parker το 982, και από τον LeCun σε παρόµοια µορφή το 985 Ο όρος BACKPROPAGATION καθιερώθηκε µε τη σηµαντικότατη εργασία των Rumelhart, Hinton και McClelland** το 986 ΟΑλγόριθµος BP Paul Werbos *Werbos P (974) Beyond regression: New tools for prediction and analysis in the behavioral sciences Ph D Dissertation Harvard University ** Rumelhart D E, Hinton G E and McClelland J L (986) In McClelland J L, Rumelhart D E and the PDP Research Group (Eds) Parallel Dis-tributed Processing: Explorations in the Microstructure of Cognition Vol Foundations Cambridge, MA: MIT Press
ΟΑλγόριθµος BP Ουσιαστικά ο αλγόριθµος ψάχνει και βρίσκει ένα καλό σύνολο από βάρη w ώστε το δίκτυο να κάνει ικανοποιητικά την αντιστοίχηση (mapping) R Nx R Mx Είναι µια µορφή βελτιστοποίησης χωρίς περιορισµούς (unconstrained optimization) υνήθως οργανώνονται δύο περάσµατα H ενεργοποίηση από την είσοδο στην έξοδο, και η ανατροφοδότηση (πισωδιάδοση) από το σφάλµα στις διορθώσεις των βαρών Μετά τη µάθηση, τα βάρη «παγώνουν» καιτοδίκτυοεφαρµόζει την αντιστοίχηση για διάγνωση, κατηγοριοποίηση, αναγνώριση προτύπων, κα ΟΑλγόριθµος BP Για ευκολία, θα αποφύγουµε τον αυτονόητο δείκτη κ, έχοντας υπόψη ότι w = w[κ+] - w[κ] Η διαδικασία βασίζεται στη µέθοδο ταχυτέρας καθόδου εφαρµοζόµενη σε σφάλµα Ε p για το δείγµα p (τοπικό σφάλµα): (p =,,P) Ep = d y = e 2 2 Νo Νo 2 2 ( jp jp, out ) jp j= j= Το συνολικό (global ή total) σφάλµα εκφράζεται ως: (428) E = E = d y = e 2 2 2 P P Νo P Νo 2 2 p ( jp jp, out ) jp p p j= p j= τα αγγλικά είναι γνωστό σαν Sum Square Error (SSE) (429)
ΟΑλγόριθµος BP Θα παρουσιασθεί για αρχιτεκτονική 3 επιπέδων και ακολούθως θα γίνει γενίκευση σε πολλαπλά επίπεδα Ας δούµε πρώτα τους σχετικούς συµβολισµούς για το στάδιο της ενεργοποίησης (εµπρός-περάσµατος) (feedforward pass ή function signal pass) Επίπεδο Εισόδου x ο Κρυµµένο Επίπεδο 2 ο Κρυµµένο Επίπεδο Επίπεδο Εξόδου y x 2 y 2 x N y No
υναπτικά βάρη u Επίπεδο Εισόδου x Επίπεδο Εξόδου y x 2 a S() y 2 x N y No Επίπεδο Εισόδου x Κρυµµένο επίπεδο, µε n νευρώνες u [] a [] Κρυµµένο επίπεδο 2, µε n 2 νευρώνες u [2] f() [2] a [2] Κρυµµένο επίπεδο 3, µε No νευρώνες f() [3] Επίπεδο Εξόδου x 2 u [] 2 a [] 2 u [2] 2 a [2] 2 u [3] u [3] 2 y y 2 x N u [] n u [2] n2 a [2] n2 u [3] n0 f() [3] n0 a [] n yl = yl = f ( ul ) = f n2 ( a [3] wkl ) = f n2 ( f ( u [3] ) wkl ) = f n2 ( f n [] [2] ( aj w [3] ) wkl ) = out [ ] [3] [3] [3] [3] [2] [3] [2] [2] [3] [2] k jk l l l k k l k k k k j = = = = n2 n n2 n N [3] [2] [] [] [2] [3] [3] [2] [] [] [2] [3] ij jk kl l k j j jk kl l k j i k j = = k j i = = = = f ( f ( f ( u ) w ) w ) = f ( f ( f ( xw ) w ) w ) l =,, N o y No
ΟΑλγόριθµος BP: Υπολογισµοί ενεργοποίησης y = y = f ( u ) = [ out] [3] [3] [3] l l l l n2 n2 [3] [2] [3] [3] [2] [2] [3] l k kl l k k kl k= k= = f ( a w ) = f ( f ( u ) w ) = n2 n [3] [2] [] [2] [3] l k j jk kl k= j= = f ( f ( a w ) w ) = n2 n [3] [2] [] [] [2] [3] l k j j jk kl k= j= = f ( f ( f ( u ) w ) w ) = n n N [3] [2] [] [] [2] [3] l fk f j xw i ij wjk wkl k= j= i= = f ( 2 ( ( ) ) ) (430) Οπου, l =,, N o κ ο κ για MLP περισσότερων επιπέδων ΟΑλγόριθµος BP Υπολογισµοί Ενεργοποίησης - Γενική µορφή n L- u = a w [L] [L-] [L] j i ij i= (43) n L- y = f ( a w ) [L] [L] [L-] [L] j j i ij i= (432)
Ότι δεν θέλεις να σου κάνουν, µην κάνεις στους άλλους, Κονφούκιος Είσαι αυτά που γνωρίζεις, Albert Einstein ΟΠΟΥ ΑΤΟΧΗΕΙ ΓΥΡΙΕ, ΚΙ' ΟΠΟΥ ΠΕΤΥΧΕΙ ΦΥΓΕ, Λαϊκή ρήση από τη Κρήτη Πισωδιάδοση σφάλµατος υνήθως ακολουθείται µια από τις πιο κάτω εναλλακτικές τακτικές: α) Μάθηση ανά δείγµα (online learning) Η διόρθωση w L γίνεται µετά από κάθε δείγµα [ ] ij β) Μάθηση ανά οµάδα ή εποχή (batch ή epoch learning) Η διόρθωση συσσωρεύεται και γίνεται µετά που περνούν όλα τα δείγµατα
Πισωδιάδοση σφάλµατος Μάθηση ανά δείγµα (online learning) Η µάθηση βασίζεται στο τοπικό σφάλµα, E p Ας δούµε αναλυτικά τον αλγόριθµο για σύστηµα τριών επιπέδων: w E = η = ηδ a [3] p [3] [2] ij [3] j i wij (433) και δ f f [3] [3] [3] j j j = ejp = ( d ) [3] jp yjp [3] uj uj (434) Πισωδιάδοση σφάλµατος Μάθηση ανά δείγµα (online learning) w E = η = ηδ a [2] p [2] [] ij [2] j i wij (435) και δ f [2] n [2] j [3] [3] j = δ [2] i wij 3 u j i= (436)
Πισωδιάδοση σφάλµατος Μάθηση ανά δείγµα (online learning) w = ηδ x [] [] ij j i (437) και δ f [] n [] j [2] [2] j = δ [] i wij 2 u j i= (438) Πισωδιάδοση σφάλµατος Βήµατα στη µάθηση ανά δείγµα: Αρχικοποίησε τα συναπτικά βάρη w δίνοντας τους µικρές τυχαίες τιµές 2 Εφάρµοσε ένα δείγµα µάθησης x στην είσοδο, από το ζεύγος δείγµατος µάθησης (x, d), και υπολόγισε την έξοδο y µε βάση την τρέχουσα τιµή των w, χρησιµοποιώντας τις εξισώσεις (43) και (432) 3 Χρησιµοποιώντας τις τιµές της επιθυµητής εξόδου d, υπολόγισε τα τοπικά σφάλµατα δ j [L] από τις (434), (436) και (438) 4 ιόρθωσε τα βάρη w ij [L] για L=,2,3 σύµφωνα µε την εξίσωση: w ij [L] = ηδ j [L] x i [L] 5 Επανάλαβε από το βήµα 2, εφαρµόζωντας νέο δείγµα, µέχρι το σφάλµα να πάρει ικανοποιητική τιµή, και τα βάρη να σταθεροποιηθούν
BP µε συντελεστή ορµής Για να έχουµε ευσταθή µάθηση χρειάζεται να χρησιµοποιήσουµε µικρή τιµή του συντελεστή µάθησης η Αυτό οδηγεί σε αργό ρυθµό µάθησης Επίσης, εάν υπάρχουν τοπικά ελάχιστα, τα βάρη θα µπορούσαν να περιοριστούν γύρω από τέτοιο ελάχιστο Ένας τρόπος που χρησιµοποιείται για αποφυγή αυτών των προβληµάτων είναι η χρήση ενός συντελεστή ορµής µ (momentum fficient) όπως πιο κάτω: w [ κ] = ηδ a + µ w [ κ ] [ L ] [ L ] [ L- ] [ L ] ij j i ij (439) ή w [ κ + ] = w [ κ] + w [ κ] [ L] [ L] [ L] ij ij ij Όπου η > 0 και 0 µ < (440)
BP - Γενικό σχόλιο Με τα προηγούµενα, φαίνεται ότι η µέθοδος αυτή, όπως και οι πλείστες παρόµοιες, δουλεύουν όπως και οι στατιστικές πολυπαραµετρικές µέθοδοι για παλινδροµική προσέγγιση ενός υπερεπιπέδου στον πολυδιάστατο χώρο, όπου η προσέγγιση γίνεται µε παραδείγµατα (Multidimensional curve fitting) Πισωδιάδοση σφάλµατος Μάθηση ανά οµάδα (Batch processing) ε αυτή τη τακτική, το τοπικό σφάλµα E p συσσωρεύεται για µερικά δείγµατα (συνήθως για όλα) και ακολούθως γίνεται η διόρθωση των σφαλµάτων Ο απλός αλγόριθµος σε αυτή τη περίπτωση γίνεται: [ ] [ ] E [ ] [ ] w L ij = pw L ij = η = η δ [ ] L jp a L- L ip (44) w p ij Μια πιο περίπλοκη µορφή αλλά πιο διαδεδοµένη είναι: η w [ κ] = δ a + µ w [ κ ] γ w [ κ] (442) [L] [L] [L-] [L] [L] ij jp ip ij ij nl- p Όπου γ είναι ένας συντελεστής απόσβεσης (decay factor) p
ΕΠΛ 604 Τεχνητή Νοηµοσύνη ***************** Τέλος στα MLP και BP Κώστας Νεοκλέους, PhD Τηλέφωνο Γραφείου: 2240639 Email: costas@ucyaccy