Υπολογιστική Νοημοσύνη Μάθημα 12: Παραδείγματα Ασκήσεων 2
Δίκτυα Πολλών Επιπέδων Με μη γραμμικούς νευρώνες Έστω ένα πρόβλημα κατηγοριοποίησης, με δύο βαθμούς ελευθερίας (x, y) και δύο κατηγορίες (A, B). Αυτό το πρόβλημα δεν είναι γραμμικά διαχωρίσιμο, άρα δεν μπορεί να "λυθεί" από έναν απλό νευρώνα. Παράδειγμα: οι άξονες θα μπορούσαν να είναι η ηλικία (x) και το εισόδημα (y) ενός ανθρώπου οι δύο κατηγορίες να αντιπροσωπεύουν το είδος του αυτοκινήτου (A=σπορ, B=οικογενειακό) που προτιμά. 2
Δίκτυα Πολλών Επιπέδων Με μη γραμμικούς νευρώνες (2) Χρησιμοποιώντας έναν σιγμοειδή νευρώνα μπορούμε να χωρίσουμε το επίπεδο σε δύο ημιεπίπεδα.
Δίκτυα Πολλών Επιπέδων Με μη γραμμικούς νευρώνες (3) Χρησιμοποιώντας τρεις σιγμοειδείς νευρώνες μπορούμε μπορούμε να χωρίσουμε το επίπεδο σε ημιεπίπεδα με τρεις διαφορετικούς τρόπους.
Δίκτυα Πολλών Επιπέδων Με μη γραμμικούς νευρώνες (4) Η τομή των τριών ημι-επιπέδων μπορεί να ληφθεί από έναν σιγμοειδή νευρώνα με τρεις εισόδους, που λειτουργεί ως πύλη AND.
Δίκτυα Πολλών Επιπέδων Με μη γραμμικούς νευρώνες (5) ΣΥΜΠΕΡΑΣΜΑ Με αυτή τη μέθοδο μπορούμε να εκπαιδεύσουμε ένα νευρωνικό να αναγνωρίζει οποιοδήποτε σύνολο περιβάλλεται από κυρτό πολύγωνο στο επίπεδο (ή γενικότερα από κυρτή υπερεπιφάνεια σε οποιονδήποτε υπερ-χώρο).
Δίκτυα Πολλών Επιπέδων Με μη γραμμικούς νευρώνες (5) Μη κυρτές Περιοχές Τι γίνεται με προβλήματα όπου οι κατηγορίες δεν περιβάλλονται από κυρτό πολύγωνο; (όπως στο διπλανό σχήμα)
Μη κυρτές περιοχές (1/2) Για το παράδειγμα του διπλανού σχήματος μπορούμε να εκπαιδεύσουμε δύο νευρωνικά δίκτυα να αναγνωρίζουν τις δύο κυρτές περιοχές (όπως στο παράδειγμα που προηγήθηκε) και στη συνέχεια να συνδυάσουμε τις επιμέρους εξόδους τους με έναν σιγμοειδή νευρώνα που υλοποιεί τη συνάρτηση OR.
Μη κυρτές περιοχές (2/2) Συνήθως η ίδια λειτουργία μπορεί να επιτευχθεί με λιγότερα επίπεδα και λιγότερους νευρώνες.
Ομαδοποίηση με Ανταγωνιστική Μάθηση - Δίκτυα Kohonen Ένα στρώμα με ανταγωνιστικούς νευρώνες λειτουργεί ως εξής: Όλοι οι νευρώνες δέχονται το σήμα από τους νευρώνες του προηγούμενου επιπέδου (συνήθως το επίπεδο εισόδου). Κάθε νευρώνας υπολογίζει την ευκλείδια απόσταση του διανύσματος εισόδου Χ από το διάνυσμα των βαρών των εισόδων του W i : d= X-W i Ο νευρώνας με τη μικρότερη απόσταση παράγει έξοδο 1, ενώ όλοι οι υπόλοιποι παράγουν έξοδο 0. Γενικά δεν υπάρχει επόμενο επίπεδο μετά το επίπεδο με ανταγωνιστικούς νευρώνες.
Παράδειγμα
Ανταγωνιστική Μάθηση Η μάθηση σε ένα επίπεδο ανταγωνιστικών νευρώνων γίνεται χωρίς επίβλεψη. Τα παραδείγματα εκπαίδευσης (μόνο είσοδοι) παρουσιάζονται στο δίκτυο διαδοχικά (και με τυχαία σειρά). Για κάθε παράδειγμα εκπαίδευσης βρίσκεται ο νευρώνας i με την μικρότερη ευκλείδια απόσταση d= Wi-X και τα βάρη του αλλάζουν ώστε να πλησιάσουν περισσότερο το τρέχον παράδειγμα, σύμφωνα με τη σχέση: ΚΑΝΟΝΑΣ ΜΑΘΗΣΗΣ KOHONEN Wi'=Wi+a(X-Wi) όπου: i: Ο νευρώνας που κέρδισε. Wi: Το προηγούμενο διάνυσμα βαρών του νευρώνα i. Wi': Το νέο διάνυσμα βαρών του νευρώνα i. Χ: Το τρέχον διάνυσμα εισόδου a: Ο ρυθμός εκπαίδευσης Τα βάρη των υπολοίπων νευρώνων παραμένουν αμετάβλητα.
Άσκηση (1/4) Έστω ότι έχουμε ένα δίκτυο με δύο εισόδους και 6 διανύσματα εκπαίδευσης: p=[ 0.1 0.8 0.1 0.2 0.9 0.9 0.2 0.9 0.1 0.1 0.8 0.9] Τα διανύσματα εισόδου ομαδοποιούνται σε δύο ομάδες: Αυτά που είναι κοντά στο (0,0) Αυτά που είναι κοντά στο (1,1) Κατασκευάζουμε ένα νευρωνικό δίκτυο ενός επίπεδου με δύο ανταγωνιστικούς νευρώνες. Μετά από την εκπαίδευση τα βάρη των δύο νευρώνων έχουν γίνει: 1ος νευρώνας: W 1 =[0.8660 0.8660]' 2ος νευρώνας: W 2 =[0.1325 0.1337]'
Άσκηση (2/4) Στο διπλανό παράδειγμα με αστεράκι φαίνονται τα 6 παραδείγματα εκπαίδευσης και με κύκλο φαίνονται τα βάρη των δύο νευρώνων.
Άσκηση (3/4) Είδαμε στο παράδειγμα ότι είχαμε δύο ομάδες (clusters) παραδειγμάτων εκπαίδευσης. Με αυτό το σκεπτικό επιλέξαμε ένα δίκτυο με 2 νευρώνες. Θεωρώντας τα βάρη των νευρώνων ως διανύσματα στο χώρο των διανυσμάτων εκπαίδευσης (στην προκειμένη περίπτωση ο χώρος δύο διαστάσεων), κάθε ένα από τα διανύσματα βαρών μετατοπίσθηκε στο "κέντρο βάρους" κάθε μιας από τις ομάδες παραδειγμάτων. Εάν εκτελέσουμε ξανά την εκπαίδευση, ενδέχεται κάθε νευρώνας να "μάθει" την άλλη ομάδα από αυτή που έμαθε την πρώτη φορά.
Άσκηση (3/4) Z=1 Νευρώνας 1 d=3.04 x 0 Παραδείγματα Εκπαίδευσης: p=[ 0.1 0.8 0.1 0.2 0.9 0.9 0.2 0.9 0.1 0.1 0.8 0.9] y Νευρώνας 2 d=0.5 1 Έστω ότι τα d μετά από τα δύο πρώτα παραδείγματα εκπαίδευσης είναι: Μετά το πρώτο παράδειγμα έχουμε: d1 = 3.04 και d2=0.50 Μετά το δεύτερο παράδειγμα έχουμε: d1 = 0.85 και d2=1.85 Ποια θα είναι τα βάρη μετά την εκτέλεση του δεύτερου παραδείγματος εκπαίδευσης;