Εισαγωγή Τεχνητή Νοημοσύνη 9 Είναι μια ιδιαίτερη προσέγγιση στη δημιουργία συστημάτων με νοημοσύνη: Εισαγωγή στα Τεχνητά Νευρωνικά Δίκτυα (Artificial Nural Ntwors) Δεν αναπαριστούν ρητά τη γνώση (π.χ. με κανόνες if-thn) όπως τα συστήματα γνώσης. Δεν υιοθετούν ειδικά σχεδιασμένους αλγόριθμους αναζήτησης. Δεν εξελίσσουν καλές λύσεις όπως οι Γενετικοί Αλγόριθμοι. Βασίζονται σε βιολογικά πρότυπα: x προσομοίωση μικρής κλίμακας του τρόπου λειτουργίας του εγκεφάλου Έχουν ικανότητα μάθησης κύρια μέσω καταγεγραμμένων παρατηρήσεων και μπορεί να συνεισφέρουν στην ευφυΐα μιας τεχνητής οντότητα (π.χ. ενός λογισμικού πράκτορα / softwar agnt), με κάποιον από τους ακόλουθους τρόπους: πρόβλεψη (π.χ. βραχυπρόθεσμη πρόβλεψη ισοτιμιών νομισμάτων ή τιμών μετοχών) ταξινόμηση (π.χ. κατηγοριοποίηση ιατρικών εικόνων, στόχων, κτλ) αναγνώριση (π.χ. προσώπου σε συστήματα ασφάλειας) αποτίμηση (π.χ. παρακολούθηση στόχων σε οπλικά συστήματα με αυτονομία) Πώς θα μπορούσαμε να φτιάξουμε τεχνητές δομές που να λειτουργούν όπως ο εγκέφαλος; Πώς λειτουργεί ο εγκέφαλος; Φώτης Κόκκορας ΤΕΙ Θεσσαλίας Τμήμα Μηχανικών Πληροφορικής ΤΕ -2- Φώτης Κόκκορας Βιολογικός Νευρώνας Τεχνητή Νοημοσύνη Φυσικά Νευρωνικά Δίκτυα Τα ηλεκτρικά σήματα (προερχόμενα από άλλους νευρώνες) που εισέρχονται στο σώμα μέσω των δενδριτών, συνδυάζονται και αν το αποτέλεσμα ξεπερνά κάποιο όριο (κατώφλι), παράγεται κάποιο σήμα το οποίο διαδίδεται μέσω του άξονα προς άλλους νευρώνες. Ανθρώπινος εγκέφαλος: περίπου δισεκατομμύρια νευρώνες κάθε νευρώνας συνδέεται κατά μέσο όρο με άλλους νευρώνες άρα: περίπου τρισεκατομμύρια συνάψεις! Η αντιγραφή ομοιώματος είναι εφικτή μόνο σε πολύ περιορισμένη κλίμακα (μερικές χιλιάδες ή δεκάδες χιλιάδες νευρώνες συνήθως πολύ λιγότεροι) Ο χρόνος απόκρισης των βιολογικών νευρώνων είναι της τάξης των msc...όμως ο εγκέφαλος λαμβάνει πολύπλοκες αποφάσεις, εκπληκτικά γρήγορα! Η υπολογιστική ικανότητα του εγκεφάλου και η πληροφορία που περιέχει είναι διαμοιρασμένα σε όλο του τον όγκο. Μάθηση και μνήμη υλοποιούνται με μεταβολές στην αγωγιμότητα των συνάψεων. Ο εγκέφαλος είναι ένα παράλληλο και κατανεμημένο υπολογιστικό σύστημα. η αγωγιμότητα μεταβάλλεται με χημικές διεργασίες Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -4- Τεχνητή Νοημοσύνη
Ιστορική Αναδρομή (/) 94, McCulloch (νευροφυσιολόγος) και Pitts (μαθηματικός): πρώτο μοντέλο ΤΝΔ στην προσπάθεια εξήγησης της μνήμης ο νευρώνας έχει πολλές ς αλλά μία έξοδο οι έξοδοι δεν ενώνονται πρέπει όμως να καταλήγουν σε άλλο νευρώνα, πιθανώς και στον ίδιο νευρώνα ο νευρώνας μπορεί να είναι σε δύο καταστάσεις: πυροδοτεί (στέλνει ηλεκτρικό παλμό) ή βρίσκεται σε ηρεμία οι λειτουργίες αυτές γίνονται σε διακριτό χρόνο, δηλ. το σύστημα δρα συγχρονισμένα η κατάσταση σε χρόνο t+ εξαρτάται από την κατάσταση σε χρόνο t και τις ς που δέχεται εκείνη τη στιγμή ερμηνεία: η μνήμη υλοποιείται με κλειστές διαδρομές ηλεκτρικού σήματος που ελέγχονται από διεγερτικούς και ανασταλτικούς μηχανισμούς 949, Hbb: κανόνας μάθησης Hbb κάθε φορά που το σύστημα διεγείρεται με "σήμα " και χρησιμοποιεί τις συνδέσεις μεταξύ των νευρώνων, αυτές ενισχύονται και το δίκτυο πλησιάζει περισσότερο στο να μάθει το "σήμα" Δεκαετία '5: John von Nwman ανέφερε τις εργασίες των McCulloch & Pitts ως παραδείγματα υπολογιστικών μηχανών Φώτης Κόκκορας -5- Τεχνητή Νοημοσύνη Ιστορική Αναδρομή (2/) 957, Rosnblatt: έφτιαξε το πρώτο δίκτυο (σε hardwar) prcptron (αισθητήρας) είχε μόνο είσοδο και έξοδο και μπορούσε να κάνει διάφορες διεργασίες (βλ. συνέχεια) αρχικά δημιούργησε μεγάλο ενθουσιασμό 959, Widrow και Hoff: ανέπτυξαν δύο νέα μοντέλα (Adalin, Madalin) που χρησιμοποιήθηκαν με επιτυχία σε πρακτικές εφαρμογές (ως φίλτρα σε τηλεφωνικά δίκτυα) 969, Minsy και Paprt: απέδειξαν με αναλυτικά μαθηματικά ότι υπάρχουν συγκεκριμένοι περιορισμοί στο τι μπορούν να κάνουν τα prcptrons η εργασία αυτή λειτούργησε ως "ταφόπλακα" για τα ΤΝΔ το ενδιαφέρον στράφηκε στις συμβολικές και με βάση τη λογική μεθόδους η Αναγέννηση 982, Hopfild (βιολόγος): σε 5 σελίδες απέδειξε με μαθηματικό τρόπο: πώς ένα ΤΝΔ μπορεί να χρησιμοποιηθεί ως αποθηκευτικός χώρος ότι ένα ΤΝΔ είναι δυνατό να ανακτήσει την αποθηκευμένη πληροφορία ακόμη κι αν η είσοδος διαφέρει ελαφρώς από αυτά που "γνωρίζει" κατανοήθηκε η απαίτηση για μηχανισμό εκπαίδευσης που να βασίζεται στο σφάλμα που παράγει το δίκτυο στην έξοδό του Φώτης Κόκκορας -6- Τεχνητή Νοημοσύνη Ιστορική Αναδρομή (2/) 986, McCllland και Rumlhart: παρουσιάζουν τον τρόπο με τον οποίο ένα ΤΝΔ μπορεί να θεωρηθεί και να χρησιμοποιηθεί ως παράλληλος επεξεργαστής. εισάγουν την έννοια των κρυφών επιπέδων που δεν υπήρχαν στο prcptron προτείνουν την πιο πολυχρησιμοποιημένη (ακόμη και στις μέρες μας) διαδικασία εκπαίδευσης για ΤΝΔ, τη μέθοδο της οπισθοδιάδοσης (bac-propagation) η μέθοδος αυτή είχε συζητηθεί και παλαιότερα αλλά τώρα διατυπώθηκε ολοκληρωμένα και με αυστηρά μαθηματικό τρόπο Δεκαετία '9: ραγδαία εξέλιξη ανεξάρτητο επιστημονικό πεδίο τουλάχιστο επιστημονικά περιοδικά αφιερωμένα σε TNΔ ετήσια συνέδρια εμπορικές εφαρμογές (κυρίως από τις ΗΠΑ) Σήμερα: χαμηλότεροι ρυθμοί εξέλιξης, χωρίς ραγδαία αύξηση των εφαρμογών Φώτης Κόκκορας -7- Τεχνητή Νοημοσύνη Μοντέλο Τεχνητού Νευρώνα (Artificial Nuron) x x 2 x i x n w 2 w i w n w x = πόλωση (bias) w Αθροιστής = Σw i x i (i=..n) Συνάρτηση Ενεργοποίησης Έξοδος y = f () Φώτης Κόκκορας -8- Τεχνητή Νοημοσύνη f Τα βάρη w i είναι το ισοδύναμο των συνάψεων του βιολογικού νευρώνα. Συνηθέστερη συνάρτηση ενεργοποίησης είναι η σιγμοειδής συνάρτηση (βλ. σχήμα) Ονομάζεται έτσι λόγω της γραφικής της παράστασης (πεπλατυσμένο ) Μία έξοδος: εννοούμε ότι προκύπτει μια τιμή οι απολήξεις μπορεί να είναι πολλές a y
Συναρτήσεις Ενεργοποίησης (/2) Βασική απαίτηση: να είναι μη γραμμική ώστε να μπορεί να μοντελοποιεί μη γραμμικά φαινόμενα. Επίσης πρέπει να είναι συνεχής και παραγωγίσιμη σε όλο το πεδίο ορισμού της καθώς το απαιτεί το μαθηματικό μοντέλο πίσω από το μηχανισμό εκπαίδευσης του νευρωνικού δικτύου (θα τον δούμε παρακάτω). + f () Κατώφλι T + - f () Φώτης Κόκκορας -9- Τεχνητή Νοημοσύνη Κατώφλι T +.5 f () a a 2 a >a 2 α) Βηματική Συνάρτηση β) Συνάρτηση Προσήμου γ) Λογιστική Συνάρτηση Η βηματική και η προσήμου χρησιμοποιήθηκαν παλαιότερα σε απλά prcptron. Η λογιστική (logistic) συνάρτηση είναι μια σιγμοειδής συνάρτηση που έχει τα ζητούμενα χαρακτηριστικά. Συναρτήσεις Ενεργοποίησης (2/2) Γραφική παράσταση των πιο συχνών σε χρήση συναρτήσεων ενεργοποίησης σε ΤΝΔ.2.4.8.5 2.5 Η σιγμοειδής συνάρτηση για διάφορα a.. -5 - -5 -. 5 5 λογιστική (logistic) συνάρτηση Φ..9.8.7.6.5.4..2. υπερβολική συνάρτηση Φ a Η υπερβολική συνάρτηση tanh().2 2 tanh 2 Έξοδος μεταξύ και Έξοδος μεταξύ - και Μικρότερες τιμές a στην λογιστική συνάρτηση κάνουν την καμπύλη πιο πεπλατυσμένη. Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη..8.6.4.2. -5 - -5 -.2 5 5 -.4 -.6 -.8 -. -.2 x x 2 Λογικές Συναρτήσεις με Τεχνητό Νευρώνα w = w 2 = Βηματική Τ=.5 AND x x 2 w = w 2 = Στα επόμενα θεωρούμε binary input ( ή ). Βηματική Τ=.5 Παράδειγμα: υλοποίηση του AND Όταν αθροιστής βγάλει τιμή πάνω από Τ=.5 η έξοδος είναι. x x 2 y 2 Παράδειγμα: υλοποίηση του NOT: Όταν x= τότε =- και y= Όταν x= τότε = και y= Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη OR x w = - Κατώφλι T=-.5 Βηματική Τ= -.5 NOT f () + Βηματική Συνάρτηση Prcptron Η πιο απλή τοπολογία δικτύου με απλή τροφοδότηση. ένας νευρώνας (!) με βηματική συνάρτηση ενεργοποίησης Πώς συντελείται η μάθηση: μέσω αναπροσαρμογής των τιμών των βαρών. αρχικά τα βάρη έχουν τυχαίες τιμές τις αναπροσαρμόζουν επιδιώκοντας για δεδομένο input να υπολογίσουν το (γνωστό) επιθυμητό output οδηγός της αναπροσαρμογής είναι το σφάλμα μεταξύ της τιμής που υπολογίζουν και της τιμής που θέλουμε να υπολογίσουν (μαθαίνουν από τα λάθη τους!!!) τα δεδομένα (input-output) που χρησιμοποιούνται ονομάζονται δεδομένα εκπαίδευσης (training data) και προέρχονται από μετρήσεις/καταγραφή αυτού που θέλουμε να μάθουν π.χ. μαθαίνουν να κάνουν διάγνωση καρκίνου εκπαιδευόμενα με δεδομένα εξετάσεων υγειών ατόμων και ατόμων που αποδεδειγμένα πάσχουν/έπασχαν από την ασθένεια στις γενικές του αρχές ο μηχανισμός ισχύει και για πιο πολύπλοκα νευρωνικά δίκτυα Μπορούμε να συνδυάσουμε prcptrons για να φτιάξουμε πιο πολύπλοκα ΤΝΔ, αλλά μόνο με τη φιλοσοφία του σχήματος δεξιά: Φώτης Κόκκορας -2- Τεχνητή Νοημοσύνη
Αλγόριθμος Μεταβολής Βαρών στο Prcptron Αλγόριθμος αναπροσαρμογής (μεταβολής) των βαρών: Μέχρις ότου ικανοποιηθεί η συνθήκη τερματισμού της εκπαίδευσης επανέλαβε: Για κάθε ζευγάρι x και επιθυμητής t από το σύνολο δεδομένων εκπαίδευσης. Υπολόγισε την έξοδο y 2. Εάν y=t τότε δε γίνεται καμία μεταβολή στα βάρη. Εάν yt τότε μετέβαλε τα βάρη κατά την ποσότητα Δw=d(t-y)x έτσι ώστε το y να πλησιάσει το t. d: σταθερά - ρυθμός μάθησης (larning rat) συνήθως έχει μικρές τιμές Γραμμική Διαχωρισιμότητα (/4) Στο prcptron που καλείται να "μάθει" το λογικό KAI, ο τρόπος που συνδυάζονται τα x και x 2 για τον υπολογισμό της, ορίζουν μια ευθεία ε στο x x 2 x * w +x 2* w 2 =T Η διαδικασία της εκπαίδευσης μεταβάλει τις τιμές των βαρών w και w 2. Αυτό όμως πρακτικά σημαίνει αλλαγή που προσανατολισμού της ευθείας ε. Όταν το prcptron έχει εκπαιδευτεί, η ευθεία ε χωρίζει τα διανύσματα σε ομάδες, ανάλογα με την έξοδο. π.χ. στο AND, κάτω από την ε είναι τα τρία ζευγάρια x, x 2 που δίνουν έξοδο ενώ από πάνω το ζευγάρι που γίνει έξοδο. x2 x2 x w +x 2 w 2 =T ε AND XOR Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη x x AND XOR Λέμε ότι το AND είναι γραμμικώς διαχωρίσιμο πρόβλημα (linarly sparabl). Στην περίπτωση του XOR δεν ισχύει αυτό! Δεν υπάρχει τέτοια ευθεία! Φώτης Κόκκορας -4- Τεχνητή Νοημοσύνη Γραμμική Διαχωρισιμότητα (2/4) Γενίκευση Ένα prcptron με n γραμμές μπορεί να θεωρηθεί ότι αναπαριστά ένα υπερ n- διαστάσεων που διαχωρίζει τα διανύσματα σε ομάδες, ανάλογα με την έξοδο. Στην περίπτωση του AND (n=2) το υπερ είναι ευθεία (μία διάσταση) που χωρίζει τα σημεία που ορίζουν τα input σε δύο περιοχές. Τα μη γραμμικώς διαχωρίσιμα προβλήματα απαιτούν τη χρήση ΤΝΔ με ενδιάμεσα κρυφά επίπεδα! Ο λόγος για αυτή την απαίτηση έχει να κάνει με τη αδυναμία απλών ΤΝΔ να οριοθετήσουν μη κυρτές περιοχές με ευθείες σαν την ε. Κλειστές (αριστερά) και ανοιχτή (δεξιά) κυρτές περιοχές Τα ΤΝΔ με πολλούς νευρώνες έχουν καλύτερη διαχωρισιμότητα από το απλό prcptron. Στο παράδειγμα υπάρχουν δύο νευρώνες (πράσινα) και απαιτούνται 2 εξισώσεις (ευθείες ε και ε 2 ) για να περιγράψει κανείς το τι ισχύει ως προς τους υπολογισμούς. Η εκπαίδευση καθορίζει τα w άρα και τη θέση και την κλίση των ευθειών. Οι πολλές ευθείες μπορεί να οριοθετήσουν το χώρο με πιο πολύπλοκο τρόπο! Γραμμική Διαχωρισιμότητα (/4) Ιδανικά θα θέλαμε να μπορούμε να οριοθετήσουμε μη κυρτές περιοχές! y x ε 2 w 2 w 2 y ε ε : xw +yw 2 =T ε 2 : xw 2 +yw 22 =T 2 w w 22 T T 2 x Φώτης Κόκκορας -5- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -6- Τεχνητή Νοημοσύνη
Γραμμική Διαχωρισιμότητα (4/4) Η ύπαρξη κρυφών επιπέδων επιτρέπει στην οριοθέτηση μη κυρτών περιοχών. A x y B μη κυρτή περιοχή "Α και όχι Β" κρυφό Επιπλέον, η εισαγωγή περισσότερων νευρώνων επιτρέπει να οριοθετηθούν πιο πολύπλοκες περιοχές. Φώτης Κόκκορας -7- Τεχνητή Νοημοσύνη z XOR rvisitd Η ακόλουθη τοπολογία (με κρυφό ) μπορεί να "μάθει" το XOR. x x 2 w = w 2 = w = w 4 =-2 θ=.5 w 5 = x x 2 Έξοδος y Χρειαζόμαστε συστηματικό τρόπο εκπαίδευσης για ΤΝΔ με κρυφά επίπεδα! Ο αλγόριθμος εκπαίδευσης του prcptron δεν επαρκεί. Πριν πάμε σε ΤΝΔ με κρυφά επίπεδα, ας δούμε τον κανόνα Δέλτα. Φώτης Κόκκορας -8- Τεχνητή Νοημοσύνη θ=.5 y Κανόνας Δέλτα (/2) Πρόκειται για γενίκευση του αλγορίθμου εκπαίδευσης του prcptron ελαχιστοποίηση του μέσου τετραγωνικού σφάλματος των διανυσμάτων εκπαίδευσης δεν μπορεί να εφαρμοστεί σε δίκτυα με κρυφά επίπεδα Μέσο τετραγωνικό σφάλμα Ε στο στοιχειώδες prcptron, για p διανύσματα εκπαίδευσης: E p p ( t input ) input : σήμα του νευρώνα (χωρίς βλάβη της γενικότητας, παραβλέπουμε τη συνάρτηση ενεργοποίησης καθώς είναι πολύ απλή (βηματική) στο prcptron) Συνολικό σήμα για κάποιο διάνυσμα εκπαίδευσης p: Φώτης Κόκκορας -9- Τεχνητή Νοημοσύνη input w x i i n i t : επιθυμητή έξοδος η εξίσωση της Ε ως προς τα w i ορίζει μια υπερεπιφάνεια n διαστάσεων της οποίας αναζητούμε το ελάχιστο γιατί τετραγωνικό σφάλμα: μας ενδιαφέρει το σφάλμα και όχι το πρόσημό του υψώνοντάς το στο τετράγωνο είναι πάντα θετικό 2 Κανόνας Δέλτα (2/2) Ο κανόνας Δέλτα ακολουθεί την αρνητική κλίση της επιφάνειας σφάλματος, με κατεύθυνση προς το ελάχιστό της: E wi wi Η παράγωγος του Ε ως προς τα w είναι: E E E,..., w w n Η μεταβολή στην τιμή του βάρους w i, εξαιτίας της εκπαίδευσης με ένα μόνο από τα διανύσματα εκπαίδευσης, δίνεται από τη σχέση: w i wi ( nw) wi ( old) d( t input) xi Φώτης Κόκκορας -2- Τεχνητή Νοημοσύνη
Ποιοτική Ερμηνεία της Εκπαίδευσης Prcptron Έχουμε δεδομένα -επιθυμητής. Το ΤΝΔ για τυχαία αρχικοποιημένο σύνολο βαρών w i και δεδομένη είσοδο υπολογίζει μια έξοδο, εν γένη διαφορετική από την επιθυμητή. Υπάρχει δηλαδή σφάλμα. Αν Ε=f(w, w 2,..., w n ) είναι η συνάρτηση υπολογισμού του μέσου σφάλματος για όλα τα δεδομένα εκπαίδευσης, τότε η εκπαίδευση συνίσταται στην αναζήτηση εκείνων των τιμών για τα βάρη (w, w 2,..., w n ) που ελαχιστοποιούν το Ε (το σφάλμα) Σχήμα: μια γεωμετρική αναπαράσταση της εκπαίδευσης για στοιχειώδες prcptron με 2 ς (άρα 2 βάρη). Η επιφάνεια είναι η συνάρτηση σφάλματος. Η εκπαίδευση συνίσταται στο να βρούμε το ελάχιστό της ακολουθώντας την αρνητική της κλίση (δηλ. μια "κατηφόρα" - Κανόνας της Επικλινούς Καθόδου). Δεν μπορεί όμως να εφαρμοστεί σε δίκτυα με κρυφά επίπεδα!!! Αποτέλεσμα: Η έρευνα στα ΤΝΔ w ' εξασθένησε για πολλά χρόνια! w Φώτης Κόκκορας -2- Τεχνητή Νοημοσύνη Ε min Ε Ιδανικό Διάνυσμα Βαρών w 2 ' Διάνυσμα "Δέλτα" w 2 Τρέχων Διάνυσμα Βαρών Τεχνητά Νευρωνικά Δίκτυα (ΤΝΔ) Συστήματα επεξεργασίας δεδομένων που αποτελούνται από ένα πλήθος τεχνητών νευρώνων οργανωμένων σε δομές παρόμοιες με αυτές του ανθρώπινου εγκεφάλου. Συντομογραφία για πολυεπίπεδα ΤΝΔ: (p, m, m 2,..., m q, n) Για το σχήμα: p=, m =4, n=2 Κρυφό Επίπεδο 4 w4 Κάθε νευρώνας συνήθως συνδέεται με όλους τους νευρώνες του w48 w24 x w4 επόμενου επιπέδου (πλήρως w5 w49 y8 συνδεδεμένοι). 8 Στα επίπεδα και w25 5 w58 έχουμε απλούς μεταφορείς του w59 σήματος. Κανονικούς νευρώνες x2 w5 2 w68 έχουμε στα εσωτερικά (κρυφά) w6 επίπεδα. Πλήρως συνδεδεμένο ΤΝΔ απλής τροφοδότησης -4-2. x Φώτης Κόκκορας -22- Τεχνητή Νοημοσύνη Επίπεδο Εισόδου w6 w7 w27 w26 w7 6 7 w69 w78 w79 9 y9 Επίπεδο Εξόδου Μάθηση και Ανάκληση Μάθηση - larning (ή εκπαίδευση - training) είναι η διαδικασία της τροποποίησης της τιμής των βαρών του δικτύου, ώστε δοθέντος συγκεκριμένου διανύσματος να παραχθεί συγκεκριμένο διάνυσμα. Ανάκληση (rcall) είναι η διαδικασία του υπολογισμού ενός διανύσματος για συγκεκριμένο διάνυσμα και τιμές βαρών. Στις περισσότερες εφαρμογές ΤΝΔ χρησιμοποιείται μάθηση υπό επίβλεψη...δηλαδή τροφοδοτούμε το ΤΝΔ με γνωστά δεδομένα - και ως αποτέλεσμα της εκπαίδευσης θέλουμε το ΤΝΔ να "μάθει" την άγνωστη σχέση μεταξύ -......έτσι ώστε δίνοντας στο εκπαιδευμένο ΤΝΔ μία άγνωστη είσοδο, αυτό να μας επιστρέψει την έξοδο (απάντηση) βάσει όσων "έμαθε". Συνολικά: θεωρούμε ότι τα ζευγάρια input και output εκπαίδευσης, συσχετίζονται με κάποια άγνωστη σχέση (που θέλουμε να μάθουμε). Δείχνουμε στο ΤΝΔ γνωστά ζευγάρια input-output και του ζητούμε (μέσω της εκπαίδευσής του) να μοντελοποιήσει αυτή τη σχέση, δηλαδή να είναι σε θέση μετά την εκπαίδευση, όταν του δίνουμε άγνωστα input από το ίδιο πρόβλημα/φαινόμενο, να υπολογίζει σωστό output. Φώτης Κόκκορας -2- Τεχνητή Νοημοσύνη Υπό-προσαρμογή Χαρακτηριστικά Εκπαίδευσης Υπερ-προσαρμογή Καλή Προσαρμογή υποπροσαρμογή (undrfitting) ή ατελής μάθησης τα δεδομένα εκπαίδευσης δεν επαρκούν ή δεν είναι αντιπροσωπευτικά της σχέσης που θέλουμε να μάθει το ΤΝΔ ή το ΤΝΔ δεν είναι κατάλληλο (π.χ. σε μέγεθος ή δομή) υπερπροσαρμογή (ovrfitting) πολύ υψηλό ποσοστό επιτυχίας στα δεδομένα με τα οποία εκπαιδεύτηκε το ΤΝΔ αλλά χαμηλής ποιότητας πρόβλεψη για άλλα άγνωστα input από το ίδιο πρόβλημα - φαινόμενα απομνημόνευσης των δεδομένων εκπαίδευσης! το ισοδύναμο της "παπαγαλίας" στους ανθρώπους γνώση π.χ. του πώς λύνονται συγκεκριμένες ασκήσεις αλλά αδυναμία επίλυσης άγνωστων αλλά παρόμοιων ασκήσεων. Γι'αυτό η εκπαίδευση σταματά σε μικρό σφάλμα (πχ 5%) και όχι σε πολύ μικρό ή μηδενικό! Στο σχήμα, φαίνεται πόσο διαφορετικό output για ίδιο input μπορεί να παραχθεί εξαιτίας κακής εκπαίδευσης. Φώτης Κόκκορας -24- Τεχνητή Νοημοσύνη
Δεδομένα Εκπαίδευσης Χρήση σε κύκλους εκπαίδευσης που ονομάζονται εποχές (pochs) Η εκπαίδευση τερματίζεται όταν το κριτήριο ελέγχου της ποιότητας του δικτύου φτάσει σε κάποια επιθυμητή τιμή. Κριτήρια Ελέγχου Ποιότητας μέσο σφάλμα του συνόλου εκπαίδευσης μεταβολή του μέσου σφάλματος του συνόλου εκπαίδευσης Βασικές Ιδιότητες των ΤΝΔ Ικανότητα να μαθαίνουν μέσω παραδειγμάτων (larn by xampl). Η μεγάλη τους ανοχή σε σφάλματα (fault-tolrant) (όπως στον ανθρώπινο εγκέφαλο) αν στα δεδομένα υπάρχει "θόρυβος" (κακό input) μέχρι κάποιο, το ΤΝΔ θα εξακολουθεί να παράγει καλό output Η εξαιρετική ικανότητά τους για αναγνώριση προτύπων (pattrn rcognition). π.χ. οπτική αναγνώριση χαρακτήρων ή χειρόγραφου Φώτης Κόκκορας -25- Τεχνητή Νοημοσύνη ΤΝΔ Πρόσθιας Τροφοδότησης (fdforward) Επίπεδα:,, κρυφά επίπεδα Η ροή πληροφορίας είναι μιας κατεύθυνσης Είδος μάθησης: μάθηση με επίβλεψη. Τοπολογία του δικτύου: Δεν υπάρχει σαφής κανόνας για τον προσδιορισμό κρυφών επιπέδων, νευρώνων ανά, συνδεσμολογίας. Τα δεδομένα - βοηθούν στην εκτίμηση του αριθμού νευρώνων στα επίπεδα και. π.χ. για αναγνώριση των ψηφίων -9 συνίστανται νευρώνες (ένας για κάθε ψηφίο π.χ. =, =, 2=, =, κ.ο.κ.), ή 4 νευρώνες (βλ. άνω σχήμα) εφόσον όμως οι αριθμοί κωδικοποιηθούν σε αναπαράσταση 4-bit (=, =, 2=, =, κ.ο.κ) π.χ. για αναγνώριση κατηγοριών χωρίς σειρά (όπως χρώματα) συνίστανται νευρώνες γιατί αν χειρόγραφο ψηφιοποίηση 6x4 pixls =κόκκινο και =μπλέ ένα ΤΝΔ με έναν νευρώνα στην έξοδο θα έδινε απάντηση για την άγνωστη περίπτωση Χ (βλ. σχήμα) ότι ανήκει στην κατηγορία 2 (μέσος όρος και ), δηλαδή κατηγορία "πράσινο", που στο παράδειγμα του διαγράμματος είναι λάθος καθώς η θέση του x υποδεικνύει ότι είναι ισοπίθανα κόκκινο ή μπλε. Φώτης Κόκκορας -26- Τεχνητή Νοημοσύνη Χ 6x4=24 στοιχεία 2 2 2 2 2 2 2 2 2 2 2 2 4 στοιχεία κρυφά επίπεδα 5 4 bit κωδικοποίηση : κόκκινο 2: πράσινο : μπλε Τρόπος Χρήσης Ιστορικών Δεδομένων Σχηματική αναπαράσταση του τρόπου χρήσης των δεδομένων εκπαίδευσης. Ιστορικά Δεδομένα Ν εγγραφές για εκπαίδευση Μ πεδία ανά εγγραφή Παράδειγμα Παράδειγμα 2... Παράδειγμα Ν Χαρακτηριστικό...... Χαρακτηριστικό................. Χαρακτηριστικό Μ...... 8 Εξαρτημένη Μεταβλητή...... Μ στοιχεία 5 8 κρυφά επίπεδα Κ στοιχεία ------ Σχετίζονται με την τιμή της εξαρτημένης μεταβλητής Τα δεδομένα θα πρέπει να είναι (ή να μπορεί να γίνουν) αριθμητικά. Κατά τη χρήση του ΤΝΔ, η τιμή στους νευρώνες θα πρέπει να ερμηνευτεί κατάλληλα. Κρυφά Επίπεδα Ο αριθμός των νευρώνων στα κρυφά επίπεδα σχετίζεται με πολύπλοκο τρόπο με: τον αριθμό των νευρώνων στα επίπεδα και, τον αριθμό των διανυσμάτων εκπαίδευσης και την ύπαρξη ή όχι θορύβου σε αυτά, την πολυπλοκότητα της συνάρτησης ή της κατηγοριοποίησης που πρέπει να μάθει το ΤΝΔ τις συναρτήσεις ενεργοποίησης που χρησιμοποιούνται, τον αλγόριθμο εκπαίδευσης, κτλ. Εμπειρικός κανόνας για προβλήματα κατηγοριοποίησης: ο αριθμός νευρώνων στα κρυφά επίπεδα να είναι ικανοποιητικά μικρότερος από τον αριθμό διανυσμάτων εκπαίδευσης αιτία: για να αποφευχθεί απομνημόνευση πολλοί νευρώνες -> πολλά βάρη w -> πολλοί βαθμοί ελευθερίας του συστήματος -> ευκολία στο να απομνημονεύσει αντί να μάθει, δηλ. να συσχετίσει μέρος του δικτύου με δεδομένο διάνυσμα εκπαίδευσης! Συνήθως κάθε νευρώνας συνδέεται με όλους τους νευρώνες του επόμενου επιπέδου. Απαιτούνται αρκετές δοκιμές και πειραματισμοί για τον καθορισμό της τοπολογίας. Φώτης Κόκκορας -27- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -28- Τεχνητή Νοημοσύνη
Ανάστροφη Μετάδοση Λάθους Bac Propagation (/) Είναι ο πιο διαδεδομένος αλγόριθμος εκπαίδευσης σε ΤΝΔ πρόσθιας τροφοδότησης. Βασική Ιδέα: y εξαιτίας των τυχαίων αρχικών τιμών στα έξοδος βάρη θα παραχθεί έξοδος διαφορετική από τη γνωστή (σωστή) έξοδο που ορίζει =.. m το παράδειγμα εκπαίδευσης στο σφάλμα συνεισφέρουν όλοι οι νευρώνες ο αλγόριθμος επιτρέπει τον καταμερισμό βάρη w z =.. q του συνολικού σφάλματος στους επιμέρους νευρώνες, ακόμη και σε αυτούς που ανήκουν σε κρυφά επίπεδα βάρη vi Η αναπροσαρμογή των βαρών γίνεται i =.. n από το προς το (δηλαδή ανάστροφα). xi είσόδος ανάστροφο πέρασμα (bacward pass) ή ανάστροφη μετάδοση (bac propagation) κρυφό Ανάστροφη Μετάδοση Λάθους Bac Propagation (2/) Βασίζεται στο γενικευμένο κανόνα Δέλτα - ΓΚΔ (gnralizd Dlta rul) =.. m =.. q i =.. n βάρη w z βάρη vi xi y έξοδος είσόδος κρυφό input input n v x i i q w i z z f ( input ) f ( y f ( input ) f ( n v x ) i i q i i w z ) Αποδεικνύεται ότι (σχέσεις ΓΚΔ): για : w d z με t y ) f '( input ) t είναι η επιθυμητή έξοδος d είναι ο ρυθμός μάθησης για κρυφό : m ( f '( input ) w με wi d x i Φώτης Κόκκορας -29- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη Ανάστροφη Μετάδοση Λάθους Bac Propagation (/) Γενική μορφή αλγορίθμου (βλ. σχήμα). Παρατηρήσεις τα διανύσματα εκπαίδευσης δεν πρέπει να μεταβάλλονται: γιατί δεν σταθεροποιούνται τα βάρη (δεν επέρχεται σύγκληση) ο έλεγχος απόδοσης γίνεται με πρότυπα/δεδομένα αξιολόγησης (validation data) τροφοδοτούμε δηλαδή το ΤΝΔ με δεδομένα που δεν τα "γνωρίζει" (δηλ. δεν είναι από αυτά με τα οποία εκπαιδεύτηκε) και καταγράφουμε την έξοδο σε σχέση με τη αναμενόμενη τιμή συνήθως είναι τμήμα των δεδομένων - που δεν χρησιμοποιήθηκε στην φάση της εκπαίδευσης υπάρχουν άλλα πρότυπα εκπαίδευσης? Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη ΝΑΙ ΟΧΙ Αρχικοποίηση των Βαρών του Δικτύου Τροφοδότηση με Πρότυπο Εκπαίδευσης Υπολογισμός Σφάλματος στην Έξοδο Υπολογισμός Μεταβολής Βαρών ΟΧΙ Υπολογισμός Μέσου Τετραγώνου Σφάλματος είναι αποδεκτό το σφάλμα? ΝΑΙ ΤΕΛΟΣ Παράδειγμα Κύκλου Εκπαίδευσης με bacprop (/2) Έστω το MLP (2-2-) του σχήματος. Για είσοδο.,.9 και επιθυμητή έξοδο.9, να υπολογιστεί η διόρθωση των βαρών μετά από ένα κύκλο εκπαίδευσης με bac-propagation Θεωρήστε d=.25 και a= Όλες οι τιμές bias είναι.4 Επίπεδο : w d z με t y ) f '( input ) Κρυφό : f '( input ) m w με ( w d x ================================================================ Η είσοδος στους C και D είναι:.*. +.9*. +.4 =.7 Η έξοδος στους C και D είναι: /(+ -.7 ) =.668 i Φώτης Κόκκορας -2- Τεχνητή Νοημοσύνη i.4.4 C A..2 t=.9 E.4.2 D B Φ.....9 a κρυφό
Παράδειγμα Κύκλου Εκπαίδευσης με bacprop (2/2) Άρα το σήμα στον Ε είναι:.2*.668 +.2*.668 +.4 =.667 Το υπολογιζόμενο σήμα στον Ε είναι y=/(+ -.667 )=.66 Το επιθυμητό σήμα στον Ε είναι t=.9 Η παράγωγος της Φ() αποδεικνύεται ότι ισούται με: f ' = Φ()*(-Φ()) Άρα η διόρθωση στα βάρη του επιπέδου είναι: Δw =.25 * (.9-.66) * Φ(.667) * (-Φ(.667)) *.668 =.25*.29*.224*.668 =.9 Οπότε οι νέες τιμές στα βάρη του επιπέδου θα είναι:.2 -.9 =.9 (όμοια τα υπόλοιπα).4.4 C A..2 t=.9 E.4.2 D B Φ.....9 a κρυφό Προβλήματα στην Εκπαίδευση ΤΝΔ με bacprop (/2) τοπικά ελάχιστα η εκπαίδευση οδηγεί σε σετ τιμών για τα βάρη που εγκλωβίζουν το τρέχων σφάλμα σε τοπικό ελάχιστο της επιφάνειας σφάλματος ntwor paralysis οι τιμές στη συνάρτηση ενεργοποίησης είναι μεγάλες (π.χ. επειδή ένα ή περισσότερα βάρη έχουν μεγάλες τιμές) και αυτή "λειτουργεί" στο πλατό της, όπου η η παράγωγος έχει πολύ μικρή τιμή, με αποτέλεσμα τα βάρη να μην τροποποιούνται σημαντικά σε κάθε κύκλο επιλογή ρυθμού μάθησης (larning rat - LR) πολύ μικρή τιμή LR (σχ. αριστερά) κάνει το δίκτυο να μαθαίνει πολύ αργά LR=., 28 εποχές LR=.5, 46 εποχές LR=.2, εποχές Φώτης Κόκκορας -- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -4- Τεχνητή Νοημοσύνη Προβλήματα στην Εκπαίδευση ΤΝΔ με bacprop (2/2) Μια νέα έννοια πρώτα: ορμή (momntum): σταθερά μ που κρατά την κατεύθυνση της επικλινούς καθόδου περισσότερο σταθερή. Προσθήκη ενός επιπλέον όρου στον υπολογισμό της μεταβολής των βαρών που είναι ανάλογος της μεταβολής στον προηγούμενο κύκλο εκπαίδευσης. Δw N+ = Δw + μ*δw N Η ορμή σε κάποιες περιπτώσεις επιταχύνει την εκπαίδευση, σε άλλες όχι. επιλογή ρυθμού μάθησης (larning rat - LR) (συνέχεια από προηγούμενη) Πολύ μεγάλη τιμή LR (ειδικά σε συνδυασμό με μεγάλη τιμή ορμής (momntum) (βλ. σχήμα δεξιά) εμποδίζει τα βάρη (και το μέσο τετραγωνικό σφάλμα) να συγκλίνουν γρήγορα. Πόσα κρυφά επίπεδα/νευρώνες χρειάζονται; (/) Σε MLPs με κλασικές συναρτήσεις ενεργοποίησης στους κρυφούς νευρώνες, ένα κρυφό με ικανά μεγάλο αριθμό νευρώνων, μπορεί να λειτουργήσει ικανοποιητικά ως μηχανισμός "γενικής προσέγγισης" (univrsal approximation). Δεν υπάρχει θεωρία που να προβλέπει το ακριβές πλήθος των "κρυφών" νευρώνων. Παράδειγμα επίδρασης στην ικανότητα προσέγγισης με αύξηση κρυφών νευρώνων: Έστω ότι στόχος είναι η εκμάθηση της σχέσης του σχήματος αριστερά (Γκαουσιανός Λόφος - Gaussian Hill). Ένα MLP (2-6-) με κατάλληλες συναρτήσεις ενεργοποίησης (ταυτοτική/idntity στην έξοδο και σιγμοειδείς στο κρυφό ) μπορεί εύκολα να την προσεγγίσει αλλά με πολλές ακμές και κοιλάδες στην περιοχή που πρέπει να είναι επίπεδη (βλ. μεσαία εικόνα). Απαιτούνται μερικές δεκάδες νευρώνες στο κρυφό για να εξομαλυνθεί το πλατό με σχετική ακρίβεια (βλ. εικόνα δεξιά από MLP (2--)). Φώτης Κόκκορας -5- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -6- Τεχνητή Νοημοσύνη
Πόσα κρυφά επίπεδα/νευρώνες χρειάζονται; (2/) Έστω ότι στην έξοδο υπάρχει λογιστική συνάρτηση ενεργοποίησης. Στις αρνητικές τιμές η λογιστική συνάρτηση μηδενίζει την έξοδο. Αν στην προσέγγιση με MLP της Γκαουσιανής συνάρτησης-στόχου υπήρχαν έντονες αρνητικές εξάρσεις (σχ. αριστερά από 2--), η λογιστική συνάρτηση θα τις μηδένιζε (σχ. δεξιά από 2--). Πόσα κρυφά επίπεδα/νευρώνες χρειάζονται; (/) Η αξία των κρυφών επιπέδων φαίνεται χαρακτηριστικά στα επόμενα γραφήματα προσέγγισης της Γκαουσιανής συνάρτησης-στόχου: Σχ., 2, : χρήση MLP με κρυφό και βαθμιαία αύξηση των κρυφών νευρώνων Σχ. 4: χρήση MLP με 2 κρυφά επίπεδα Σχ.: 2-- Σχ.2: 2-9- Σχ.: 2-5- Σχ.4: 2-4-2- Όμως, η λογιστική συνάρτηση "κατεβάζει" και τις θετικές τιμές προς το... Γενικά, σε προβλήματα ταξινόμησης χωρίς θόρυβο στην είσοδο (nois-fr classificaton problms) ένα κρυφό λειτουργεί ικανοποιητικά. Προσθέτουμε σταδιακά κρυφούς νευρώνες μέχρι να εντοπίσουμε υπερμοντελοποίηση. Φώτης Κόκκορας -7- Τεχνητή Νοημοσύνη η ευελιξία που παρέχει το 2 ο κρυφό είναι εντυπωσιακή πρακτικά, 2 νευρώνες στο 2 ο κρυφό (Σχ. 4) εξασφαλίζουν ίδια περίπου ακρίβεια με 46 επιπλέον νευρώνες στο ο κρυφό (Σχ.) Φώτης Κόκκορας -8- Τεχνητή Νοημοσύνη Εφαρμογές Νευρωνικών Δικτύων (/2) Τα ΤΝΔ είναι δημοφιλή σε προβλήματα που περιέχουν μη-προβλέψιμες λειτουργίες ή/και τα οποία δεν είναι πλήρως κατανοητά ώστε να δοκιμαστούν μαθηματικά μοντέλα. Κατηγοριοποίηση: Ιατρικός τομέας: κατηγοριοποίηση ιατρικών εικόνων που προέρχονται από εξετάσεις υπέρηχων, ηλεκτροκαρδιογραφήματα, τεστ Παπανικολάου, κτλ. Τα ΤΝΔ καλούνται να κάνουν μια πρώτη διάγνωση, επιταχύνοντας σημαντικά τη χρονοβόρα διαδικασία ελέγχου των δεδομένων ιατρικών εξετάσεων από τους ιατρούς. Οι περιπτώσεις που κρίνονται ως ύποπτες, εξετάζονται στη συνέχεια από ιατρούς. Τομέας άμυνας: κατηγοριοποίηση εικόνων προερχόμενων από radar, sonar, κτλ. Γεωργία: έλεγχος καλλιεργειών σε συνδυασμό με δορυφορικές εικόνες Οικονομία/επιχειρήσεις: κατηγοριοποίηση πελατών βάσει αγοραστικών τους συνήθειων Αναγνώριση: Τραπεζικός τομέας: γνησιότητα υπογραφής και χαρτονομισμάτων. Πληροφορική και Τηλεπικοινωνίες: αναγνώριση ήχου, εικόνας και γραπτού κειμένου (χειρόγραφου ή τυπωμένου) οι εφαρμογές οπτικής αναγνώρισης χαρακτήρων (optical charactr rcognition OCR) είναι από τις πιο διάσημες εφαρμογές ΤΝΔ. Φώτης Κόκκορας -9- Τεχνητή Νοημοσύνη Εφαρμογές Νευρωνικών Δικτύων (2/2) Αποτίμηση: Τομέας άμυνας: παρακολούθηση στόχων. Ασφάλεια: εντοπισμός κίνησης (motion dtction), ταύτιση δακτυλικών αποτυπωμάτων, ανάλυση εικόνας σε συστήματα επιτήρησης. Μηχανολογία: παρακολούθηση, επιθεώρηση και έλεγχος προϊόντων. Πρόβλεψη: Οικονομία/επιχειρήσεις: πρόβλεψη ισοτιμίας νομισμάτων και τιμών μετοχών (συνήθως βραχυπρόθεσμη), πρόβλεψη πωλήσεων, κτλ. Γεωργία: πρόβλεψη παραγωγής, κυρίως με χρήση δορυφορικών εικόνων (π.χ. σιτηρά που πρόκειται να παράγουν πολύ έχουν διαφορετική απεικόνιση από αυτά που δεν θα αποδώσουν η φωτογράφιση γίνεται συνήθως στο υπέρυθρο φάσμα) Μετεωρολογία: μοντέλα πρόβλεψης καιρού ============================================================= Αν και ένα εκπαιδευμένο ΤΝΔ μπορεί να αναγνωρίσει δεδομένα τα οποία δεν έχει δει ποτέ του, αυτό δεν συμβαίνει στην περίπτωση που τα δεδομένα δεν ανήκουν στο ίδιο φαινόμενο/πρόβλημα με δεδομένα του οποίου έχει εκπαιδευτεί. Δεν υπάρχουν ΤΝΔ γενικού σκοπού τα οποία να μπορούν να αντιμετωπίζουν διάφορα ετερογενή προβλήματα. Φώτης Κόκκορας -4- Τεχνητή Νοημοσύνη
Αντί επιλόγου... Στο Matlab υπάρχει toolbox για μοντελοποίηση και εκπαίδευση ΤΝΔ (βλ. εικόνα). Υπάρχουν πολλά είδη νευρωνικών δικτύων (π.χ. Kohonn) με κάθε είδος να έχει ιδιαίτερες ικανότητες και χαρακτηριστικά (π.χ. λειτουργία χωρίς εκπαίδευση). Στα προηγούμενα αναφερθήκαμε στην πιο κλασική περίπτωση, τα multi-layrprcptrons (mlp). Στην εικόνα βλέπετε ένα mlp 8--5- Απλούστερη Εφαρμογή για Εκπαιδευτικούς Σκοπούς http://aispac.org/nural/ Φώτης Κόκκορας -4- Τεχνητή Νοημοσύνη Φώτης Κόκκορας -42- Τεχνητή Νοημοσύνη