Ασκήσεις Φροντιστηρίου 4 o Φροντιστήριο Πρόβλημα 1 ο Ο πίνακας συσχέτισης R x του διανύσματος εισόδου x( στον LMS αλγόριθμο 1 0.5 R x = ορίζεται ως: 0.5 1. Ορίστε το διάστημα των τιμών της παραμέτρου μάθησης η του LMS αλγόριθμου έτσι ώστε ο αλγόριθμος να συγκλίνει α) στη μέση τιμή, 0 < η < / λ max β) στη μέση τετραγωνική τιμή, 0 < η < / tr[r x ] ή 0 < η < / x( Βρίσκουμε τις ιδιοτιμές του R x ως εξής: det( R x λi ) = 1 λ 0,5 = (1 λ ) 0,5 1 λ 0,5 = 0,75 λ + λ = 0 Οπότε έχουμε : λ = 1/, 3/ α) Ο αλγόριθμος LMS συγκλίνει στην μέση τιμή αν η παράμετρος μάθησης ικανοποιεί την συνθήκη : 0< η < /λ max Στην συγκεκριμένη περίπτωση έχουμε λ max =3/ οπότε : 0< η < 4/3 β) Ο αλγόριθμος LMS συγκλίνει στη μέση τετραγωνική τιμή αν : tr[ R ] 0 < η < x Στην συγκεκριμένη περίπτωση έχουμε tr[r x ] = λ max + λ min = 3/ + 1/ = Οπότε: 0 < η < 1 Ασκήσεις 4 ου Φροντιστηρίου 1
Πρόβλημα ο Ο κανονικοποιημένος LMS αλγόριθμος περιγράφεται από την παρακάτω αναδρομική εξίσωση των βαρών: η ŵ(n + 1) = ŵ( + e(x( x(, x( όπου η είναι μία θετική σταθερά και είναι η Ευκλείδια νόρμα του διανύσματος εισόδου x(. Το σήμα λάθους δίνεται από τη σχέση e( = d( w (x(, όπου d( είναι η επιθυμητή απόκριση. Δείξτε ότι για να συγκλίνει o κανονικοποιημένος LMS στη μέση τετραγωνική τιμή πρέπει να ισχύει 0 < η < T Στον απλό LMS έχουμε ότι : w(n+1) = w( + ηe(x( (1) οπότε η σύγκλιση στο μέσο τετράγωνο γίνεται όταν : 0 < η < () x( Στον κανονικοποιημένο LMS έχουμε : e(x( w(n+1) = w( + η x( (3) Συγκρίνοντας την (1) και την (3) μπορούμε να γράψουμε : η = η x( (4) Χρησιμοποιώντας την () και την (4) έχουμε: η' < η < 0 < < 0 < η' < x( x( x( 0 Ασκήσεις 4 ου Φροντιστηρίου
Πρόβλημα 3 ο O LMS αλγόριθμος χρησιμοποιείται για να υλοποιηθεί ο δύο εισόδων, με ένα βάρος, προσαρμοστικός εξουδετερωτής θορύβου που φαίνεται στο παρακάτω σχήμα. Καθορίστε τις εξισώσεις που περιγράφουν τη λειτουργία αυτού του αλγόριθμου. Το βασικό σήμα d( είναι το επιθυμητό σήμα. Το σήμα αναφοράς x( είναι το σήμα εισόδου. Το σήμα e( είναι το σήμα λάθους : e( = d( y( Όπου y( = φ(w(x(). H φ(.) είναι η συνάρτηση ενεργοποίησης του νευρωνικού δικτύου, οπότε ισχύει : e( = ( d ( ϕ ( w( x( )) = ϕ '( w( x( ) x( w( w( Για την ανανέωση των βαρών έχουμε : e( w( n + 1) = w( η e( = w( + ηe( ϕ '( w( x( ) x( w( Εαν ο νευρώνας είναι γραμμικός, δηλαδή φ (1) = 1, τότε έχουμε τον απλό LMS w(n+1) = w( + ηe(x( Πρόβλημα 4 ο Ένας γραμμικός προβλεπτής με διάνυσμα εισόδου του να αποτελείται από τα δείγματα x(n-1), x(n-),, x(n-p) όπου p είναι η τάξη της πρόβλεψης. Πρέπει να χρησιμοποιήσουμε τον LMS αλγόριθμο για να προβλέψουμε την τιμή xˆ ( από τα δείγματα x(. Γράψτε τις αναδρομικές εξισώσεις που απαιτούνται για τον υπολογισμό τον βαρών w 1, w,, w p. Το σήμα εισόδου του προβλεπτή είναι: X (n-1) = [ x(n-1), x(n-),...., x(n-p) ] Ασκήσεις 4 ου Φροντιστηρίου 3
H επιθυμητή απόκριση είναι η d(=x( Χρησιμοποιώντας τον LMS έχουμε: xˆ ( = w T (X (n-1) e( = x( xˆ ( w(n+1) = w( + ηe(x (n-1) Πρόβλημα 5 ο Έστω ότι έχουμε ένα Νευρωνικό Δίκτυο εμπρόσθιας τροφοδότησης με αρχιτεκτονική 1--1. Θέλουμε να εκπαιδεύσουμε το δίκτυο, χρησιμοποιώντας αλγόριθμο πίσω διάδοσης του λάθους να προσεγγίζει την ακόλουθη συνάρτηση: π g( p) = 1+ sin( p), όπου p [,]. 4 Για τους νευρώνες του κρυφού επιπέδου χρησιμοποιούμε σα συνάρτηση 1 ενεργοποίησης τη λογιστική ( ϕυ ( ) = ) ενώ στο επίπεδο εξόδου την γραμμική 1 + e υ ( ϕ( υ) = υ ). Για τις ελεύθερες παραμέτρους του δικτύου θεωρήστε τις ακόλουθες αρχικές τιμές: w 1 = 0.7, w 31 = 0.41, w4 = 0.09 w 43 = 0.17, θ = 0.48, θ 3 = 0.13 και θ 4 = 0.48. Χρησιμοποιώντας παράμετρο μάθησης η=0.1 υλοποιείστε μια επανάληψη του αλγορίθμου Πίσω-Διάδοσης του Λάθους. To νευρωνικό δίκτυο είναι το εξής: Ασκήσεις 4 ου Φροντιστηρίου 4
Η συνάρτηση η οποία θέλουμε να προσεγγίζει το πιο πάνω Νευρωνικό Δίκτυο είναι η π g( p) = 1+ sin( p), όπου p [,]. 4 Για να μπορέσει το Νευρωνικό Δίκτυο να προσεγγίσει την πιο πάνω συνάρτηση θα πρέπει να εκπαιδευτεί στο διάστημα [-,]. Συνήθως επιλέγουμε τιμές εκπαίδευσης του δικτύου ομοιόμορφα στο [-,] εκτός και αν θέλουμε να προσεγγίσουμε μία περιοχή καλύτερα από τις υπόλοιπες οπότε σε αυτή την περιοχή παίρνουμε περισσότερες τιμές εκπαίδευσης απ ότι στις υπόλοιπες. Εφόσον μας ζητείται μόνο μια επανάληψη του αλγορίθμου πίσω διάδοσης επιλέγουμε στο [-,] την τιμή 1 για εκπαίδευση (χάριν ευκολίας). Η έξοδος η οποία θέλουμε να προσεγγίσουμε είναι η: π d = q(1) = 1+ sin( 1) d = 1+ = 1.707 4 Στη συνέχεια θα πρέπει να βάλουμε ως είσοδο στο νευρωνικό δίκτυο την τιμή 1 και θα υπολογίσουμε την έξοδό του. Μετά θα συγκρίνουμε την έξοδο του νευρωνικού δικτύου με την επιθυμητή έξοδο d και εφαρμόζοντας τις εξισώσεις της πίσω διάδοσης, θα προχωρήσουμε από το επίπεδο εξόδου στο επίπεδο εισόδου ενημερώνοντας (διορθώνοντας) σε κάθε επίπεδο τα βάρη. Στην άσκηση μας ζητείται μόνο μια επανάληψη, διαφορετικά θα συνεχίζαμε την πιο πάνω διαδικασία έως ότου Ασκήσεις 4 ου Φροντιστηρίου 5
το νευρωνικό δίκτυο μας δώσει προσέγγιση μικρότερη από το επιθυμητό όριο. Αυτή τη διαδικασία θα πρέπει να την επαναλάβουμε για όλα τα δείγματα εκπαίδευσης. Εμπρός Πέρασμα: Για το νευρώνα έχουμε: υ = x w θ = 1 ( 0.7) + ( 1) 0.48 υ = 0.75 1 1 y 1 1 = ( ) = = = 0.31 1+ e 1+ e ϕυ υ 0.75 και Για το νευρώνα 3 ισχύει: υ = x w θ = 1 ( 0.41) + ( 1) 0.13 υ = 0.54 3 1 31 3 3 1 1 y3= ϕυ ( 3) = = = 0.368 υ 0.57 1+ e 1+ e και 3 Για το επίπεδο εξόδου ακολουθούμε την ίδια διαδικασία. Μόνο που σε αυτή την περίπτωση σαν συνάρτηση ενεργοποίησης δε χρησιμοποιούμε την λογιστική απεικόνιση αλλά την ταυτοτική συνάρτηση: ϕ( υ) = υ. Έτσι για το νευρώνα 4 έχουμε: 3 υ = yw θ = 0.09 0.3 + ( 0.17) 0.368 + ( 1) ( 0.48) υ = 0.446 4 i 4i 4 4 i = και y4 = ϕ( υ4) = 0.446. Στη συνέχεια βρίσκουμε το λάθος e στις εξόδους του δικτύου (έχουμε μία έξοδο): e= e4 = d y4 = 1.707 0.446 1.61 Πίσω Πέρασμα: Υπολογίζουμε τα δ για όλους του υπολογιστικούς νευρώνες του δικτύου, ξεκινώντας από το επίπεδο εξόδου και προχωρώντας προς τα πίσω έως και το πρώτο κρυφό επίπεδο. Στο συγκεκριμένο πρόβλημα έχουμε μόνο ένα νευρώνα στο επίπεδο εξόδου και ένα μόνο κρυφό επίπεδο με δύο κρυφούς νευρώνες: Οπότε, για το νευρώνα 4 Ασκήσεις 4 ου Φροντιστηρίου 6
έχουμε (θα πρέπει να λάβουμε υπόψη ότι στο νευρώνα εξόδου χρησιμοποιούμε τη γραμμική συνάρτηση ενεργοποίησης): δ ( = e φ'( υ ) = e 1 δ ( = 1.61 4 4 4 4 Εν συνεχεία υπολογίζουμε τις τοπικές κλίσεις για τους δύο νευρώνες του κρυφού επιπέδου (εδώ θα πρέπει να λάβουμε υπόψη ότι οι νευρώνες του κρυφού επιπέδου χρησιμοποιούν τη λογιστική συνάρτηση ενεργοποίησης). δ = φ ( υ) δ4 w4 δ = y (1 y) δ4 w4 δ = 0.31 (1 0.31) 1.61 0.09 = 0.047 όμοια υπολογίζουμε και το δ 3= -0.0498 Στη συνέχεια υπολογίζουμε τις διορθώσεις στα βάρη και τα κατώφλια του δικτύου: Για το νευρώνα 4 έχουμε: Δ θ4 =Δ w40 = n δ4 y40 = 0.1 1.61 ( 1) = 0.161 Δ w43 = n δ4 y3 = 0.1 1.61 0.368 = 0.0464 Δ w4 = n δ4 y = 0.1 1.61 0.3 = 0.0404 Για το νευρώνα έχουμε: Δ θ =Δ w0 = n δ y0 = 0.0047 Δ w1 = n δ y1 = 0.0047 Για το νευρώνα 3 έχουμε: Δ θ3 =Δ w30 = n δ3 y30 = 0.00498 Δ w31 = n δ3 y1 = 0.00498. Τέλος υπολογίζουμε τις καινούργιες (διορθωμένες) τιμές των ελεύθερων παραμέτρων σύμφωνα με τον τύπο: w ji (n+1) = w ji ( + Δw ji (. Έχουμε: θ ( n+ 1) = θ ( +Δ θ ( = 0.48 0.161 = 0.6061 4 4 4 w 4 ( n+ 1) = 0.1304 Ασκήσεις 4 ου Φροντιστηρίου 7
w ( n+ 1) = 0.136 3 43 θ ( n + 1) = 0.13498 w ( n+ 1) = 0.41498 31 θ ( n + 1) = 0.47753 w ( n+ 1) = 0.6753 1 Αυτές είναι και οι νέες τιμές των βαρών και των κατωφλίων του δικτύου. Σε ένα «πραγματικό» πρόβλημα η παραπάνω διαδικασία θα έπρεπε να συνεχιστεί έως ότου να φτάσουμε σε ένα e μικρότερο από το λάθος προσέγγισης που ζητάμε για όλες τις τιμές που θα χρησιμοποιήσουμε για εκπαίδευση στο διάστημα [-,]. Ασκήσεις 4 ου Φροντιστηρίου 8