Υπολογιστική Νοημοσύνη Μάθημα 4: Μάθηση στον απλό τεχνητό νευρώνα (2)
Ο κανόνας Δέλτα για συνεχείς συναρτήσεις ενεργοποίησης (1/2) Για συνεχείς συναρτήσεις ενεργοποίησης, θα θέλαμε να αλλάξουμε περισσότερο τα βάρη εκείνα, στις μεταβολές των οποίων το συνολικό σφάλμα είναι πιο «ευαίσθητο». Προσπαθούμε να αποφύγουμε βάρη, μικρές μεταβολές των οποίων προκαλούν μεγάλες μεταβολές στο σφάλμα, γιατί αυτά δημιουργούν ένα ασταθές νευρωνικό δίκτυο. Έστω Ε=Err 2 =(a i -o i ) 2 το τετράγωνο του σφάλματος για έναν νευρώνα εξόδου και ένα συγκεκριμένο παράδειγμα. Ο ρυθμός αύξησης του σφάλματος Ε σε σχέση με ένα βάρος w j δίνεται από τη σχέση: 2
Ο κανόνας Δέλτα για συνεχείς συναρτήσεις ενεργοποίησης (2/2) Προφανώς τα βάρη πρέπει να αλλάξουν προς κατεύθυνση αντίθετη του ρυθμού αύξησης του σφάλματος. Άρα μια λογική αλλαγή του βάρους w ij θα ήταν η εξής: όπου η σταθερά 0.5 ενσωματώθηκε στο ρυθμό μάθησης d. Ο παραπάνω κανόνας μπορεί να εφαρμοστεί μόνο για συνεχείς συναρτήσεις ενεργοποίησης. Για τη σιγμοειδή συνάρτηση, ισχύει Φ'(S i )=Φ(S i ) (1-Φ(S i )). Άρα, για τη σιγμοειδή συνάρτηση ο κανόνας δέλτα γίνεται: 3
Παρατηρήσεις (1/2) Από τη σχέση Δw ji =-d (a i -o i ) Φ (S i ) a j παρατηρούμε τα εξής: Τα βάρη στις εισόδους ενός νευρώνα επηρεάζονται το ίδιο από την τιμή της παραγώγου Φ (S i ). Κατά κάποιο τρόπο η παράγωγος Φ (Si) τροποποιεί τον ρυθμό μάθησης του νευρώνα. Τα βάρη διαφορετικών νευρώνων επηρεάζονται διαφορετικά από τις αντίστοιχες παραγώγους. Άρα, η παράγωγος της συνάρτησης ενεργοποίησης ουσιαστικά δημιουργεί ξεχωριστό ρυθμό μάθησης για κάθε νευρώνα και για κάθε παράδειγμα εκπαίδευσης. 4
Παρατηρήσεις (2/2) Για τη σιγμοειδή συνάρτηση, η παράγωγος Φ (S) είναι μεγαλύτερη όταν το S τείνει στο μηδέν και μικρότερη όταν το S απομακρύνεται από το μηδέν. Άρα νευρώνες οι οποίοι έχουν είσοδο κοντά στο μηδέν και έξοδο κοντά στο 0.5 (οι «αναποφάσιστοι» ή «ασταθείς» νευρώνες) είναι αυτοί που εμφανίζουν τον υψηλότερο ρυθμό μάθησης, δηλαδή έχουν τις μεγαλύτερες μεταβολές βαρών. 5
Σφάλματα Ως σφάλμα αναφορικά με ένα παράδειγμα μάθησης p και έναν νευρώνα k ορίζεται η ποσότητα: Err=(a k,p -o k,p ) Το συνολικό σφάλμα για όλα τα παραδείγματα εκπαίδευσης είναι για τον νευρώνα k είναι: Με παρόμοιο τρόπο μπορούμε να ορίσουμε και το μέσο σφάλμα για όλους τους νευρώνες εξόδου k και όλα τα παραδείγματα p: 6
Παρατηρήσεις Για συνεχείς συναρτήσεις όπως η σιγμοειδής, το αποτέλεσμα εξόδου δεν γίνεται ποτέ 1 ή 0, αλλά η τιμή της εξόδου τείνει ασυμπτωτικά στις τιμές αυτές (αναλόγως το παράδειγμα κάθε φορά) με την πρόοδο της μάθησης. Άρα ο τερματισμός της διαδικασίας μάθησης πραγματοποιείται όταν το συνολικό σφάλμα Ε για όλα τα παραδείγματα και για όλους τους νευρώνες εξόδου πέσει κάτω από μια μικρή τιμή. 7
Παράδειγμα μάθησης με σιγμοειδή συνάρτηση ενεργοποίησης (1/3) Προσπαθούμε να προσομοιώσουμε την πύλη AND με νευρώνα σιγμοειδούς συνάρτησης ενεργοποίησης. Έστω a=1 η παράμετρος της σιγμοειδούς συνάρτησης. 8
Παράδειγμα μάθησης με σιγμοειδή συνάρτηση ενεργοποίησης (2/3) Έστω 0.1 το όριο για το άθροισμα των τετραγωνικών σφαλμάτων για όλα τα παραδείγματα. Έστω d=1 ο ρυθμός μάθησης (αυξημένος σε σχέση με τις βηματικές συναρτήσεις). Μετά από 1268 επαναλήψεις (317 φορές για κάθε δείγμα) το νευρωνικό δίκτυο πέτυχε το στόχο του μέγιστου σφάλματος που του θέσαμε, καταλήγοντας στα παρακάτω βάρη: w x =2.9990, w y =2.9918, w z =9.0085 Πράγματι για τις τιμές αυτές παίρνουμε: 0 AND 0 0.0109 0 AND 1 0.1806 1 AND 0 0.1817 1 AND 1 0.8156 9
Γραμμικώς διαχωρίσιμες συναρτήσεις (1/2) Οι απλοί νευρώνες (perceptrons) μπορούν, μετά την εκπαίδευση, να "μαθαίνουν" γραμμικώς διαχωρίσιμες συναρτήσεις, όπως οι AND και OR. 10
Γραμμικώς διαχωρίσιμες συναρτήσεις (2/2) Δεν μπορούν όμως να "μάθουν" μη-γραμμικώς διαχωρίσιμες συναρτήσεις, όπως η XOR. Πράγματι, εάν προσπαθήσουμε να εκπαιδεύσουμε έναν απλό νευρώνα (όπως κάναμε με τη συνάρτηση AND), η διαδικασία της εκπαίδευσης δεν θα συγκλίνει ποτέ. Για μη-γραμμικές συναρτήσεις απαιτούνται νευρωνικά δίκτυα περισσοτέρων επιπέδων. 11