Τεχνητά Νευρωνικά ίκτυα και Εφαρµογές σε Σύγχρονα Προγραµµατιστικά Περιβάλλοντα
|
|
- Μελίτη Αλεβίζος
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Τεχνητά Νευρωνικά ίκτυα και Εφαρµογές σε Σύγχρονα Προγραµµατιστικά Περιβάλλοντα Μεταπτυχιακή ιπλωµατική Εργασία Γεώργιος Σ. Τεµπονέρας Πανεπιστήµιο Πατρών Τµήµα Μαθηµατικών Τµήµα Μηχανικών Η/Υ και Πληροφορικής ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών Μαθηµατικά των Υπολογιστών και των Αποφάσεων Επιβλέπων : Καθηγητής Μιχαήλ Ν. Βραχάτης (Μάιος 2018) Πάτρα
2 Πανεπιστήµιο Πατρών, Τµήµα Μαθηµατικών Γεώργιος Σ. Τεµπονέρας Με την επιφύλαξη παντός δικαιώµατος
3 Τεχνητά Νευρωνικά ίκτυα και Εφαρµογές σε Σύγχρονα Προγραµµατιστικά Περιβάλλοντα Μεταπτυχιακή ιπλωµατική Εργασία Γεώργιος Σ. Τεµπονέρας Πανεπιστήµιο Πατρών Τµήµα Μαθηµατικών Τµήµα Μηχανικών Η/Υ και Πληροφορικής ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών Μαθηµατικά των Υπολογιστών και των Αποφάσεων Τριµελής Επιτροπή Μ.Ν. Βραχάτης Καθηγητής Παν. Πατρών Π. Αλεβίζος Αναπλ. Καθηγητής Παν. Πατρών Σ. Κωτσιαντής Λέκτορας Παν. Πατρών Πάτρα Μάιος 2018
4
5 Αυτή η ιπλωµατική Εργασία στοιχειοθετήθηκε µε το πρόγραµµα LaT E X (διανοµές MiKTeX και te- TeX). Η συγγραφή έγινε µε τη βοήθεια του προγράµµατος WinEdt (στο λειτουργικό σύστηµα Microsoft Windows 10). Η εκπαίδευση των ΤΝ έγινε στην έκδοση (R2010a) του προγραµµατιστικού περιβάλλοντος MATLAB και της έκδοσης του προγραµµατιστικού περιβάλλοντος RStudio. Η τελική ηλεκτρονική µορφή (Portable DocumentFormat PDF) δηµιουργήθηκε µε το πρόγραµµα PDFLaT E X και η επεξεργασία των σχηµάτων έγινε µε το πρόγραµµα Adobe Photoshop.
6
7 Στον δάσκαλό µου για την προτροπή και την εµπιστοσύνη του, τη µητέρα και τον πατέρα µου για τη στήριξη και την αγάπη τους
8 Περίληψη Σκέφτοµαι, άρα υπάρχω. Ρενέ Ντεκάρτ ( µ.χ) Τα Τεχνητά Νευρωνικά ίκτυα αποτελούν µια µορφή τεχνητής νοηµοσύνης, τα οποία αποτελούνται από ένα σύνολο απλών, διασυνδεδεµένων και προσαρµοστικών µονάδων και αποτελούν µια προσπάθεια προσέγγισης της λειτουργίας του ανθρώπινου εγκεφάλου. Μπορούν να εκτελούν υπολογισµούς µε παράλληλο µαζικό τρόπο και η αρχιτεκτονική τους ϐασίζεται σε αυτή των Βιολογικών Νευρωνικών ικτύων. Ο σκοπός της παρούσας διπλωµατικής εργασίας είναι η µελέτη, η υλοποίηση και η εκπαίδευση Τεχνητών Νευρωνικών ικτύων (ΤΝ ) στα προγραµµατιστικά περιβάλλοντα MATLAB και R. Πιο συγκεκριµένα, στο Κεφάλαιο 1 παρατίθονται εισαγωγικές έννοιες και όροι αναφορικά µε τα ΤΝ. Επεξηγείται ο τρόπος λειτουργίας των ΤΝ, µέσω της περιγραφής των ϐασικών χαρακτηριστικών ενός ΤΝ, των αρχιτεκτονικών που χρησιµοποιούνται ευρέως στον χώρο, καθώς και των τρόπων σύµφωνα µε τους οποίους τα ΤΝ εκπαιδεύονται κάνοντας ιδιαίτε- ϱη αναφορά στον αλγόριθµο οπισθοδιάδοσης σφάλµατος (Error-backpropagation) και στο γενικευµένο κανόνα έλτα (Generalized Delta Rule). Το Κεφάλαιο 2 αφιερώνεται στην περιγραφή των δυνατοτήτων που παρέχουν τα παραπάνω προγραµµατιστικά περιβάλλοντα αναφορικά µε τα ΤΝ. Επιπλέον γίνεται περαιτέρω µελέτη αναφορικά µε τους τοµείς εφαρµογής των ΤΝ καθώς επίσης και η περιγραφή των ϐασικών προβληµάτων τα οποία προσεγγίζουν. Στο Κεφάλαιο 3 γίνεται η καταγραφή των διεργασιών που µπορούν να γίνουν µε σκοπό την ανάπτυξη εφαρµογών. Ειδικότερα, παρουσιάζεται για το εκάστοτε περιβάλλον, το πλήθος των προσφερόµενων επιλογών από ϐιβλιοθήκες και η δυνατότητα τροποποίησης των αλγορίθµων εκπαίδευσης. Στο Κεφάλαιο 4 παρουσιάζονται αποτελέσµατα από τη χρήση των νευρωνικών δικτύων στο MATLAB και την R για δύο διαφορετικά προβλήµατα που µπορούν να αντιµετωπιστούν µε τη χρήση ΤΝ. ίνεται ιδιαίτερη έµφαση στο υπολογιστικό κόστος για την ανάπτυξη εφαρ- µογών (χρόνος εκπαίδευσης), καθώς και στην αξιολόγηση της στατιστικής σηµαντικότητας των αποτελεσµάτων ως προς την υπεροχή ενός ΤΝ έναντι των υπολοίπων.
9
10 Ευχαριστίες Η παρούσα διπλωµατική εργασία δεν ϑα µπορούσε να ολοκληρωθεί χωρίς τη ϐοήθεια και την συµπαράσταση πολλών ανθρώπων, οι οποίοι συνέβαλαν ο καθένας µ ένα µικρό ή µεγάλο λιθαράκι για να ϕτάσω µέχρι εδώ. Θα ήθελα καταρχήν να ευχαριστήσω τον καθηγητή µου κ. Μ.Ν. Βραχάτη για την ευκαιρία που µου πρόσφερε να ασχοληθώ µε την παρούσα εργασία. Η υλοποίηση της παρούσας εργασίας οφείλεται κατά ένα πολύ µεγάλο ϐαθµό στην καθοδήγηση και την υποστήριξή του κατά τη διάρκεια της εκπόνησής της. Επιπλέον ϑα ήθελα να ευχαριστήσω ϑερµά τα άλλα δύο µέλη της τριµελούς επιτροπής, τους κ.κ. Π. Αλεβίζο και Σ. Κωτσιαντή για τη ϐοήθεια και τα εύστοχα σχόλια που παρατήρησαν. Η σκυτάλη των ευχαριστιών παραδίδεται στην οικογένεια του εργαστηρίου Υπολογιστικής Νοηµοσύνης (CI Lab). Θα ξεκινήσω µε τον Μάκαρο. Ο Υπ. ρ. Σταµάτιος-Άγγελος Αλεξανδρόπουλος µε τη συνεχή υποστήριξη και τη ϐοηθεία του τόσο κατά τη διάρκεια ϕοίτησης στο µεταπτυχιακό κύκλο σπουδών, όσο και κατά τη διάρκεια εκπόνησης της διπλωµατικής εργασίας µε ϐοήθησε τα µέγιστα και τον ευχαριστώ που είχα την πολυτέλεια να µπορώ να έχω απαντήσεις σε πάρα πολλά ϑέµατα, σχεδόν πριν καν διατυπώσω τις αντίστοιχες ερωτήσεις. Στη συνέχεια, ϑα ήθελα να ευχαριστήσω τον αδερφό µου επίκουρο του τµήµατος Μηχανικών Πληροφορικής Τ.Ε. κ. Σταύρο Αδάµ για τις πολύτιµες συµβουλές του στο προγραµµατιστικό κοµµάτι της διπλωµατικής, καθώς µε ϐοήθησε να εξοικειωθώ γρήγορα µε αυτό. Κλείνοντας το κεφάλαιο CI Lab δε ϑα µπορούσα να παραλείψω τη συµφοιτήτριά µου Λίνα Παπαδοπούλου για την υποµονή και της καίριες παρεµβάσεις της όταν τα πράγµατα δυσκόλευαν. Πριν όµως ϕτάσω στο σηµείο της εκπόνησης της διπλωµατκής εργασίας, πέρασαν τρία εξάµηνα σπουδών στα οποία συναστράφηκα µε κάποιους συναδέλφους που γνώριζα και κάποιους όχι και ϑα ήταν άδικο να µην τους αναφέρω. Πρωτίστως ϑα ήθελα να ευχαριστήσω τον παιδικό ϕίλο και συµφοιτητή Γιώργο Ζαφειράκη για την ακούραστη διάθεσή του να προσφέρει όσα µπορεί σε όλες τις εκφάνσεις της πανεπιστηµιακής και εξω-πανεπιστηµακής Ϲωής. Επειτα, ϑα ήθελα να ευχαριστήσω ϑερµά τις συµφοιτήτριές µου Βασιλική-Ελένη Τσόλκα και Ιουλία Γιαννοπούλου για τη ϐοήθεια, τη στήριξη και τις συµβουλές τους. Επίσης, ϑα ήθελα να ευχαριστήσω τους ϕίλους µου Λεωνίδα, Σωτήρη Θ, Νίκο, Σωτήρη Μπ, Χρήστο Π, Γιώργο, Ανδρέα, Κώστα, Εριφύλη και Μαρία Β για τις πολλές καλές στιγµές που περάσαµε τα τελευταία χρόνια, την υποµονή καθώς επίσης και τη διαρκή συµπαράσταση που επέδειξαν. Κλείνοντας, ϑα ήθελα να εκφράσω την απεριόριστη ευγνωµοσύνη µου στην οικογένειά µου. Ευχαριστώ τη µητέρα µου Μαρίνα, τον πατέρα µου Σπύρο και τον αδερφό µου Γιάννη για τη στήριξη, την εµψύχωση, την υποµονή και την αγάπη τους. Τέλος, ϑα ήταν παράλειψή µου να µην ευχαριστήσω τις τέσσερεις επιπλέον µαµάδες µου, που για διαφορετικούς λόγους µου έδωσαν το κίνητρο και τη δύναµη να ϕτάσω µέχρι το τέλος της διαδροµής. Γεώργιος Σ. Τεµπονέρας Πάτρα, 2018.
11
12 Περιεχόµενα Περίληψη Ευχαριστίες 1 Γνωσιακό Υπόβαθρο Εισαγωγή Ηλεκτρονικοί Υπολογιστές και Τεχνητά Νευρωνικά ίκτυα Βιολογικά νευρωνικά δίκτυα Ο νευρώνας Η δοµή του νευρώνα Συνδεσµολογία Η λειτουργία Τεχνητά Νευρωνικά ίκτυα Ο τεχνητός νευρώνας Ο αισθητήρας Μάθηση στον απλό νευρώνα Γραµµική διαχωρισιµότητα Μετάδοση του σήµατος µέσα στο ΤΝ Σύγκριση τεχνητών-ϐιολογικών Νευρωνικών ικτύων Βασικές συναρτήσεις ενεργοποίησης Αρχιτεκτονικές Νευρωνικών ικτύων ίκτυα εµπρόσθιας τροφοδότησης Αναδροµικά δίκτυα Η διαδικασία µάθησης Επιβλεπόµενη µάθηση Μη επιβλεπόµενη µάθηση Επεξεργασία δεδοµένων πριν την εκπαίδευση Αντιµετώπιση προβληµάτων Ικανότητα γενίκευσης Εκτίµηση της ικανότητας γενίκευσης Υπερεκπαίδευση Μέθοδοι αποφυγής υπερεκπαίδευσης Χαρακτηριστικά Τεχνητών Νευρωνικών ικτύων Αλγόριθµοι εκπαίδευσης Αλγόριθµος Perceptron Αλγόριθµος Backpropagation Αναλυτική περιγραφή της µεθόδου Ρυθµός µάθησης αλγόριθµου Backpropagation Κριτήρια τερµατισµού αλγόριθµου Backpropagation Γενικευµένος κανόνας έλτα Μειονεκτήµατα και προβλήµατα Εφαρµογές ΤΝ ίκτυα Πολλαπλών Επιπέδων
13 1.14 ίκτυα Ακτινικής Βάσης Εκπαίδευση των ικτύων Ακτινικής Βάσης Σύγκριση δικτύων MLP και RBF Πιθανολογικά Νευρωνικά ίκτυα Πλεονεκτήµατα και µειονεκτήµατα Θεωρία ταξινόµησης των ΠΝ Σύνολο εκπαίδευσης των ΠΝ Αναδροµικά ΤΝ ίκτυα Hopfield Εκπαίδευση δικτύου Hopfield ίκτυα Hopfield µε συνεχείς τιµές Στατιστικά δίκτυα Hopfield Παρατηρήσεις ίκτυα ανταγωνιστικής µάθησης Η δοµή του δικτύου Kohonen Εκπαίδευση του δικτύου Kohonen Βαθιά Νευρωνικά ίκτυα Επιβλεπόµενη µάθηση στα Βαθιά Νευρωνικά ίκτυα Συνελικτικά Νευρωνικά ίκτυα Πλεονεκτήµατα και µειονεκτήµατα των ΤΝ Μηχανές ιανυσµατικής Υποστήριξης Βέλτιστο υπερεπίπεδο για γραµµικώς διαχωρίσιµα πρότυπα Βέλτιστο υπερεπίπεδο για µη γραµµικώς διαχωρίσιµα πρότυπα Συµπεράσµατα Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Μελέτη ενός ΤΝ Αριθµός επιπέδων-στρωµάτων Αριθµός νευρώνων ανά επίπεδο Αρχικοποίηση ϐαρών Οριοθέτηση ϱυθµού µάθησης Μορφή µάθησης Τρόπος αναπροσαρµογής συναπτικών ϐαρών Επιπλέον στοιχεία Ανάπτυξη εφαρµογών µε ΤΝ Τεχνητά Νευρωνικά ίκτυα και MATLAB Neural Network toolbox Neural Fitting app Neural Pattern Recognition app Neural Clustering app Neural Time Series app SVM toolbox Βασικές εντολές για Τεχνητά Νευρωνικά ίκτυα Τεχνητά Νευρωνικά ίκτυα και R Πακέτο AMORE Πακέτο neuralnet Πακέτο nnet Πακέτο frfb Πακέτο e Πακέτο kohonen Πακέτο RSNNS
14 2.4.8 Πακέτο pnn Τεχνητά Νευρωνικά ίκτυα και WEKA Προγραµµατιστικά περιβάλλοντα MATLAB: Προσφερόµενες επιλογές Προεπεξεργασία των δεδοµένων ηµιουργία ΤΝ Εκπαίδευση ΤΝ R: Προσφερόµενες επιλογές Ταξινόµηση πακέτων ανά τύπο δικτύου Παρουσίαση δυνατοτήτων κάθε πακέτου Εφαρµογές ΤΝ Ταξινόµηση προτύπων Εφαρµογή στο προγραµµατιστικό περιβάλλον MATLAB Εφαρµογή στο προγραµµατιστικό περιβάλλον R Σύγκριση απόδοσης των δικτύων Προσέγγιση συνάρτησης Εφαρµογή στο προγραµµατιστικό περιβάλλον MATLAB Εφαρµογή στο προγραµµατιστικό περιβάλλον R Σύγκριση της απόδοσης των δικτύων
15
16 Κατάλογος Σχηµάτων 1.1 Ο ϕυσικός νευρώνας Μορφολογία σύναψης Αντιστοιχία ϐιολογικού-τεχνητού νευρώνα Το µοντέλο του τεχνητού νευρώνα ιαχωρισµός κλάσεων Η ϐηµατική συνάρτηση Η συνάρτηση προσήµου Η γραµµική συνάρτηση ενεργοποίησης Piecewise-Linear Function Η σιγµοειδής συνάρτηση Τοπολογίες νευρωνικών δικτύων ίκτυο εµπρόσθιας τροφοδότησης Αναδροµικό δίκτυο Επιφάνεια σφάλµατος Α)Υποπροσαρµογή Β)Υπερπροσαρµογή Γ)Καλή προσαρµογή Πρόωρο σταµάτηµα Οπισθοδιάδοση σφάλµατος Πολυεπίπεδο δίκτυο Παραδείγµατα πολυεπίπεδων δικτύων ίκτυο RBF Γραφική παράσταση συνάρτησης RBF Το δίκτυο PNN Σχέση µεταξύ s και σωστής ταξινόµησης ίκτυο Hopfield Ανταγωνιστικό ΤΝ ίκτυο Kohonen Ορθογώνια και εξαγωνική γειτονιά σε δίκτυο Kohonen Προς τα πίσω πέρασµα Η συνάρτηση ReLU, f(x) = max(0, x) Το ϐέλτιστο υπερεπίπεδο διαχωρισµού Το (x i, d i ) πάνω στη σωστή µεριά του υπερεπιπέδου απόφασης (σωστή ταξινόµηση) Το (x i, d i ) πάνω στη λάθος µεριά του υπερεπιπέδου απόφασης (λάθος ταξινόµηση) NN Network/Data Manager Παράθυρο επιλογής εισόδων δικτύου Παράθυρο επίβλεψης εκπαίδευσης δικτύου Παράθυρο Neural Fitting Παράθυρο Neural Pattern Recognition Παράθυρο Neural Clustering Παράθυρο Neural Time Series Παράδειγµα αισθητήρα- είγµατα
17 3.2 Παράδειγµα αισθητήρα-εκπαίδευση Παράδειγµα αισθητήρα- ιαχωριστική γραµµή Τοπολογία gridtop Τοπολογία hextop Τοπολογία randtop Απόσταση boxdist εδοµένα εκπαίδευσης για το πρόβληµα 2 classes - 9 groups Μέσο ποσοστό επιτυχίας για τα MLP δίκτυα (µόνο για όσα συνέκλιναν) Μέσο ποσοστό επιτυχίας για τα MLP δίκτυα (ανεξαρτήτως σύγκλισης) Μέσος χρόνος εκπαίδευσης για τα MLP δίκτυα Μέσο ποσοστό επιτυχίας για τα RBF δίκτυα Μέσος χρόνος εκπαίδευσης για τα RBF δίκτυα Μέσο ποσοστό επιτυχίας για τα PNN δίκτυα Μέσος χρόνος εκπαίδευσης για τα PNN δίκτυα ιαγράµµατα συνόρου απόφασης για διαφορετικά είδη συναρτήσεων πυρήνα ιαγράµµατα συνόρου απόφασης για διαφορετικές τιµές της διασποράς της συνάρτησης πυρήνα rbf Μέσο ποσοστό επιτυχίας για τα SVM δίκτυα Μέσος χρόνος εκπαίδευσης για τα SVM δίκτυα Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου nnet (µόνο για όσα συνέκλιναν) Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου nnet (ανεξαρτήτως σύγκλισης) Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου pnn Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου e Σύγκριση δικτύων του πακέτου e1071 ως προς την κανονικοποίηση Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου neuralnet (µόνο για όσα συνέκλιναν) Μέσο ποσοστό επιτυχίας σε σχέση µε το ϱυθµό µάθησης Μέσο ποσοστό επιτυχίας σε σχέση µε την αρχιτεκτονική Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου neuralnet (ανεξαρτήτως σύγκλισης) Μέσο ποσοστό επιτυχίας για τα δίκτυα MLP του πακέτου RSNNS Μέσο ποσοστό επιτυχίας αντιπροσώπων Γραφική παράσταση της συνάρτησης y = cos(x) Σύγκριση προσεγγίσεων µε traingd σε σχέση µε το στόχο Σύγκριση προσεγγίσεων µε trainlm σε σχέση µε το στόχο Σύγκριση δικτύων αρχιτεκτονικής των δύο αλγορίθµων µε το στόχο Σύγκριση δικτύων αρχιτεκτονικής των δύο αλγορίθµων µε το στόχο Σύγκριση δικτύων αρχιτεκτονικής των δύο αλγορίθµων µε το στόχο Σύγκριση δικτύων RBF ως προς τη διασπορά Σύγκριση δικτύων RBF ως προς το κατώφλι για το στόχο ιαγράµµατα συγκρίσεων ανά τοπολογία για τα δίκτυα του πακέτου AMORE ιαγράµµατα συγκρίσεων ανά αλγόριθµο εκπαίδευσης για τα δίκτυα του πακέτου AMORE
18 Κατάλογος Πινάκων 1.1 ιαφορές Η/Υ και ΤΝ Περιγραφή παραµέτρων είκτες αξιολόγησης-καταλληλότητας για ανταγωνιστικά δίκτυα Παραδείγµατα συναρτήσεων πυρήνα Σύγκριση SVM και νευρωνικών δικτύων Αναπαράσταση ταξινόµησης προτύπων Αλγόριθµοι εκπαίδευσης Συναρτήσεις ενεργοποίησης Συναρτήσεις SVM για πρόβληµα ταξινόµησης Συναρτήσεις SVM για πρόβληµα παλινδρόµησης Η εντολή new Ορίσµατα-έξοδοι εντολής train Παράµετροι εκπαίδευσης Ορίσµατα-έξοδοι εντολής adapt Ορίσµατα-έξοδοι εντολής sim Αναπαράσταση δικτύου net ίκτυο net µε νευρώνες και συνάρτηση ενεργοποίησης ίκτυο net µε τρεις νευρώνες εξόδου ίκτυο net µε δύο νευρώνες εξόδου Συγκεντρωτική παρουσίση των υλοποιήσεων SVM στο περιβάλλον R ίκτυα MLP για το πρόβληµα ταξινόµησης 2 classes - 9 groups Παράµετροι τερµατισµού εκπαίδευσης για το πρόβληµα ταξινόµησης 2 classes - 9 groups ίκτυα RBF για το πρόβληµα ταξινόµησης 2 classes - 9 groups ίκτυα PNN για το πρόβληµα ταξινόµησης 2 classes - 9 groups Μηχανές SVM για το πρόβληµα ταξινόµησης 2 classes - 9 groups ίκτυα MLP για χρήση µε το πακέτο nnet Μέσος χρόνος εκπαίδευσης των MLP δικτύων µε το πακέτο nnet ίκτυα PNN για το πακέτο pnn Μέσος χρόνος εκπαίδευσης των PNN δικτύων µε το πακέτο pnn ίκτυα SVM µε διαφορετικούς πυρήνες για το πακέτο e ίκτυα SVM µε διαφορετικές διασπορές για το πακέτο e Μέσος χρόνος εκπαίδευσης των SVM για το πακέτο e ίκτυα MLP για χρήση µε το πακέτο neuralnet Μέσος χρόνος εκπαίδευσης των MLP δικτύων µε το πακέτο neuralnet ίκτυα MLP για το πρόβληµα ταξινόµησης 2 classes - 9 groups στην R µε το πακέτο RSNNS Μέσος χρόνος εκπαίδευσης των MLP δικτύων µε το πακέτο RSNNS Ταξινόµηση δικτύων MLP (MATLAB) ανά απόδοση Ταξινόµηση δικτύων RBF (MATLAB) ανά απόδοση Ταξινόµηση δικτύων PNN (MATLAB) ανά απόδοση
19 4.20 Ταξινόµηση δικτύων SVM (MATLAB) ανά απόδοση Ταξινόµηση δικτύων πακέτου RSNNS ανά απόδοση Ταξινόµηση δικτύων πακέτου neuralnet ανά απόδοση Ταξινόµηση δικτύων πακέτου nnet ανά απόδοση Ταξινόµηση δικτύων πακέτου pnn ανά απόδοση Ταξινόµηση δικτύων πακέτου e1071 ανά απόδοση Ταξινόµηση των αντιπροσώπων κάθε οµάδας δικτύου ανά απόδοση ίκτυα MLP για το πρόβληµα προσέγγισης της συνάρτησης y = cos(x) Παράµετροι τερµατισµού εκπαίδευσης δικτύων MLP για το πρόβληµα προσέγγισης της συνάρτησης y = cos(x) ίκτυα RBF για το πρόβληµα προσέγγισης της συνάρτησης y = cos(x) ίκτυα για το πακέτο AMORE
20 Κ Ε Φ Α Λ Α Ι Ο 1 Γνωσιακό Υπόβαθρο 1.1 Εισαγωγή Τα Τεχνητά Νευρωνικά ίκτυα-(τν ) (Artificial Neural Networks-ANN) που πρωτοεµφανίστηκαν το 1943 µέσω της εργασίας των McCulloch και Pitts [165], αποτελούν µια σχετικά νέα περιοχή στις ϕυσικές επιστήµες και η ευρεία διάδοσή τους ϐασίστηκε και υποστηρίχτηκε από τη µεγάλη ανάπτυξη της υλικοτεχνικής υποδοµής των Η/Υ καθώς και στην ανάπτυξη νέων αλγορίθµων εκπαίδευσης. Οι πρώτες αρχές και λειτουργίες τους εµπνεύστηκαν και ϐασίζονται στο νευρικό σύστηµα των Ϲώντων οργανισµών. Είναι αξιοσηµείωτο ότι οι επιστήµονες στην περιοχή των ΤΝ προέρχονται σχεδόν από όλες τις περιοχές των ϕυσικών επιστηµών, γεγονός που δείχνει ότι για την ανάπτυξή τους απαιτούνται ταυτόχρονα γνώσεις από πολλές περιοχές. Τα ΤΝ είναι απλοποιηµένα µοντέλα του νευρικού συστήµατος του ανθρώπου. Μιµούνται τη λειτουργία των ϐιολογικών νευρώνων του εγκεφάλου, καθώς και τη δοµή των ϐιολογικών νευρωνικών δικτύων κάτι που ϑα αναλύσουµε εκτενώς στη συνέχεια του κεφαλαίου. Επιπλέον, αποτελούνται από διασυνδεδεµένα υπολογιστικά στοιχεία, τα οποία έχουν την ικανότητα να ανταποκρίνονται σε ερεθίσµατα που δέχονται στην είσοδό τους και να προσαρµόζονται στο περιβάλλον τους. Τα υπολογιστικά αυτά στοιχεία ονοµάζονται νευρώνες (neurons). Ο νευρώνας είναι η πιο µικρή ανεξάρτητη µονάδα του δικτύου και παίζει πολύ σηµαντικό ϱόλο καθώς επεξεργάζεται συνεχώς πληροφορίες λαµβάνοντας και εκπέµποντας ηλεκτρικά σήµατα σε άλλους νευρώνες. Τα ΤΝ πρέπει να πληρούν δύο ϐασικά χαρακτηριστικά [241]: α) Κάθε νευρώνας πρέπει να έχει ϱυθµιζόµενες παραµέτρους, ώστε να διευκολύνεται η διαδικασία της µάθησης. ϐ) Το δίκτυο πρέπει να αποτελείται από πολλούς νευρώνες, ώστε να επιτυγχάνεται πα- ϱαλληλισµός [191] της επεξεργασίας και κατανοµή της πληροφορίας. 1.2 Ηλεκτρονικοί Υπολογιστές και Τεχνητά Νευρωνικά ίκτυα Ο τρόπος λειτουργίας του ανθρώπινου εγκεφάλου είναι εντελώς διαφορετικός από τον τρόπο λειτουργίας ενός Η/Υ. Ο εγκέφαλος είναι ένα αρκετά πολύπλοκο, µη γραµµικό πα- ϱάλληλο υπολογιστικό σύστηµα και έχει την ικανότητα να οργανώνει τα δοµικά του συστατικά µε τέτοιο τρόπο ώστε να επιτυγχάνεται η εκτέλεση πολύπλοκων υπολογισµών και λειτουργιών [94]. Πολλές από τις διεργασίες της καθηµερινής Ϲωής, τις οποίες το µυαλό εκτελεί πολύ εύκολα, οι Η/Υ δε µπορούν εύκολα να τις περατώσουν µε επιτυχία. Το γεγονός αυτό δεν οφείλεται στην έλλειψη ταχύτητας, καθώς οι υπολογιστές είναι χιλιάδες ϕορές γρηγο- ϱότεροι από τον ανθρώπινο εγκέφαλο, όµως δε µπορούν να αυτοπροσαρµόζονται δεχόµενοι επιδράσεις από το περιβάλλον όπως δύναται να πράττει ο ανθρώπινος εγκέφαλος.
21 2 Γνωσιακό Υπόβαθρο Οι γνωστοί Η/Υ δουλεύουν σειριακά σε αντίθεση µε τα ΤΝ. Ο τρόπος λειτουργίας τους µοιάζει πιο πολύ µε παράλληλο τρόπο λειτουργίας διότι µια εργασία µοιράζεται σε όλους τους επιµέρους νευρώνες. Οι νευρώνες λειτουργούν ανεξάρτητα ο ένας από τον άλλο και δε χρειάζονται συγχρονισµό. Επιπλέον, όταν αποθηκεύουµε πληροφορία σε ένα ΤΝ, αυτή µοιράζεται σε ένα µεγάλο αριθµό νευρώνων, ενώ όταν αποθηκεύουµε στη µνήµη του Η/Υ, κάθε πληροφορία τοποθετείται σε µια συγκεκριµένη τοποθεσία. Τέλος, µια νέα ιδιότητα είναι αυτή της ανοχής στα σφάλµατα. ηλαδή αν ένα µικρό τµήµα του δικτύου χαλάσει, τότε το υπόλοιπο δίκτυο συνεχίζει να λειτουργεί ακόµα. Παρά τις µεγάλες δυνατότητες που δίνει η ανοχή στα σφάλµατα, η χρήση των ΤΝ δεν αποτελεί πανάκεια. Η χρήση τους είναι ιδιαιτέρως σηµαντική σε προβλήµατα που δεν µας ενδιαφέρει η πολύ µεγάλη ακρίβεια, αλλά από την άλλη µεριά υπάρχουν προβλήµατα στα οποία η χρήση τους δε συνίσταται καθόλου [15]. Για παράδειγµα, αποφεύγουµε τη χρήση ΤΝ σε περιπτώσεις όπου υπάρχουν αποδοτικές µαθηµατικές ή αλγοριθµικές µέθοδοι επίλυσης, γιατί ο χρόνος που απαιτείται για το σχεδιασµό και την εκπαίδευση ενός ΤΝ είναι συγκριτικά µε τα παραπάνω αυξηµένος. Η αρχιτεκτονική των ΤΝ διαφέρει από αυτή των παράλληλων επεξεργαστών. Συγκεκρι- µένα, στα ΤΝ οι νευρώνες έχουν µεγάλο αριθµό διασυνδέσεων, ο οποίος συνολικά για το δίκτυο είναι πολύ µεγαλύτερος από τον αριθµό των νευρώνων. Αντίθετα, στους παράλληλους υπολογιστές, οι επεξεργαστές είναι συνήθως περισσότεροι από τις διασυνδέσεις µεταξύ τους και ως προς την πολυπλοκότητά τους ακολουθούν τη µηχανή του von Neumann [246]. Στον Πίνακα 1.1 ϕαίνονται οι διαφορές µεταξύ Η/Υ και ΤΝ. Πίνακας 1.1: ιαφορές Η/Υ και ΤΝ 1.3 Βιολογικά νευρωνικά δίκτυα Ο νευρώνας Η αναλογία µεταξύ νευροφυσιολογίας του ανθρώπινου εγκεφάλου και ενός ΤΝ είναι πολύ σηµαντική για την κατανόηση της λειτουργίας των ΤΝ. Ο νευρώνας είναι ένας εξειδικευµένος τύπος κυττάρου, που αποτελεί τη ϐασική µονάδα των συστηµάτων επεξεργασίας πληροφοριών που απαρτίζουν το νευρικό σύστηµα του ανθρώπου [53]. Το ανθρώπινο κεντρικό νευρικό σύστηµα αποτελείται [254] από περίπου 1, νευρώνες από τους οποίους οι είναι στον εγκέφαλο. Κάθε νευρώνας συνδέεται µε πολλούς άλλους νευρώνες µέσω
22 1.3 Βιολογικά νευρωνικά δίκτυα 3 συνδέσεων που ονοµάζονται συνάψεις. Ο αριθµός των συνάψεων ανά νευρώνα δεν είναι στα- ϑερός αλλά υπολογίζεται προσεγγιστικά στις 10 4 συνάψεις. Ο ϱόλος του νευρώνα είναι να λαµβάνει όλα τα σήµατα που έρχονται από άλλους νευρώνες, να τα επεξεργάζεται µε κατάλληλο τρόπο και να µεταδίδει περαιτέρω το επεξεργασµένο σήµα σε άλλους νευρώνες. Τα σήµατα [15] που επεξεργάζεται ένας νευρώνας είναι ηλεκτρικής µορφής και είναι της τάξης µερικών mvolt. Το µήκος των νευρώνων ποικίλει, µε µερικούς νευρώνες να έχουν, µήκος µερικά µικρόµετρα µm ενώ άλλοι µπορεί να ϕτάνουν και το 1m [195] Η δοµή του νευρώνα Ως κύτταρο ο νευρώνας (Σχήµα 1.1) δεν έχει τίποτα ιδιαίτερο στη δοµή του και ως εκ τούτου είναι σαν όλα τα άλλα κύτταρα του οργανισµού. Ο νευρώνας αποτελείται από το σώµα (body), τον άξονα (axon) και τους δενδρίτες (dendrites). Σε κάθε δενδρίτη υπάρχει ένα απειροελάχιστο κενό που ονοµάζεται σύναψη (synapse). Πιο συγκεκριµένα, σύµφωνα µε τους [15, 128], διακρίνουµε τα παρακάτω χαρακτηριστικά : 1. Ο κύριος κορµός του νευρώνα είναι το σώµα, µέσα στο οποίο ϐρίσκεται ο πυρήνας του κυττάρου. Στον πυρήνα ϐρίσκεται όλο το γενετικό υλικό του οργανισµού και είναι το µέρος όπου γίνεται η σύνθεση όλων των στοιχείων που απαιτεί το κύτταρο για τη λειτουργία του. 2. Άξονας ή νευρικές ίνες είναι µια επέκταση στο σώµα του κυττάρου µέσω της οποίας τα σήµατα που παράγονται στο σώµα µεταδίδονται σε άλλους νευρώνες. Ενας άξονας έχει µήκος που κυµαίνεται από ένα κλάσµα του χιλιοστού ως 1m στο ανθρώπινο σώµα. Ακόµα εξέρχεται από το κυτταρικό σώµα στο σηµείο που ονοµάζεται λοφίσκος νευροάξονα (axon hillock )[14]. Εδώ αξίζει να σηµειώσουµε ότι κάθε νευρώνας έχει µόνο έναν άξονα. 3. Οι δενδρίτες είναι ένα άλλο είδος επεκτάσεων γύρω από το σώµα του κυττάρου, οι οποίοι είναι υπεύθυνοι για την παραλαβή των εισερχοµένων µηνυµάτων που παράγονται από άλλους νευρώνες. 4. Συνάψεις είναι οι κόµβοι που µεταδίδουν τα σήµατα από έναν νευρώνα σε έναν άλλο. Ενας νευρώνας περιλαµβάνει από 10 3 έως 10 4 συναπτικές συνδέσεις Συνδεσµολογία Οι συνδέσεις µεταξύ των νευρώνων, δηλαδή των αξόνων µε τους δενδρίτες, γίνονται στις επαφές που ονοµάζονται συνάψεις. Οι συνάψεις (Σχήµα 1.2) δηµιουργούνται στα σηµεία που εφάπτονται οι δενδρίτες και επιτελούν περίπλοκες διεργασίες κατά τη µετάδοση του σήµατος. Η µεµβράνη του πρώτου νευρώνα που εκπέµπει το σήµα ονοµάζεται προσυναπτική µεµβράνη, ενώ αυτή του δεύτερου νευρώνα που δέχεται το σήµα, ονοµάζεται µετασυναπτική µεµβράνη [15]. Ανάµεσα σε αυτές τις δύο µεµβράνες υπάρχει ένα κενό που ονοµάζεται συναπτικό χάσµα. Στην άκρη κάθε διακλάδωσης [196] σχηµατίζεται ένα µικρό εξόγκωµα, το οποίο εκρέει χηµικούς µεταβιβαστές οι οποίοι διαπερνούν το συναπτικό χάσµα και ϕθάνουν στον άλλο νευρώνα. Τα συναπτικά κυστίδια (synaptic vesicles) [183] που ϐρίσκονται στην άκρη του άξονα ελευθερώνουν τους νευροµεταβιβαστές οι οποίοι διαπερνούν το συναπτικό χάσµα και ϕθάνουν στον δενδρίτη του άλλου νευρώνα. Οταν ελευθερώνονται οι νευροµεταβιβαστές [99] από ένα νευρώνα και ϕθάνουν σε έναν άλλο µέσω της σύναψης, τότε επηρεάζεται η µεµβράνη του αποδέκτη νευρώνα και αλλάζει η κατάστασή του ως προς το σήµα που ϑα στείλει αυτός ο νευρώνας. Κάθε νευρώνας µπορεί να έχει πολλές συνάψεις, άρα µπορεί να συνδεθεί (και συνεπώς να περάσει το σήµα του) µε πολλούς άλλους νευρώνες. εδοµένου ότι υπάρχουν πολλοί
23 4 Γνωσιακό Υπόβαθρο Σχήµα 1.1: Ο ϕυσικός νευρώνας Σχήµα 1.2: Μορφολογία σύναψης δενδρίτες για κάθε νευρώνα, καταλήγουµε στο γεγονός ότι κάθε νευρώνας µπορεί να λάβει σήµατα από πολλούς άλλους νευρώνες, δηλαδή ένα ϐιολογικό νευρωνικό δίκτυο αλληλοσυνδέεται [78]. Είναι σηµαντικό να σηµειωθεί ότι δεν είναι όλες οι διασυνδέσεις εξίσου σταθµισµένες, κάποιες δηλαδή έχουν υψηλότερη προτεραιότητα από κάποιες άλλες. Αυτές οι διαφορές επηρεάζονται από τις διαφορές στη χηµεία και από την ύπαρξη των ϱυθµιστικών ουσιών µέσα και κοντά στους νευρώνες [85]. Η δοµή που έχουν οι συνδεδεµένοι νευρώνες καθορίζεται µερικώς από τη γέννηση. Συνδέσεις όµως δηµιουργούνται ή καταστρέφονται και κατά τη διάρκεια της Ϲωής του ανθρώπου κατά τη διαδικασία της µάθησης (learning), µια διαδικασία που ϑα αναλύσουµε σε επόµενη ενότητα [200] Η λειτουργία Κάθε νευρώνας έχει δύο δυνατές καταστάσεις [192] στις οποίες µπορεί να ϐρίσκεται και τις ονοµάζουµε ενεργό και µη ενεργό κατάσταση. Ολα τα σήµατα που καταφθάνουν σε ένα νευρώνα σε µια δεδοµένη στιγµή αθροίζονται. Αν το άθροισµα των σηµάτων [187] ϕθάσει
24 1.4 Τεχνητά Νευρωνικά ίκτυα 5 ή ξεπεράσει µια δεδοµένη τιµή, το λεγόµενο κατώφλι (threshold), τότε ο νευρώνας ενεργοποιείται. Αν το άθροισµα όµως είναι µικρότερο από το κατώφλι τότε ο νευρώνας παραµένει ανενεργός, δηλαδή δεν πραγµατοποιείται κάποια ενέργεια. Οταν ο νευρώνας είναι ενεργός, τότε στέλνει ένα παλµό, ο οποίος έχει πάντοτε το ίδιο µέγεθος. Αµέσως µετά τον παλµό, ο νευρώνας επανέρχεται στην αρχική του κατάσταση και µπορεί αργότερα να ενεργοποιηθεί ξανά. Το σήµα που µεταδόθηκε συνεχίζει την ίδια διαδικασία σε άλλους νευρώνες χωρίς να ελαττωθεί καθόλου [15]. 1.4 Τεχνητά Νευρωνικά ίκτυα Τα Τεχνητά Νευρωνικά ίκτυα-(τν ) προέκυψαν από την προσπάθεια να προσοµοιώσου- µε την πολύπλοκη λειτουργία του ανθρώπινου εγκεφάλου (Σχήµα 1.3). Για το λόγο αυτό οι πρώτες αρχές και λειτουργίες τους ϐασίζονται και εµπνέονται από το νευρικό σύστηµα των Ϲώντων οργανισµών. Η λειτουργία τους προσπαθεί να συνδυάσει τον τρόπο σκέψης του αν- ϑρώπινου εγκεφάλου µε τον αφηρηµένο µαθηµατικό τρόπο σκέψης. Κατ επέκταση ένα ΤΝ µπορεί να µαθαίνει, να ϑυµάται ή να ξεχνά αλλά και να χρησιµοποιεί περίπλοκες µαθηµατικές συναρτήσεις. Ενα ΤΝ ορίζεται ως εξής [147, 2]: Ορισµός 1.1 Τεχνητό νευρωνικό δίκτυο είναι µια αρχιτεκτονική δοµή αποτελούµενη από ένα πλήθος διασυνδεδεµένων µονάδων επεξεργασίας. Κάθε µονάδα επεξεργασίας χαρακτηρίζεται από εισόδους και εξόδους. Υλοποιεί τοπικά έναν υπολογισµό µε ϐάση τις εισόδους που δέχεται και µεταδίδει το αποτέλεσµα σε άλλες µονάδες επεξεργασίας µε τις οποίες συνδέεται. Οι τιµές των ϐαρών των συνδέσεων αποτελούν τη γνώση που είναι αποθηκευµένη στο τεχνητό νευρωνικό δίκτυο και καθορίζουν τη λειτουργικότητά του. Συνήθως το δίκτυο αναπτύσσει µια συνολική λειτουργικότητα µέσω µιας µορφής εκπαίδευσης. Σχήµα 1.3: Αντιστοιχία ϐιολογικού-τεχνητού νευρώνα Ο τεχνητός νευρώνας Ο τεχνητός νευρώνας είναι η ϐασικότερη µονάδα επεξεργασίας σε ένα ΤΝ. Σε αυτόν συντελείται όλη η επεξεργασία της πληροφορίας. Κάθε νευρώνας δέχεται πληροφορία, την επεξεργάζεται και δίνει µια τιµή εξόδου. Οι είσοδοί του είναι είτε οι έξοδοι άλλων νευρώνων, είτε το πρωταρχικό σήµα εισόδου του δικτύου. Υπάρχουν διάφορα είδη νευρώνα [177], µε το είδος που ϑα επιλεχθεί για να δοµηθεί ένα συγκεκριµένο ΤΝ να εξαρτάται από τη ϕύση του εκάστοτε προβλήµατος. Είναι σύνηθες ϕαινόµενο να χρησιµοποιείται συνδυασµός διαφορετικών ειδών νευρώνα, αφού η ϑέση του κάθε νευρώνα στο δίκτυο προϋποθέτει και την δυνατότητα εκτέλεσης µιας συγκεκριµένης διεργασίας, η οποία είναι διαφορετική για κάθε
25 6 Γνωσιακό Υπόβαθρο επίπεδο. Ενας νευρώνας λαµβάνει συνήθως πολλές ταυτόχρονες εισόδους, η καθεµία µε το αντίστοιχο ϐάρος της. Αυτά τα ϐάρη επιτελούν στα ΤΝ την ίδια λειτουργία που επιτελούν οι συνάψεις στα ϐιολογικά νευρωνικά δίκτυα και µπορούν να τροποποιηθούν ανάλογα µε τα διάφορα πρότυπα εκπαίδευσης και την υφιστάµενη τοπολογία του δικτύου [72]. Σχήµα 1.4: Το µοντέλο του τεχνητού νευρώνα Ο νευρώνας του Σχήµατος 1.4 αποτελείται από d συνδέσεις εισόδου, κάθε µία από τις οποίες δέχεται ένα σήµα εισόδου x i, όπου i = 1, 2,..., d και χαρακτηρίζεται από µια τιµή ϐάρους w i, όπου i = 1, 2,..., d. Η τιµή αυτή υποδηλώνει πόσο στενά είναι συνδεδεµένοι οι δύο νευρώνες που συνδέονται µε το ϐάρος αυτό. Οταν το w i είναι µεγάλο (µικρό), τότε η συνεισφορά του σήµατος είναι µεγάλη (µικρή). Η είσοδος x 0 είναι µια σύνδεση σταθερής διέγερσης µε τιµή που ισούται µονίµως µε 1 και ϐάρος w 0 που ονοµάζεται µεροληψία (bias) του νευρώνα. Η εισαγωγή της µεροληψίας προσδίδει στο νευρώνα επιπλέον υπολογιστικές δυνατότητες µάθησης και προσαρµογής στα δεδοµένα. Ο υπολογισµός που πραγµατοποιεί ένας νευρώνας διακρίνεται σε δύο στάδια [223]: 1. Υπολογισµό της συνολικής εισόδου µέσω ενός αθροιστή, ο οποίος προσθέτει τα επηρεασµένα από τα ϐάρη σήµατα εισόδου και παράγει την ποσότητα u(x) = d i=1 w ix i +w 0 2. Υπολογισµό της εξόδου o(x) του νευρώνα περνώντας τη συνολική είσοδο u(x) από µια συνάρτηση ενεργοποίησης g, η οποία διαµορφώνει την τελική τιµή του σήµατος εξόδου o σε συνάρτηση µε την ποσότητα u και την τιµή του κατωφλίου θ της συνάρτησης ενεργοποίησης Ο αισθητήρας Το µοντέλο του αισθητήρα (perceptron) του Rosenblatt [52, 210] είναι το πιο απλό νευ- ϱωνικό δίκτυο που µπορεί να σχεδιαστεί και να µελετηθεί, διότι αποτελείται µόνο από ένα νευρώνα. Το δίκτυο αυτό έχει έναν ορισµένο αριθµό εισόδων αλλά παράγει µία µόνο έξοδο. Οι µόνες συνδέσεις που υπάρχουν είναι αυτές µεταξύ των εισόδων και του νευρώνα. Κάθε σύνδεση του νευρώνα µε το εισερχόµενο σήµα x i έχει ένα αντίστοιχο συναπτικό ϐάρος w i, που δείχνει την επίδραση του εισερχοµένου σήµατος στο νευρώνα. Ο στόχος του απλού αισθητήρα [27] είναι να µάθει να λύνει προβλήµατα ταξινόµησης (Σχήµα 1.5), να αντιστοιχεί δηλαδή κάθε σύνολο εισόδων που δέχεται στη σωστή κλάση. Οι περιοχές απόφασης
26 1.4 Τεχνητά Νευρωνικά ίκτυα 7 διαχωρίζονται από το υπερεπίπεδο που ορίζεται από τη σχέση : p u = w i x i θ = 0 όπου θ το κατώφλι (1.1) i=1 Σχήµα 1.5: ιαχωρισµός κλάσεων Ανεβαίνοντας ως προς την πολυπλοκότητα, έχουµε νευρωνικά δίκτυα τα οποία έχουν πολλούς νευρώνες οι οποίοι είναι οργανωµένοι σε δύο επίπεδα, ένα επίπεδο στο οποίο εισέρχονται τα σήµατα (επίπεδο εισόδου) και ένα επίπεδο όπου ϐγαίνει το αποτέλεσµα του νευρωνικού δικτύου (επίπεδο εξόδου) [56] Μάθηση στον απλό νευρώνα Στην αρχή της µάθησης (learning) ο νευρώνας δεν έχει καµία προηγούµενη γνώση. Ο τρόπος µάθησης που ϑα χρησιµοποιήσουµε είναι µάθηση µε επίβλεψη ή αλλιώς επιβλεπόµενη µάθηση (supervised learning). Στη µάθηση µε επίβλεψη, χρησιµοποιείται ένα σύνολο από παραδείγµατα εκπαίδευσης (training set) και για κάθε παράδειγµα ελέγχουµε αν η έξοδος που δίνει ο νευρώνας είναι σωστή. Αν είναι τότε χρησιµοποιούµε το επόµενο παράδειγµα. Αν όχι τότε τροποποιούµε τα ϐάρη ως ακολούθως. Εάν η σωστή έξοδος ήταν µεγαλύτερη από αυτή που υπολόγισε ο νευρώνας, αυξάνουµε τα ϐάρη των εισόδων που ήταν ϑετικές και µειώνουµε τα ϐάρη των εισόδων που ήταν αρνητικές. Στην περίπτωση που είναι µικρότερη κάνουµε την αντίθετη διαδικασία. Η µάθηση συνεχίζεται µέχρις ότου ο νευρώνας να απαντά σωστά σε όλα τα παραδείγµατα ή να µην ϐελτιώνει καθόλου την απόδοσή του [59]. Ο Rosenblatt [211, 145] απέδειξε ότι αν τα διανύσµατα εκπαίδευσης του Perceptron προέρχονται από δύο γραµµικά διαχωρίσιµες κλάσεις, τότε ο αλγόριθµος του Perceptron συγκλίνει σε πεπερασµένο αριθµό επαναλήψεων και τοποθετεί τη διαχωριστική επιφάνεια απόφασης µε τη µορφή ενός υπερεπιπέδου µεταξύ των δύο κλάσεων Γραµµική διαχωρισιµότητα Στην περίπτωση που οι είσοδοι στο νευρώνα είναι µόνο δύο, τότε ο διαχωρισµός γίνεται από µια ευθεία γραµµή. Αν είχαµε τρεις εισόδους, τότε ο διαχωρισµός ϑα γινόταν από ένα επίπεδο που ϑα έτεµνε τον τρισδιάστατο χώρο ενώ για την περίπτωση τεσσάρων και πάνω εισόδων, ϑα πρέπει να δηµιουργήσουµε έναν υπερχώρο n διαστάσεων που ϑα τέµνεται από ένα υπερεπίπεδο [15].
27 8 Γνωσιακό Υπόβαθρο Σύµφωνα µε τα παραπάνω, η εκ των προτέρων γνώση για το εάν η συνάρτηση που µας παρουσιάζεται είναι γραµµικά διαχωρίσιµη, είναι πολύ δύσκολη. Ενας νευρώνας µε n εισόδους µπορεί να έχει 2 n διαφορετικούς συνδυασµούς από 0 και 1. Εφόσον κάθε συνδυασµός µπορεί να δώσει δύο διαφορετικές εξόδους, υπάρχουν 2 2n διαφορετικές συναρτήσεις n µεταβλητών [177]. Η πιθανότητα να είναι µια συνάρτηση γραµµικά διαχωρίσιµη είναι πολύ µικρή, όταν µάλιστα υπάρχουν πολλές είσοδοι [257] Μετάδοση του σήµατος µέσα στο ΤΝ Οταν ένας νευρώνας δέχεται διάφορα σήµατα, αφού υπολογίσει την ποσότητα u, τη συγκρίνει µε την τιµή του κατωφλίου θ. Η τιµή αυτή είναι σταθερή και ορισµένη από την αρχή για κάθε νευρώνα ξεχωριστά. Αν η τιµή του u είναι µεγαλύτερη από το θ τότε ο νευρώνας ενεργοποιείται και παράγει µέσω µιας συνάρτησης ενεργοποίησης την ποσότητα o. Η τιµή αυτή [256] ϑα είναι είσοδος σε άλλο νευρώνα, στον ίδιο ή έξοδος του νευρωνικού δικτύου Σύγκριση τεχνητών-ϐιολογικών Νευρωνικών ικτύων Οι συνάψεις στα ϐιολογικά νευρωνικά δίκτυα είναι περίπλοκες, ενώ αντιθέτως είναι πολύ απλές στα τεχνητά. Επιπλέον, η ταχύτητα των ΤΝ είναι χιλιάδες ϕορές µεγαλύτερη από την ταχύτητα διάδοσης του σήµατος στα ϐιολογικά. Παρόλα αυτά, η διαφορά στην ταχύτητα δεν επαρκεί για να καλύψει τη διαφορά στην πολυπλοκότητα [212]. Ακόµα ο ανθρώπινος εγκέφαλος µαθαίνει και καταλαβαίνει πολύ γρήγορα, ενώ η µάθηση στα ΤΝ απαιτεί πολύ χρόνο. Τέλος, ο εγκέφαλος µπορεί να κάνει σύγχρονη ή ασύγχρονη ενηµέρωση των µονάδων του (σε συνεχή χρόνο), ενώ τα ΤΝ κάνουν µόνο σύγχρονη ενηµέρωση (σε διακριτό χρόνο) [15]. 1.5 Βασικές συναρτήσεις ενεργοποίησης Η συνάρτηση ενεργοποίησης (activation function) ή συνάρτηση µεταφοράς (transfer function) είναι µια γραµµική ή µη γραµµική συνεχής συνάρτηση η οποία επιλέγεται, έτσι ώστε να περιορίσει την έξοδο του συστήµατος σε ένα επιθυµητό διάστηµα. Με τη συνάρτηση ενεργοποίησης η έξοδος του αθροιστή συγκρίνεται µε ένα κατώφλι για να υπολογιστεί η έξοδος του νευρώνα. Υπάρχουν πολλά είδη συναρτήσεων ενεργοποίησης [223, 64, 243], όµως στην κατασκευή ΤΝ χρησιµοποιούµε συναρτήσεις που το γράφηµά τους µοιάζει µε τη ϐηµατική συνάρτηση, αλλά σε αντίθεση µε αυτή είναι συνεχείς και παραγωγίσιµες. Οι συναρτήσεις αυτής της κατηγορίας ονοµάζονται σιγµοειδείς αφού το γράφηµά τους µοιάζει µε το τελικό σίγµα. Ο πιο χρησιµοποιούµενος τύπος σιγµοειδούς συνάρτησης είναι η λογιστική (logistic sigmoid). Στη συνέχεια παραθέτουµε τα πιο γνωστά και ευρέως χρησιµοποιούµενα είδη συναρτήσεων ενεργοποίησης : Η ϐηµατική συνάρτηση (Hard-Limit function) που περιγράφεται από τον τύπο : { 1, αν s > 0 φ(s) = 0, αν s 0 ϑέτει την έξοδο του νευρώνα ίση µε το 0, αν το όρισµα της συνάρτησης είναι µικρότερο ή ίσο µε του 0 και ίση µε το 1, αν το όρισµα είναι µεγαλύτερο του 0. Η έξοδος του νευρώνα (Σχήµα 1.6) περιορίζεται στις τιµές 0 ή 1 και χρησιµοποιείται για τη δηµιουργία νευρώνων που απευθύνονται σε προβλήµατα δυαδικής ταξινόµησης [200]. Αντίστοιχα µε τη ϐηµατική συνάρτηση, η συνάρτηση προσήµου (Symmetric Hard-Limit function) (Σχήµα 1.7) έχει σαν αποτέλεσµα η έξοδος του νευρώνα να παίρνει την τιµή 1 ή
28 1.5 Βασικές συναρτήσεις ενεργοποίησης 9 Σχήµα 1.6: Η ϐηµατική συνάρτηση -1. Η αναλυτική µορφή της συνάρτησης προσήµου είναι : { 1, αν s > 0 φ(s) = 1, αν s 0 Σχήµα 1.7: Η συνάρτηση προσήµου Η γραµµική συνάρτηση ενεργοποίησης (linear function) έχει τη µορφή : φ(s) = λs και δίνει ως έξοδο του νευρώνα την τιµή του τοπικού του πεδίου (Σχήµα 1.8). Χρησιµοποιείται συνήθως ως συνάρτηση ενεργοποίησης στα δίκτυα που επιτελούν προσέγγιση συναρτήσεων και πρόγνωση [243]. Η τµηµατικά-γραµµική συνάρτηση (Piecewise-Linear function έχει την µορφή : Σχήµα 1.8: Η γραµµική συνάρτηση ενεργοποίησης 1, αν s 1 2 φ(s) = s, αν 1 2 < s < 1 2 0, αν s 1 2 και η γραφική της αναπαράσταση ϕαίνεται στο Σχήµα 1.9. Η σιγµοειδής συνάρτηση (Sigmoid function) είναι µια γνησίως αύξουσα συνάρτηση που είναι οµαλή και ασυµπτωτική (Σχήµα 1.10) και έχει τη µορφή : 1 φ(s) = 1 + e αs
29 10 Γνωσιακό Υπόβαθρο Σχήµα 1.9: Piecewise-Linear Function Το κοινό χαρακτηριστικό που έχουν οι συναρτήσεις αυτές είναι ότι πρέπει να είναι πάντοτε µη γραµµικές. εν µας αρκούν γραµµικές συναρτήσεις γιατί τότε η έξοδος ϑα ήταν ανάλογη µε την είσοδο, κάτι που δε µπορεί να συµβεί στα νευρωνικά δίκτυα [15]. Η σιγµοειδής συνάρτηση υπερέχει της ϐηµατικής διότι η πρώτη είναι διαφορίσιµη ενώ η δεύτερη όχι [117]. Σχήµα 1.10: Η σιγµοειδής συνάρτηση Στη συνέχεια παραθέτουµε επιπλέον τύπους συναρτήσεων ενεργοποίησης. 1. Υπερβολική εφαπτοµένη (Hyperbolic tangent function) : φ(s) = tanh(s) = 1 e s 1 + e s 2. Θετικά Γραµµική συνάρτηση (Positive Linear function): { 0, αν s < 0 φ(s) = s, αν s 0 3. Ανταγωνιστική συνάρτηση (Competitive function): { 1, για τους νευρώνες µε µέγιστο s φ(s) = 0, για όλους τους άλλους νευρώνες 1.6 Αρχιτεκτονικές Νευρωνικών ικτύων Η αρχιτεκτονική ενός δικτύου καθορίζει τη διάταξη των συνδέσεων των νευρώνων καθώς και τον αριθµό αλλά και τον τύπο των νευρώνων. Οι νευρώνες του δικτύου οργανώνονται σε µορφή επιπέδων και ο τρόπος µε τον οποίο είναι δοµηµένοι σχετίζεται µε τον αλγόριθµο µάθησης που χρησιµοποιείται για την εκπαίδευση αυτού του δικτύου [166]. Στο Σχήµα 1.11 παρουσιάζουµε σχηµατικά τις αρχιτεκτονικές ενός ΤΝ. Στη συνέχεια ϑα αναλύσουµε δύο από τις ϐασικότερες αρχιτεκτονικές ενός δικτύου ίκτυα εµπρόσθιας τροφοδότησης Στο δίκτυο εµπρόσθιας τροφοδότησης (feedforward networks) οι νευρώνες κάθε επιπέδου έχουν σαν εισόδους τα σήµατα εξόδου του προηγούµενου επιπέδου. Το σήµα κινείται από
30 1.6 Αρχιτεκτονικές Νευρωνικών ικτύων 11 Σχήµα 1.11: Τοπολογίες νευρωνικών δικτύων το επίπεδο εισόδου προς το επίπεδο εξόδου µέσω των κρυφών επιπέδων. Το χαρακτηριστικό των δικτύων αυτών είναι ότι δεν υπάρχει ανατροφοδότηση (feedback connection) της εξόδου ενός νευρώνα προς τους νευρώνες από τους οποίους επηρεάζεται άµεσα ή έµµεσα [84]. Ανατροφοδότηση είναι η διαδικασία κατά την οποία ένας νευρώνας του i οστού ε- πιπέδου δίνει την έξοδό του ως είσοδο στον ίδιο ή άλλο νευρώνα του ίδιου επιπέδου. Το σύνολο των σηµάτων εξόδου στο επίπεδο εξόδου, αποτελεί και την απάντηση του δικτύου για τα δεδοµένα που εισάγονται στους κόµβους εισόδου. Στο Σχήµα 1.12 παρουσιάζεται ένα πολυεπίπεδο (feedforward multilayer perceptron) δίκτυο εµπρόσθιας τροφοδότησης µε δύο κρυφά επίπεδα και ένα νευρώνα στο επίπεδο εξόδου. Σχήµα 1.12: ίκτυο εµπρόσθιας τροφοδότησης Αναδροµικά δίκτυα Στην κατηγορία των αναδροµικών δικτύων (Recurrent Neural Networks-RNN) υπάρχει τουλάχιστον ένας ϐρόχος ανατροφοδότησης. ηλαδή, η έξοδος κάθε νευρώνα του δικτύου α-
31 12 Γνωσιακό Υπόβαθρο νατροφοδοτεί την είσοδο των άλλων νευρώνων του ίδιου επιπέδου και σε µερικές περιπτώσεις ακόµα και τη δική του [121]. Η ύπαρξη αυτών των ϐρόχων επηρεάζει σηµαντικά τις επιδόσεις και την ικανότητα εκπαίδευσης του δικτύου. Επίσης, οι αναδροµικοί ϐρόχοι περιλαµβάνουν και τη χρήση στοιχείων χρονοκαθυστέρησης έχοντας σαν αποτέλεσµα το δίκτυο να αποκτήσει µια δυναµική µη γραµµική συµπεριφορά [225]. Στο Σχήµα 1.13 παρουσιάζεται ένα αναδροµικό δίκτυο µε ένα µόνο επίπεδο. Σχήµα 1.13: Αναδροµικό δίκτυο 1.7 Η διαδικασία µάθησης Το σηµαντικότερο χαρακτηριστικό των νευρωνικών δικτύων είναι ότι µαθαίνουν ή εκπαιδεύονται. Η µάθηση είναι µια ϑεµελιακή ικανότητα των ΤΝ η οποία τους επιτρέπει να µαθαίνουν από το περιβάλλον τους και να ϐελτιώνουν τη συµπεριφορά τους µε το πέρασµα του χρόνου. Τα ΤΝ εκτελούν τη διαδικασία της ανάκλησης και της µάθησης [11, 171, 141]. Ορισµός 1.2 Ανάκληση ( recall) ονοµάζεται η διαδικασία του υπολογισµού ενός διανύσµατος εξόδου για συγκεκριµένο διάνυσµα εισόδου και τιµές ϐαρών. Ορισµός 1.3 Μάθηση ( learning) είναι µια διαδικασία µε την οποία προσαρµόζονται οι ελεύ- ϑερες παράµετροι ενός νευρωνικού δικτύου µέσω µιας συνεχούς διαδικασίας διέγερσης από το περιβάλλον στο οποίο ϐρίσκεται το δίκτυο. Υπάρχουν πολλοί αλγόριθµοι µάθησης στα ΤΝ, ο καθένας µε τα πλεονεκτήµατα και τα µειονεκτήµατά του [121, 156, 67, 56]. Το είδος της µάθησης καθορίζεται από τον τρόπο µε τον οποίο πραγµατοποιούνται οι αλλαγές στα συναπτικά ϐάρη. Η µάθηση γίνεται µε τη χρήση κάποιων προτύπων εκπαίδευσης και ενός αλγορίθµου εκπαίδευσης και έχει ως αποτέλεσµα τη ϐελτίωση της απόδοσης του δικτύου. Η µάθηση περιλαµβάνει τα ακόλουθα ϐήµατα : 1. Το ΤΝ διεγείρεται από το περιβάλλον. 2. Ακολούθως, το δίκτυο υφίσταται αλλαγές στις παραµέτρους του. 3. Τέλος, αντιδρά µε νέο τρόπο στο περιβάλλον λόγω των αλλαγών που επήλθαν στο εσωτερικό του.
32 1.7 Η διαδικασία µάθησης 13 Για να αλλάξουµε την δοµή της επεξεργασίας ή της γνώσης σε ένα ΤΝ χρειάζεται να τροποποιήσουµε την αρχιτεκτονική του. Οι αλλαγές αυτές µπορούν να γίνουν είτε µε την ανάπτυξη καινούργιων συνδέσµων ή την αφαίρεση παλιών συνδέσµων. Τα Τεχνητά Νευρωνικά ίκτυα όπως αναφέραµε παραπάνω έχουν την ικανότητα να µα- ϑαίνουν µέσω παραδειγµάτων και διακρίνονται για την ικανότητά τους να οργανώνουν την πληροφορία των δεδοµένων εισόδου σε χρήσιµες µορφές. Αυτές οι µορφές αποτελούν στην ουσία είναι ένα µοντέλο που αναπαριστά τη σχέση που ισχύει µεταξύ των δεδοµένων εισόδου και εξόδου. Η εκπαίδευση γίνεται µε το να παρουσιάζουµε µια οµάδα από πρότυπα, αντιπροσωπευτικά ή παρόµοια µε αυτά που ϑέλουµε να µάθει το δίκτυο. ίνουµε δηλαδή σαν είσοδο πρότυπα που ξέρουµε εκ των προτέρων ποια ϑα είναι η έξοδος που ϑα παράγει το δίκτυο. Κατά τη διάρκεια της εκπαίδευσης το µόνο πράγµα που αλλάζει είναι οι τιµές των ϐαρών των συνδέσεων των νευρώνων [184]. Αυτό δε γίνεται πάντα µε τον ίδιο τρόπο, αλλά εξαρτάται σηµαντικά από τη µέθοδο που χρησιµοποιούµε [225, 140]. Αρχικά ξεκινάει µε τιµές στα ϐάρη w i που είναι τυχαίες και κατά τη διάρκεια της εκπαίδευσης µεταβάλλει τις τιµές αυτές µέχρι να εκπαιδευθεί πλήρως. Ο γενικός τρόπος µε τον οποίο γίνεται η τροποποίηση των ϐαρών ενός ΤΝ κατά την εκπαίδευσή του επιτρέπει τη διάκριση τριών ειδών µάθησης [239, 89], την επιβλεπόµενη και τη µη επιβλεπόµενη, τις οποίες αναλύουµε στη συνέχεια Επιβλεπόµενη µάθηση Η επιβλεπόµενη ή εποπτευόµενη µάθηση (supervised learning) είναι ο πιο συχνός τρόπος εκπαίδευσης νευρωνικών δικτύων [20, 116]. Χρησιµοποιούµε ένα σύνολο από παραδείγµατα εκπαίδευσης και ελέγχουµε αν η έξοδος που δίνει το νευρωνικό δίκτυο είναι σωστή. Αν είναι σωστή προχωράµε στο επόµενο παράδειγµα, διαφορετικά εκπαιδεύουµε το νευρωνικό δίκτυο µέσω ενός αλγορίθµου µε σκοπό την αναπροσαρµογή των ϐαρών του. Η διαφορά της εξόδου του τεχνητού νευρωνικού δικτύου µε την επιθυµητή, ονοµάζεται σφάλµα σήµατος (error signal). Ο σκοπός είναι να ελαχιστοποιήσουµε τη διαφορά µεταξύ της επιθυµητής εξόδου και της τρέχουσας τιµής της εξόδου µετά από διαδοχικές αλλαγές των ϐαρών [160]. Η επιβλεπόµενη µάθηση είναι ένα σύστηµα ανάδρασης κλειστού ϐρόχου [64]. Ως µέτρο [178] για το σύστηµα χρησιµοποιείται το µέσο τετραγωνικό σφάλµα ή το άθροισµα των τετραγώνων των σφαλµάτων ορισµένο ως συνάρτηση των συναπτικών ϐαρών του δικτύου (Σχέσεις 1.3 και 1.2). Αυτή η συνάρτηση µπορεί να παρασταθεί σαν µια πολυδιάστατη επιφάνεια σφάλµατος που σαν συντεταγµένες έχει τις ελεύθερες παραµέτρους του συστήµατος. Για να ϐελτιώνεται η απόδοση του συστήµατος στη διάρκεια του χρόνου ϑα πρέπει το σηµείο αυτό να έχει καθοδική πορεία (Σχήµα 1.14) προς κάποιο ελάχιστο, τοπικό ή ολικό, της επιφάνειας σφάλµατος [64]. Ενα σύστηµα που µαθαίνει µε επίβλεψη, έχει την δυνατότητα να µετακινεί το σηµείο αυτό προς ένα ελάχιστο µε την χρήση κάποιας πληροφορίας που έχει για την κλίση (gradient) της επιφάνειας σφάλµατος που αντιστοιχεί στην συµπεριφορά του συστήµατος την συγκεκριµένη χρονική στιγµή. Μερικές ϕορές η διαδικασία αυτή απαιτεί πολλές διορθώσεις των ϐαρών και άρα µεγάλο υπολογιστικό κόστος [12]. J = 1 2 J = 1 2N m i=1 N [o (p) i m n=1 i=1 y (p) i ] 2 (1.2) [o (n) i y (n) i ] 2 (1.3) Πρέπει να σηµειωθεί ότι η µάθηση µε επίβλεψη χωρίζεται σε δύο υποκατηγορίες, τη δοµική µάθηση (structural learning) [118] και την προσωρινή µάθηση (temporal learning). Στην πρώτη υποκατηγορία συγκαταλέγονται αλγόριθµοι που η χρήση τους ενδείκνυται για προβλήµατα εύρεσης της ϐέλτιστης σχέσης µεταξύ εισόδων και εξόδων, ενώ στη δεύτερη
33 14 Γνωσιακό Υπόβαθρο υποκατηγορία συναντούµε αλγόριθµους που ανταποκρίνονται σε προβλήµατα πρόβλεψης και ελέγχου. Σχήµα 1.14: Επιφάνεια σφάλµατος Μη επιβλεπόµενη µάθηση Ενα επίσης ευρέως γνωστό είδος µάθησης είναι αυτό της µη επιβλεπόµενης µάθησης (unsupervised learning). Σε αυτό τον τύπο µάθησης δε χρησιµοποιείται εξωτερικός παράγοντας για να επιβλέψει την εκπαίδευση του ΤΝ [140]. Η πληροφορία δίνεται στο δίκτυο αλλά δίχως τους αντίστοιχους στόχους και έτσι δε γίνεται καµία σύγκριση. Το δίκτυο ελέγχει τον εαυτό του και διορθώνει τα σφάλµατα στα δεδοµένα µε ένα µηχανισµό ανάδρασης. Το δίκτυο ψάχνει να ϐρει κάποιες τάσεις ή κανονικότητα στα σήµατα εισόδου και προσπαθεί ώστε οι έξοδοι να έχουν τα ίδια χαρακτηριστικά όπως και οι είσοδοι. Οι ελεύθερες παράµετροι του δικτύου ϐελτιστοποιούνται ως προς αυτόν τον έλεγχο και όταν το δίκτυο «µάθει» τις στατιστικές ιδιότητες [94] των προτύπων που του δίνονται σαν είσοδος, αναπτύσσει την ικανότητα να δηµιουργεί εσωτερικές αναπαραστάσεις για την κωδικοποίηση των χαρακτηριστικών των προτύπων [21]. Οταν σταµατήσει να αλλάζει τις τιµές των ϐαρών τότε ϑεωρούµε ότι η εκπαίδευση έχει επιτευχθεί. Σχόλιο 1.1 Η µη επιβλεπόµενη µάθηση µπορεί να συνδυαστεί µε την επιβλεπόµενη µάθηση σε ένα πολυεπίπεδο δίκτυο εµπρόσθιας τροφοδότησης εκπαιδευόµενο µε τον αλγόριθµο ανάστροφης διάδοσης, για να επιταχύνει τη διαδικασία µάθησης [225]. Σχόλιο 1.2 Με τη µάθηση µε επίβλεψη το δίκτυο πρέπει να εκπαιδευθεί πριν χρησιµοποιηθεί. Τα δεδοµένα εκπαίδευσης πρέπει να είναι αρκετά για να περιέχουν όλες τις αναγκαίες πληρο- ϕορίες, ώστε το δίκτυο να µπορεί να µάθει τα χαρακτηριστικά γνωρίσµατα και τις σχέσεις που είναι σηµαντικές. Σχόλιο 1.3 Σε ορισµένες περιπτώσεις η εκπαίδευση του νευρωνικού δικτύου είναι αδύνατη. Αυτό πιθανόν να συµβαίνει επειδή τα δεδοµένα εισόδου δεν περιέχουν ακριβή πληροφορία από την οποία προκύπτουν οι επιθυµητοί στόχοι. Ενας άλλος λόγος είναι η µη ύπαρξη επαρκούς, από άποψη όγκου, συνόλου εκπαίδευσης.
34 1.8 Ικανότητα γενίκευσης Επεξεργασία δεδοµένων πριν την εκπαίδευση Η εκπαίδευση του ΤΝ µπορεί να γίνει ιδιαίτερα αποδοτική αν προηγηθεί µια επεξεργασία των δεδοµένων. Η επεξεργασία αυτή περιλαµβάνει µια σειρά από ενέργειες [224], όπου ενδεικτικά ϑα αναφέρουµε τις πιο σηµαντικές. Καθορισµός των δεδοµένων Ο καθορισµός των δεδοµένων (data designation), είναι το πιο σηµαντικό στάδιο γιατί πρέπει να προσδιοριστεί πλήρως ένα συγκεκριµένο πρόβληµα και να καθοριστούν οι µετα- ϐλητές εισόδου του δικτύου [204]. Θα πρέπει να αναζητηθεί ο αριθµός και το είδος των εισόδων που δίνουν τη δυνατότητα στο δίκτυο να µάθει τη σχέση µεταξύ της εισόδου και της εξόδου. Κατά τη διάρκεια της εκπαίδευσης, µετά την εκτέλεση µερικών κύκλων, οι είσοδοι οι οποίες δεν χρειάζονται πραγµατικά ϑα έχουν µικρά ϐάρη σε σχέση µε άλλες που είναι σηµαντικές. Φιλτράρισµα των δεδοµένων Με τη διαδικασία του ϕιλτραρίσµατος δεδοµένων (data filtering), αναζητείται κάποια ασυνήθιστη συµπεριφορά ώστε να αποκλειστούν από το σύνολο εκπαίδευσης κάποια δεδοµένα που δεν ακολουθούν τη γενικότερη συµπεριφορά των υπολοίπων [241]. Προεπεξεργασία των δεδοµένων Κατά τη διάρκεια της προεπεξεργασίας των δεδοµένων (data preprocessing), κανονικοποιούµε τα δεδοµένα σε κάποιο διάστηµα [25]. Αυτό είναι πολύ σηµαντικό όταν οι είσοδοι του δικτύου διαφέρουν αρκετά ως προς την τιµή τους Αντιµετώπιση προβληµάτων Η δυσκολία στης µάθηση ενός ΤΝ εξαρτάται από πολλούς παράγοντες, όπως η ϕύση του προβλήµατος, ο αριθµός των προτύπων εκπαίδευσης και η διάστασή τους. Ως ϕυσικό επακόλουθο, σε πληθώρα προβληµάτων και εφαρµογών που καλούµαστε να αντιµετοπίσουµε, τα πράγµατα δεν εξελίσονται πάντα µε τον ίδιο τρόπο και δυστυχώς αρκετές ϕορές διαψεύδουν τις προσδοκίες µας. Σε πολλές περιπτώσεις το εκάστοτε δίκτυο τυχαίνει να µη συγκλίνει και για το λόγο αυτό πρέπει να πραγµατοποιήσουµε µια σειρά ελέγχων [234] όπως : 1. Ελέγχουµε τη µεταβολή του µέσου τετραγωνικού σφάλµατος σε συνάρτηση µε το χρόνο. Αν το µέσο τετραγωνικό σφάλµα παραµένει σταθερό, πραγµατοποιούµε εκ νέου την εκπαίδευση µε διαφορετικές αρχικές τιµές ϐαρών. Σε αντίθετη περίπτωση, αν παρατηρείται ταλάντωση ανάµεσα σε δύο τιµές τότε έχει εγκλωβιστεί σε τοπικό ελάχιστο και προσπαθούµε να το απεγκλωβίσουµε προσθέτοντας στα ϐάρη τυχαίο ϑόρυβο. 2. Τροποποιούµε τη δοµή του δικτύου προσθέτοντας κρυφούς νευρώνες ή/και κρυφά στρώµατα. 3. Μεταβάλλουµε την αναπαράσταση των δεδοµένων προσπαθώντας να τα ανάγουµε σε πιο ϐέλτιστη µορφή. 1.8 Ικανότητα γενίκευσης Ο σηµαντικότερος στόχος της εκπαίδευσης είναι η κατασκευή συστηµάτων που να πα- ϱέχουν σωστές αποφάσεις για εισόδους (παραδείγµατα/πρότυπα) που δεν έχουν χρησιµοποιηθεί κατά την εκπαίδευση. Η ικανότητα αυτή των συστηµάτων ονοµάζεται ικανότητα
35 16 Γνωσιακό Υπόβαθρο γενίκευσης (generalization). Η ικανότητα γενίκευσης είναι από τα πιο σηµαντικά λειτουργικά χαρακτηριστικά ενός ΤΝ γιατί στα περισσότερα προβλήµατα που αντιµετωπίζονται µε ΤΝ δε µπορούµε να γνωρίζουµε από πριν τις καταστάσεις τις οποίες ενδεχοµένως καλείται να διαχειριστεί αυτό. Οι παράγοντες που επηρεάζουν την ικανότητα γενίκευσης είναι οι ακόλουθοι [262, 94]: α) Η αρχιτεκτονική του δικτύου : ο αριθµός των κρυµµένων επιπέδων νευρώνων, καθώς και ο αριθµός των νευρώνων σε κάθε επίπεδο. ϐ) Η πολυπλοκότητα του προβλήµατος. υστυχώς δεν έχουµε στη διάθεσή µας κάποιο έλεγχο που να µας πιστοποιεί συναρτήσει της πολυπλοκότητας του προβλήµατος που αντιµετοπίζουµε αν το δίκτυό µας µπορεί να πραγµατοποιήσει καλή γενίκευση ή όχι. γ) Ο αριθµός των διανυσµάτων εκπαίδευσης και το αν αυτά αναπαριστούν ικανοποιητικά τον υπερχώρο από τον οποίο προέρχονται. Αυτή η συνθήκη [243] σχετίζεται άµεσα µε τα δύο διαφορετικά είδη γενίκευσης που παρατηρούνται, της εσωτερικής ή αλλιώς πα- ϱεµβολής (interpolation) και της εξωτερικής ή παρέκτασης (extrapolation). Η πρώτη, αφορά τις περιπτώσεις κατά τις οποίες η γενίκευση πραγµατοποιείται για σηµεία τα οποία έχουν γύρω τους αλλά, τα οποία χρησιµοποιήθηκαν κατά την εκπαίδευση του δικτύου. Η δεύτερη, αφορά σηµεία τα οποία ϐρίσκονται εκτός του διαστήµατος των σηµείων εκπαίδευσης και είναι εκείνη που παράγει τα πιο αναξιόπιστα αποτελέσµατα από τις δύο. Η ανάγκη για την αποφυγή περιπτώσεων στις οποίες ϑα πραγµατοποιείται εξωτερική γενίκευση καθιστά απαραίτητη την ύπαρξη ενός επαρκώς µεγάλου συνόλου δεδοµένων για την εκπαίδευση του δικτύου. δ) Η συνάρτηση που συνδέει τις εισόδους µε τις εξόδους είναι απαραίτητο να είναι λεία (smooth) [218]. Αυτό σηµαίνει ότι για µικρές αλλαγές στις εισόδους, αντιστοιχούν µικρές αλλαγές και στα αποτελέσµατα της συνάρτησης. Συναρτήσεις οι οποίες δεν παρουσιάζουν οµαλότητα στις µεταβολές δεν µπορούν να γενικευθούν σωστά από τα νευρωνικά δίκτυα. Πολλές ϕορές για να επιτευχθεί η απαραίτητη οµαλότητα στη συνάρτηση επιχειρείται ένας µη γραµµικός µετασχηµατισµός των εισόδων του δικτύου [262]. Γενικά υπάρχει µια ϐέλτιστη αρχιτεκτονική ενός MLP δικτύου για να παρουσιάσει τις καλύτερες επιδόσεις γενίκευσης. Η αρχιτεκτονική αυτή είναι τόσο πολύπλοκη όσο είναι και το πρόβληµα µάθησης [189]. Οµως σύµφωνα µε τη ϐασική εµπειρική αρχή µηχανικής µάθησης (occam s razor) [74, 158], προτιµούµε το απλούστερο µοντέλο που µπορεί να µάθει επαρκώς τα παραδείγµατα εκπαίδευσης Εκτίµηση της ικανότητας γενίκευσης Παρά τη µεγάλη πρόοδο που έχει σηµειωθεί την τελευταία δεκαετία στο χώρο των ΤΝ, δεν έχουν ϐρεθεί µαθηµατικά ϑεµελιωµένες τεχνικές που να αντιµετωπίζουν επαρκώς το πρόβληµα εκτίµησης της ικανότητας γενίκευσης ενός δικτύου. Για το λόγο αυτό χρησιµοποιούµε ένα σύνολο παραδειγµάτων ελέγχου. Το σύνολο ελέγχου αποτελεί ένα υποσύνολο των παραδειγµάτων που έχουµε ήδη στη διάθεσή µας, τα οποία όµως δεν τα χρησιµοποιήσαµε κατά την εκπαίδευση του ΤΝ. Μετά την εκπαίδευση, δίνουµε σαν είσοδο του ΤΝ το σύνολο ελέγχου και υπολογίζουµε τα αντίστοιχα σφάλµατα στις εξόδους του καθώς και το σφάλµα γενίκευσης που είναι το ποσοστό των σφαλµάτων ενός ΤΝ για τα παραδείγµατα του συνόλου ελέγχου [261]. Συµπερασµατικά, µικρό σφάλµα γενίκευσης συνεπάγεται υψηλή ικανότητα γενίκευσης και αντίστροφα.
36 1.9 Υπερεκπαίδευση Υπερεκπαίδευση Το ϕαινόµενο κατά το οποίο ένα ΤΝ χειρίζεται µε µεγάλη ακρίβεια όλα τα παραδείγµατα του συνόλου εκπαίδευσης ενώ δεν παρουσιάζει καλές επιδόσεις στα άγνωστα [227], ονοµάζεται υπερεκπαίδευση (overfitting). Αυτό συµβαίνει γιατί το ΤΝ δηµιουργεί απεικονίσεις οι οποίες είναι περισσότερο πολύπλοκες από ότι χρειάζεται. Οταν δηµιουργεί απεικονίσεις οι οποίες είναι λιγότερο πολύπλοκες από ότι χρειάζεται [246], έχουµε το ϕαινόµενο της υποεκπαίδευσης (underfitting). Η δηµιουργία των απεικονίσεων εξαρτάται από τον αριθµό των κρυµµένων επιπέδων καθώς και τον αριθµό των νευρώνων σε κάθε επίπεδο. Στην υπερεκπαίδευση, το σφάλµα του δικτύου γίνεται πάρα πολύ µικρό στα δεδοµένα εκπαίδευσης αλλά σε παραδείγµατα στα οποία δεν έχει εκπαιδευτεί γίνεται υπερβολικά µεγάλο και τότε, όπως λέγεται, το δίκτυο δεν γενικεύει καλά. Οπως αναφέρει και ο Sarle [216] για το συγκεκριµένο πρόβληµα : «Ενα δίκτυο το οποίο δεν έχει την απαραίτητη πολυπλοκότητα όσον αφορά τη δοµή του, µπορεί να αποτύχει να εντοπίσει πλήρως το σήµα σε ένα περίπλοκο σύνολο δεδοµένων µε αποτέλεσµα την ελλιπή προσαρµογή σε αυτά. Ενα δίκτυο που είναι πολύ περίπλοκο µπορεί να προσεγγίσει και το ϑόρυβο και όχι µόνο το σήµα, µε αποτέλεσµα την υπερβολική προσαρµογή στα παρεχόµενα δεδοµένα.» Ενα δίκτυο το οποίο εκπαιδεύτηκε µε λάθος τρόπο, οδηγώντας το σε υπερβολική ή ελλιπή προσαρµογή στα δεδοµένα, έχει ως συνέπεια η απόκριση του δικτύου να απέχει σηµαντικά από τις σωστές τιµές που εκείνο ϑα έπρεπε να παράγει [180]. Στην περίπτωση που αυτό το δίκτυο πραγµατοποιεί προβλέψεις (Σχήµα 1.15) για ένα µέγεθος, αυτές οι προβλέψεις µπο- ϱούν να οδηγήσουν σε λανθασµένη εκτίµηση της προβλεπόµενης ποσότητας. Είναι επίσης συχνό ϕαινόµενο ένα τέτοιο δίκτυο να παράγει ακραίες τιµές αποπροσανατολίζοντας τελείως τον αναλυτή τον αποτελεσµάτων του. Σχήµα 1.15: Α)Υποπροσαρµογή Β)Υπερπροσαρµογή Γ)Καλή προσαρµογή Μέθοδοι αποφυγής υπερεκπαίδευσης Τα τελευταία χρόνια έχουν προταθεί κάποιες τεχνικές [269, 25, 253, 18] για την αποφυγή του ϕαινοµένου της υπερεκπαίδευσης κατά την εκπαίδευση ενός ΤΝ. Καµία όµως από αυτές τις τεχνικές δεν εγγυάται µε απόλυτη σιγουριά την αποφυγή του ϕαινοµένου. Ο Wang [248] συµπεραίνει ότι καθώς αυξάνεται το µέγεθος του συνόλου εκπαίδευσης παρατηρείται µείωση του ϕαινοµένου της υπερεκπαίδευσης στα δίκτυα και καλύτερη συµπεριφορά τους κατά την απόκριση. Στη συνέχεια ϑα ασχοληθούµε µε τις πιο γνωστές από τις τεχνικές που έχουν προταθεί.
37 18 Γνωσιακό Υπόβαθρο Μέθοδος ϕθοράς των ϐαρών Η µέθοδος ϕθοράς των ϐαρών (weight decay) περιλαµβάνει µια σειρά παραλλαγών : α) Περιορισµός της αρχιτεκτονικής του δικτύου [151, 205, 232], δηλαδή µειώνουµε τον αριθµό των ϐαρών του δικτύου, στοχεύοντας στην ελαχιστοποίηση του συνόλου των ϐαρών. ϐ) Περιορισµός των τιµών [157, 144] που µπορούν να πάρουν τα ϐάρη κατά τη διάρκεια της εκπαίδευσης. Η ιδέα αυτή ονοµάζεται κανονικοποίηση (regularization). γ) Προσθήκη ενός όρου τιµωρίας (penalty term) [186] στη συνάρτηση τετραγωνικού σφάλ- µατος που ελαχιστοποιούµε κατά την εκπαίδευση του δικτύου. Παρακάτω παρουσιάζουµε τη µέθοδο ϕθοράς µε κανονικοποίηση [144, 130, 205] Αρχικά δηµιουργούµε έναν όρο κανονικοποίησης που συχνά είναι το άθροισµα των τετραγώνων των τιµών των ϐαρών : L R(w) = wi 2 (1.4) όπου w i οι τιµές των ϐαρών. εκπαίδευση γίνεται : i=1 Στη συνέχεια, η συνάρτηση που ελαχιστοποιείται κατά την E R (w) = E(w) + rr(w) = E(w) + r L wi 2 (1.5) όπου L ο αριθµός των ϐαρών, E(w) η συνάρτηση εκπαίδευσης και r παράµετρος που κα- ϑορίζει το σχετικό ϐάρος των δύο στόχων της εκπαίδευσης : αφενός την ελαχιστοποίηση του E(w) και αφετέρου τη διατήρηση των µικρών απόλυτων τιµών των ϐαρών του δικτύου. Τέλος ενηµερώνουµε τα ϐάρη, όπως ϕαίνεται στην παρακάτω σχέση : w i (t + 1) = w i η( E w i + 2rw i (t)) (1.6) Η παράµετρος r έχει πρωταγωνιστικό ϱόλο στη µέθοδο ϕθοράς των ϐαρών. Η σωστή ϱύθµιση της παραµέτρου r αποτελεί το ϐασικό πρόβληµα αυτής της µεθόδου. Ανάλογα µε την τιµή της r δηµιουργούνται τρεις περιπτώσεις : 1. Εάν η παράµετρος r έχει καθοριστεί σωστά και το µέγεθος του δικτύου είναι µεγαλύτε- ϱο απ ότι απαιτείται, τότε στο τέλος της εκπαίδευσης προκύπτουν δίκτυα µε καλύτερες δυνατότητες γενίκευσης. 2. Εάν η παράµετρος r είναι µεγάλη τότε παρεµποδίζεται η προσαρµογή του δικτύου στα παραδείγµατα εκπαίδευσης. 3. Εάν η παράµετρος r τείνει στο µηδέν τότε είναι σα να εκπαιδεύουµε το δίκτυο χωρίς κανονικοποίηση. Σχόλιο 1.4 Η προσθήκη του όρου κανονικοποίησης στην ουσία παρεµποδίζει τα ϐάρη να λάβουν υψηλές τιµές κατά την εκπαίδευση. Σχόλιο 1.5 Μερικές ϕορές οι τιµές κάποιων ϐαρών µπορεί να γίνουν σχεδόν µηδέν. Αυτό σηµαίνει ότι αφαιρούνται οι αντίστοιχες συνδέσεις από το δίκτυο και άρα µειώνονται οι υπολογισµοί. i=1
38 1.9 Υπερεκπαίδευση 19 Πρόωρο σταµάτηµα Κατά την εφαρµογή της µεθόδου πρόωρου σταµατήµατος (early stoping) ακολουθείται η παρακάτω διαδικασία [36, 217]: 1. Εκπαιδεύουµε το M LP µέσω της ελαχιστοποίησης του σφάλµατος εκπαίδευσης. 2. Σε τακτά χρονικά διαστήµατα «παγώνουµε» τη διαδικασία εκπαίδευσης και µε τις τρέχουσες τιµές των ϐαρών υπολογίζουµε µια εκτίµηση του σφάλµατος γενίκευσης σε ένα ανεξάρτητο σύνολο εκπαίδευσης που ονοµάζεται σύνολο επικύρωσης (validation set). 3. Συνεχίζουµε τη διαδικασία εκπαίδευσης και ενηµέρωσης των ϐαρών µέχρι το επόµενο χρονικό σηµείο υπολογισµού του σφάλµατος επικύρωσης. 4. Μόλις παρατηρηθεί ένα χρονικό σηµείο από το οποίο και µετά η µείωση του σφάλµατος εκπαίδευσης οδηγεί σε αύξηση του σφάλµατος επικύρωσης (Σχήµα 1.16), µπορούµε να σταµατήσουµε την εκπαίδευση του δικτύου. Σχήµα 1.16: Πρόωρο σταµάτηµα Εναλλακτικά, αντί να σταµατήσουµε πρόωρα τη διαδικασία, µπορούµε να εκτελέσουµε τον αλγόριθµο εκπαίδευσης µέχρι να τερµατίσουµε σε τοπικό ελάχιστο. Πρέπει όµως να α- ποθηκεύουµε κάθε ϕορά το διάνυσµα των ϐαρών w min που παρέχει το µικρότερο σφάλµα επικύρωσης, το οποίο έχουµε υπολογίσει µέχρι στιγµής κατά τη διάρκεια της εκπαίδευσης. Η τιµή των ϐαρών w min ϑα είναι και το τελικό διάνυσµα ϐαρών για το MLP. Σχόλιο 1.6 Επειδή ϑα πρέπει να αφαιρέσουµε ένα ποσοστό των παραδειγµάτων από το σύνολο εκπαίδευσης και να τα ϐάλουµε στο σύνολο επικύρωσης, ϑα δηµιουργηθεί πρόβληµα στην περίπτωση που τα παραδείγµατα είναι λίγα. Σχόλιο 1.7 εν επιτρέπεται τα σύνολα εκπαίδευσης, επικύρωσης και ελέγχου να έχουν κοινά στοιχεία, δηλαδή παραδείγµατα τα οποία εµπεριέχονται σε πάνω από ένα σύνολα.
39 20 Γνωσιακό Υπόβαθρο Πόλωση και διακύµανση Τέλος µία ακόµα µέθοδος για την αντιµετώπιση του overfitting είναι και η κατάλληλη επιλογή του δικτύου. Η επιλογή του δικτύου έχει να κάνει, όχι µόνο µε τον αριθµό των ϐα- ϱών αλλά και µε τα µεγέθη τους. Οσο πιο πολλά ϐάρη υπάρχουν σχετικά µε τον αριθµό των περιπτώσεων στο σύνολο εκπαίδευσης τόσο πιο πιθανό είναι το δίκτυο να παρουσιάσει overfitting. Το παραπάνω συµπέρασµα σχετίζεται και µε το λεγόµενο δίληµµα µεταξύ πόλωσης και διακύµανσης (bias-variance dilemma) [81]. Σύµφωνα µε αυτό η πόλωση (bias) µειώνεται και η διακύµανση (variance) αυξάνεται όσο αυξάνεται η πολυπλοκότητα του δικτύου. Στη συγκεκριµένη περίπτωση εξετάζεται η ισορροπία µεταξύ του σφάλµατος που οφείλεται στην πόλωση και εκείνου που οφείλεται στη διακύµανση. Το πρώτο είναι η διαφορά ανάµεσα στην µέση τιµή των αποκρίσεων του δικτύου και την πραγµατική τιµή που ϑα έπρεπε να έχει η απόκριση. Το δεύτερο λαµβάνεται ως η διακύµανση των αποκρίσεων των µοντέλων ως προς µία συγκεκριµένη είσοδο. Και στις δύο περιπτώσεις [243] ϑεωρούµε ότι η διαδικασία της δηµιουργίας του µοντέλου και της εκπαίδευσής του λαµβάνει χώρα πολλές ϕορές ώστε να µπορούµε να λάβουµε τα αποτελέσµατα των πολλαπλών αποκρίσεων Χαρακτηριστικά Τεχνητών Νευρωνικών ικτύων Τα ΤΝ αποτελούν ένα σχετικά πρόσφατο µοντέλο υπολογισµού. Αυτό που πρέπει να τονίσουµε είναι ότι τα πλεονεκτήµατα, τα µειονεκτήµατα και οι σχέσεις τους µε τις κλασσικές µεθόδους υπολογισµού δεν είναι πλήρως ξεκαθαρισµένα. Σε γενικές γραµµές τα ΤΝ είναι κατάλληλα να αντιµετωπίσουν συγκεκριµένες κατηγορίες προβληµάτων και ειδικότερα προβλήµατα εκπαίδευσης που αντιµετωπίζονται µε συσχέτιση προτύπων. Ενα νευρωνικό δίκτυο οφείλει την υπολογιστική του ισχύ κατά πρώτον στην παράλληλη, κατανεµηµένη δο- µή του και κατά δεύτερον στην ικανότητά του να µαθαίνει και κατ επέκταση να γενικεύει. Τα νευρωνικά δίκτυα διαθέτουν τις ακόλουθες χρήσιµες ιδιότητες-χαρακτηριστικά [241]: 1. Μη γραµµικότητα: ένας τεχνητός νευρώνας µπορεί να είναι είτε γραµµικός είτε µη γραµµικός. Ενα τεχνητό νευρωνικό δίκτυο που αποτελείται από διασυνδεδεµένους µη γραµµικούς νευρώνες είναι µη γραµµικό. 2. Αντιστοίχιση εισόδου-εξόδου: τα νευρωνικά δίκτυα διακρίνονται για την ικανότητά τους να οργανώνουν την πληροφορία των δεδοµένων εισόδου σε χρήσιµες µορφές. Αυτές οι µορφές αποτελούν στην ουσία ένα µοντέλο που αναπαριστά τη σχέση που ισχύει µεταξύ των δεδοµένων εισόδου και εξόδου. 3. Παράλληλος τρόπος λειτουργίας: κάθε εργασία µοιράζεται στα διάφορα τµήµατα του δικτύου, δηλαδή σε όλους τους επιµέρους νευρώνες. Αυτό παρέχει µεγάλες ταχύτητες γιατί είναι σαν να έχουµε ταυτόχρονα πολλούς επεξεργαστές. 4. Προσαρµοστικότητα: ένα τεχνητό νευρωνικό δίκτυο εκπαιδευµένο να λειτουργεί σε συγκεκριµένο περιβάλλον, µπορεί εύκολα να επανεκπαιδευτεί ώστε να µπορεί να χει- ϱίζεται τις µεταβολές στο νέο περιβάλλον λειτουργίας του. 5. Ανοχή σε ϐλάβες: αν ένας νευρώνας ή οι συνδέσεις του καταστραφούν η ποιότητα της εξόδου µειώνεται. Ωστόσο επειδή η πληροφορία που αποθηκεύεται στο δίκτυο είναι κατανεµηµένη σε όλη τη δοµή του, η ϐλάβη ϑα πρέπει να λάβει µεγάλη έκταση για να αρχίσει να µειώνεται σοβαρά η συνολική απόκριση του δικτύου. 6. Οµοιοµορφία ανάλυσης και σχεδίασης: οι νευρώνες αντιπροσωπεύουν ένα συστατικό κοινό σε όλα τα νευρωνικά δίκτυα και αυτό καθιστά εφικτή τη χρήση των ίδιων ϑεωριών και αλγορίθµων µάθησης σε διαφορετικές εφαρµογές των νευρωνικών δικτύων.
40 1.11 Αλγόριθµοι εκπαίδευσης Αναλογία µε τη νευροφυσιολογία του εγκεφάλου: η σχεδίαση ενός νευρωνικού δικτύου δανείζεται στοιχεία από τη λειτουργία του ανθρώπινου εγκεφάλου, ο οποίος είναι η Ϲωντανή απόδειξη ότι η εύρωστη παράλληλη επεξεργασία δεν είναι µόνο ϕυσικά εφικτή αλλά επίσης γρήγορη και ισχυρή. 8. υνατότητα ϑεώρησής τους ως κατανεµηµένη µνήµη και ως µνήµη συσχέτισης: ο χαρακτηρισµός των ΤΝ ως κατανεµηµένη µνήµη πηγάζει από το ότι η κωδικοποίηση που δηµιουργούν είναι κατανεµηµένη σε όλα τα ϐάρη της συνδεσµολογίας τους. Για τον ίδιο λόγο χαρακτηρίζονται και ως µνήµες αυτοσυσχέτισης. Η ανάκληση της πληροφο- ϱίας γίνεται µε ϐάση το περιεχόµενο και όχι τη διεύθυνση. 9. Ικανότητά τους για αναγνώριση προτύπων: δεν επηρεάζονται από ελλιπή ή και µε ϑόρυβο δεδοµένα. Από τη στιγµή που το ΤΝ ϑα εκπαιδευτεί στο να αναγνωρίζει συνθήκες και καταστάσεις, απαιτείται ένας µόνο κύκλος λειτουργίας τους για να προσδιορίσουν µια συγκεκριµένη κατάσταση. Η τελευταία ιδιότητα κάνει ένα τεχνητό νευ- ϱωνικό δίκτυο ιδανικό για χρήση σε αυτοµατισµούς που ϑα λειτουργούν σε αντίξοες συνθήκες Αλγόριθµοι εκπαίδευσης Τα νευρωνικά δίκτυα προκειµένου να ϕέρουν εις πέρας µια διαδικασία πρέπει πρωτύτερα να έχουν εκπαιδευθεί ώστε να µπορούν να την εκτελέσουν σωστά. Για να εκπαιδεύσουµε ένα νευρωνικό δίκτυο, χρησιµοποιούµε έναν αλγόριθµο εκπαίδευσης που να ανταποκρίνεται καλύτερα στο είδος του δικτύου καθώς και τις ιδιαιτερότητες της διεργασίας που ϑέλουµε να πραγµατοποιήσουµε. Στη γλώσσα των ΤΝ ως αλγόριθµος εκπαίδευσης (learning algorithm) [191], καλείται ένα προκαθορισµένο σύνολο από κανόνες που χρησιµοποιούνται για την επίλυση ενός προβλήµατος εκµάθησης. εν υπάρχει µοναδικός αλγόριθµος εκπαίδευσης που να είναι κατάλληλος για όλες τις περιπτώσεις. Αντίθετα, υπάρχει ένα σύνολο αλγορίθµων που χρησιµοποιούνται κατά περίπτωση ανάλογα, µε τα πλεονεκτήµατα και τα µειονεκτήµατα που παρουσιάζουν κατά την εφαρµογή τους σε ένα πρόβληµα. Το ϐασικό σηµείο στο οποίο διαφέρουν οι αλγόριθµοι εκπαίδευσης είναι ο τρόπος µε τον οποίο προσαρµόζουν τα ϐάρη w ij των συνάψεων των νευρώνων του δικτύου. Στη συνέχεια ϑα αναλύσουµε τους πιο γνωστούς [67, 161] αλγόριθµους εκπαίδευσης Αλγόριθµος Perceptron Ο αλγόριθµος εκπαίδευσης Perceptron [145] αποτελεί ένα παράδειγµα µάθησης µε ε- πίβλεψη. Στην αρχή της µάθησης το σύστηµα δεν έχει καµία προηγούµενη γνώση. Τα ϐάρη w i έχουν αρχικά τυχαίες τιµές στο διάστηµα [0,1]. Το δίκτυο τροφοδοτείται από ένα σύνολο της µορφής (x i, t i ), όπου x i είναι η είσοδος και t i η επιθυµητή έξοδος και προκύπτει µια έξοδος (o i ) που συγκρίνεται µε την επιθυµητή. Ο αλγόριθµος εκπαίδευσης προσαρµόζει τα ϐάρη και τις µεροληψίες του δικτύου, έτσι ώστε η έξοδος του δικτύου να συγκλίνει στην επιθυµητή έξοδο. Εστω ότι έχουµε δύο κλάσεις l 1 και l 2. Ο αλγόριθµος Perceptron περιγράφεται συνοπτικά [155, 225], µε τα ακόλουθα ϐήµατα : Βήµα 1. Αρχικοποιούµε όλα τα ϐάρη w i (n) και τις µεροληψίες θ n του δικτύου µε τυχαίες τιµές στο διάστηµα [0,1]. Βήµα 2. Εισάγουµε τα πρότυπα x i (n) µε τη σειρά. Μόλις τελειώσουν ξαναρχίζουµε από την αρχή. Βήµα 3. Για κάθε πρότυπο η έξοδος του γραµµικού συνδιαστή είναι u(n) = w(n) T x(n)
41 22 Γνωσιακό Υπόβαθρο για την οποία υπάρχει ένα διάνυσµα ϐαρών ώστε Βήµα 4. Ελεγχος διόρθωσης των ϐαρών : 1. ε γίνεται αλλαγή στα ϐάρη. w T x 0 x l 1 ή w T x < 0 x l 2 (1.7) α) αν u(n) 0 και x(n) l 1 w(n + 1) = w(n) ϐ) αν u(n) < 0 και x(n) l 2 w(n + 1) = w(n) 2. Γίνεται αλλαγή στα ϐάρη. α) αν u(n) 0 και x(n) l 2 w(n + 1) = w(n) η(n)x(n) ϐ) αν u(n) < 0 και x(n) l 1 w(n + 1) = w(n) + η(n)x(n) Το η(n) στις παραπάνω σχέσεις, συµβολίζει το ϱυθµό µάθησης. Βήµα 5. Ο αλγόριθµος τερµατίζεται όταν δε γίνεται πλέον καµία διόρθωση σε κανένα πρότυπο. Αυτό σηµαίνει ότι όλες οι έξοδοι είναι ίσες µε τις επιθυµητές εξόδους Αλγόριθµος Backpropagation Για πολλά χρόνια δεν υπήρχε τρόπος εκπαίδευσης δικτύων µε πολλά επίπεδα και οι γνώσεις [15] µας περιορίζονταν σε δίκτυα µε ένα ή δύο επίπεδα µόνο. Το κενό αυτό ήρθε να καλύψει η µέθοδος εκπαίδευσης της οπίσθιας διάδοσης σφάλµατος (backpropagation)[213] που αναπτύχθηκε και έγινε ευρύτατα γνωστή. Η κεντρική ιδέα της δοµής και λειτουργίας [90] τέτοιων δικτύων είναι σχετικά απλή. Το δίκτυο ξεκινά την διαδικασία µάθησης από τυχαίες τιµές των ϐαρών του. Εάν δώσει λάθος απάντηση, τότε τα ϐάρη διορθώνονται έτσι ώστε το σφάλµα να γίνει µικρότερο. Η ίδια διαδικασία επαναλαµβάνεται πολλές ϕορές έτσι ώστε σταδιακά το σφάλµα να ελαττώνεται, µέχρις ότου να γίνει τόσο µικρό όσο η επιθυ- µητή ακρίβεια. Στο σηµείο αυτό λέµε ότι το δίκτυο έχει µάθει τα παραδείγµατα που του διδάξαµε µε την ακρίβεια που ϑέλαµε να µάθει. Ο αλγόριθµος αυτός ονοµάστηκε οπίσθιας διάδοσης γιατί πραγµατοποιείται µία διάδοση του σφάλµατος από το στρώµα εξόδου προς τα προηγούµενα στρώµατα του δικτύου [16]. Η πλήρης παρουσίαση όλων των παραδειγµάτων εκπαίδευσης λέγεται κύκλος ή εποχή εκπαίδευσης (epoch). Η διαδικασία µάθησης προχω- ϱάει από κύκλο σε κύκλο µέχρι να σταθεροποιηθούν τα συναπτικά ϐάρη και τα κατώφλια και το µέσο τετραγωνικό σφάλµα όλων των παραδειγµάτων να τείνει σε κάποιο ελάχιστο [95]. Κατά τον αλγόριθµο Backpropagation παρουσιάζονται στο δίκτυο ένα σύνολο παραδειγ- µάτων εκπαίδευσης D = (x n, t n ), n = 1, 2,..., N όπου x n = (x n1,..., x nd ) T R d η είσοδος του δικτύου και t n = (t n1,..., t np ) T R p η επιθυµητή έξοδος. Το δίκτυο µε ϐάση τα διανύσµατα εισόδου υπολογίζει την έξοδο o(x n, w) όπου w = (w 1,..., w L ) T το µητρώο στο οποίο συγκεντρώνουµε όλα τα ϐάρη και τις πολώσεις του δικτύου. Η διαδικασία της οπίσθιας διάδοσης του σφάλµατος αποτελείται από δύο περάσµατα διαµέσου των διαφορετικών επιπέδων του δικτύου, ένα προς τα εµπρός και ένα προς τα πίσω πέρασµα [95]: 1. Στο εµπρός πέρασµα : (αʹ) Ενα διάνυσµα εισόδου εφαρµόζεται στους νευρώνες εισόδου του δικτύου. (ϐʹ) Η επίδρασή του διαδίδεται µέσα στο δίκτυο από επίπεδο σε επίπεδο. (γʹ) Ενα σύνολο από εξόδους παράγεται ως η πραγµατική απόκριση του δικτύου. 2. Στο πίσω πέρασµα : (αʹ) Η πραγµατική απόκριση του δικτύου αφαιρείται από την επιθυµητή απόκριση για την παραγωγή ενός σήµατος λάθους.
42 1.11 Αλγόριθµοι εκπαίδευσης 23 (ϐʹ) Το σήµα λάθους διαδίδεται προς τα πίσω στο δίκτυο. (γʹ) Τα ϐάρη προσαρµόζονται σε συµφωνία µε τον κανόνα διόρθωσης λάθους. Σχήµα 1.17: Οπισθοδιάδοση σφάλµατος Αναλυτική περιγραφή της µεθόδου Στην ενότητα αυτή ϑα αναλύσουµε τόσο το ευθύ όσο και το οπίσθιο πέρασµα (Σχήµα 1.17) του αλγορίθµου ορίζοντας λίγο πιο αυστηρά αυτά που αναφέραµε παραπάνω. Αρχικά, ορίζουµε την τετραγωνική συνάρτηση σφάλµατος ως [214]: E(w) = 1 2 N n=1 m=1 P (t nm o nm ) 2 η οποία είναι κάτω ϕραγµένη από την τιµή µηδέν που προκύπτει στην περίπτωση της τέλειας εκπαίδευσης. Η εκπαίδευση λοιπόν του ΤΝ υλοποιείται µέσω της ενηµέρωσης του διανύσµατος των ϐαρών w µε σκοπό την ελαχιστοποίηση του τετραγωνικού σφάλµατος E(w). Προκειµένου να περιγράψουµε τους υπολογισµούς που λαµβάνουν χώρα κατά την εκπαίδευση του ΤΝ ϑα χρειαστεί να καθορίσουµε το συµβολισµό ορισµένων µεγεθών που πα- ϱουσιάζονται στον Πίνακα 1.2. i l u l i yi l δi l wi0 l g l d l wij l ο i νευρώνας του l επιδέδου η συνολική είσοδος του νευρώνα i l η έξοδος του νευρώνα i l το σφάλµα του νευρώνα i l η πόλωση του νευρώνα i l τη συνάρτηση ενεργοποίησης των νευρώνων του επιδέδου l τον αριθµό των νευρώνων του επιδέδου l το ϐάρος της σύνδεσης από το νευρώνα j l 1 στο νευρώνα i l Πίνακας 1.2: Περιγραφή παραµέτρων
43 24 Γνωσιακό Υπόβαθρο Ευθύ πέρασµα Στο ευθύ πέρασµα του αλγορίθµου υπολογίζονται και αποθηκεύονται, µε ϕορά από τις εισόδους προς τις εξόδους, οι τιµές των εξόδων των νευρώνων όλων των επιπέδων και στη συνέχεια [223] οι τιµές αυτές συγκρίνονται µε τις αντίστοιχες επιθυµητές εξόδους και έτσι παράγεται το σήµα σφάλµατος για όλους τους νευρώνες του επιπέδου εξόδου. Τα επίπεδα αριθµούνται από την είσοδο προς την έξοδο και για l = 0 έχουµε το επίπεδο εισόδου. Εστω λοιπόν ένα ΤΝ µε d εισόδους, p εξόδους και H κρυµµένα επίπεδα. Το σήµα µεταδίδεται στα διάφορα επίπεδα ακολουθώντας τα παρακάτω ϐήµατα : Βήµα 1. Επίπεδο εισόδου y (0) i = x i, y (0) 0 = x 0 = 1 (1.8) Βήµα 2. Κρυµµένα επίπεδα και επίπεδο εξόδου d u (h) h 1 i = wijy h (h 1) j, h = 1,..., H + 1, i = 1,..., d h y (h) i j=0 = g h (u (h) i Βήµα 3. Εξοδος του δικτύου Οπισθοδιάδοση σφαλµάτων (1.9) 0), h = 1,..., H + 1, i = 1,..., d h, y (h) 0 = 1 (1.10) o i = y (H+1) i, i = 1,..., p (1.11) Οπως είναι ϕανερό και από το όνοµά της (οπίσθια διάδοση) στο δεύτερο µέρος της διαδικασίας το σήµα σφάλµατος µεταδίδεται κατά την αντίθετη ϕορά και υπολογίζονται τα επι- µέρους σήµατα σφάλµατος που αντιστοιχούν στους κρυµµένους νευρώνες. Τα ϐήµατα που ακολουθούνται παρουσιάζονται παρακάτω : Βήµα 1. Υπολογισµός σφαλµάτων στο επίπεδο εξόδου δ (H+1) i = g H+1(u (H+1) i ) En, i = 1,..., p (1.12) θ i Βήµα 2. ιάδοση των σφαλµάτων προς τα πίσω στο δίκτυο µέχρι τους νευρώνες του πρώτου επιπέδου δ (h) i = g h (u(h) i d h+1 j=1 w (h+1) ij δ (h+1) j, h = H,..., 1, i = 1,..., d h (1.13) Βήµα 3. Υπολογισµός των µερικών παραγώγων του σφάλµατος E h ως προς τα ϐάρη E H w h ij = δ (h) i y (h 1) j (1.14) Στην περίπτωση που το E h αντιστοιχεί στο τετραγωνικό σφάλµα, η 1.12 γίνεται δ (H+1) i = g H+1(u (H+1) i )(t ni o i ), i = 1,..., p (1.15)
44 1.11 Αλγόριθµοι εκπαίδευσης 25 Στην περίπτωση που οι νευρώνες στα κρυµµένα επίπεδα έχουν λογιστική συνάρτηση ενεργοποίησης η 1.13 γίνεται d δi h = y (h) i (1 y (h) h+1 i ) w (h+1) ij δ (h+1) j (1.16) και δεν απαιτείται η αποθήκευση των u i κατά το ευθύ πέρασµα. Αν η συνάρτηση ενεργοποίησης τους είναι η λογιστική τότε ενώ αν είναι η γραµµική j=1 δ (H+1) i = o i (1 o i )(t ni o i ) (1.17) δ (H+1) i = (t ni o i ) (1.18) Οι παραπάνω υπολογισµοί ϑα επαναληφθούν παρουσιάζοντας νέα πρότυπα εκπαίδευσης στο δίκτυο για κάθε επανάληψη, µέχρις ότου οι ελεύθερες παράµετροι του δικτύου σταθεροποιηθούν και η συνάρτηση σφάλµατος για όλο το σύνολο προτύπων εκπαίδευσης αποκτήσει την ελάχιστη τιµή της ή µια πολύ µικρή αποδεκτή τιµή. Η σειρά που ϑα τροφοδοτούνται τα πρότυπα στο δίκτυο σε κάθε εποχή ϑα πρέπει να µεταβάλλεται τυχαία Ρυθµός µάθησης αλγόριθµου Backpropagation Ο αλγόριθµος οπισθοδιάδοσης σφάλµατος χρησιµοποιεί τη µέθοδο απότοµης καθόδου (steepest descent) [89]. Ενας παράγοντας που επηρεάζει το µέγεθος ϐήµατος της µεθόδου είναι ο ϱυθµός µάθησης [132]. Οσο πιο µικρή είναι η τιµή που αναθέτουµε στο ϱυθµό µάθησης, τόσο πιο µικρή ϑα είναι και η αλλαγή στα συναπτικά ϐάρη για την εκάστοτε ε- πανάληψη. Το γεγονός αυτό όµως έχει ως αποτέλεσµα την αργή εκπαίδευση του δικτύου. Αν από την άλλη µεριά αναθέσουµε µεγάλη τιµή στο ϱυθµό µάθησης προκειµένου να αυξήσουµε την ταχύτητα εκπαίδευσης του δικτύου, οι µεγάλες αλλαγές στα συναπτικά ϐάρη µπορεί να καταστήσουν το δίκτυο ασταθές [94]. Η απόδοση του αλγορίθµου εξαρτάται από την καταλληλότητα της τιµής του ϱυθµού εκµάθησης που επιλέγεται κατά τη διάρκεια της εκπαίδευσης του δικτύου. Σύµφωνα µε το Bishop [25] η ϐέλτιστη τιµή του ϱυθµού µάθησης διαφέρει καθώς προχωράει η διαδικασία για την ελαχιστοποίηση. Μια απλή µέθοδος για να αυξήσουµε το ϱυθµό µάθησης αποφεύγοντας ταυτόχρονα τον κίνδυνο αστάθειας του δικτύου, είναι η εισαγωγή ενός όρου µοµέντουµ (momentum) [89] στον παρακάτω κανόνα : w ij (n) = α w ij (n 1) + ηδ j (n)y i (n) (1.19) ο οποίος καλείται Γενικευµένος κανόνας έλτα (Generalised Delta rule) και α είναι η σταθερά µοµέντουµ (συνήθως ϑετικός αριθµός) και η ο ϱυθµός µάθησης. Η σχέση 1.19 µπορεί να γραφτεί στη µορφή : n n t E(t) w ij (n) = η α (1.20) w ij (t) t=0 Παρατηρώντας τη σχέση 1.20 συµπεραίνουµε ότι : α) Οταν η µερική παράγωγος E(t) έχει το ίδιο πρόσηµο για συνεχόµενες επαναλήψεις, w ij (t) το άθροισµα w ij (n) αυξάνει σε µέγεθος και έτσι το ϐάρος w ij (n) αλλάζει κατά µεγάλο ποσό. Το αποτέλεσµα είναι να επιταχύνεται η κάθοδος προς σταθερές καθοδικές κατευθύνσεις. E(t) ϐ) Οταν η µερική παράγωγος έχει αντίθετο πρόσηµο για διαδοχικές επαναλήψεις, το άθροισµα w ij (n) µειώνεται σε µέγεθος και έτσι το ϐάρος w ij (n) αλλάζει w ij (t) κατά µικρό ποσό. Ετσι ο αλγόριθµος σταθεροποιείται για κατευθύνσεις που ταλαντεύονται ως προς το πρόσηµο.
45 26 Γνωσιακό Υπόβαθρο Κριτήρια τερµατισµού αλγόριθµου Backpropagation Γενικά δεν υπάρχουν κριτήρια που να εγγυώνται τη σύγκλιση του αλγόριθµου οπισθοδιάδοσης σφάλµατος και κατ επέκταση δεν υπάρχουν και καλώς ορισµένα κριτήρια τερµατισµού. Ωστόσο υπάρχουν κάποια κριτήρια που µπορούν να χρησιµοποιηθούν για αυτό το σκοπό. Στη συνέχεια παραθέτουµε τα κριτήρια [142] αυτά. Κριτήριο 1.1 Ο αλγόριθµος οπισθοδιάδοσης σφάλµατος ϑεωρείται ότι συγκλίνει όταν η Ευκλείδεια νόρµα του διανύσµατος κλίσης ϕτάσει ένα επαρκώς µικρό κατώφλι : E(w k ) ɛ Το µειονέκτηµα του παραπάνω κριτηρίου είναι ότι απαιτεί πολύ χρόνο καθώς και τον υπολογισµό του διανύσµατος κλίσης [94]. Κριτήριο 1.2 Ο αλγόριθµος οπισθοδιάδοσης σφάλµατος ϑεωρείται ότι συγκλίνει όταν το α- πόλυτο του ϱυθµού αλλαγής στο µέσο τετραγωνικό σφάλµα ανά εποχή είναι σηµαντικά µικρό. Ο ϱυθµός αλλαγής ϑεωρείται µικρός όταν κυµαίνεται από 0.1 έως 1 τοις εκατό ανά εποχή Γενικευµένος κανόνας έλτα Ο γενικευµένος κανόνας έλτα (Generalized Delta rule) [132, 145] είναι µια παραλλαγή του ϐασικού αλγορίθµου οπισθοδιάδοσης σφάλµατος η οποία χρησιµοποιεί µια παράµετρο ορµής µ (momentum). Ο αλγόριθµος οπισθοδιάδοσης σφάλµατος προσεγγίζει το ελάχιστο της συνάρτησης σφάλµατος µέσω της µεθόδου απότοµης καθόδου (steepest descent). Οταν το ϐήµα εκπαίδευσης h είναι µικρό, ϑα είναι µικρές και οι αλλαγές στα ϐάρη του δικτύου. Αν το ϐήµα αυτό πάρει µεγάλη τιµή, µπορεί το δίκτυο να γίνει ασταθές. Η χρήση της ορµής αυξάνει το ϱυθµό εκπαίδευσης και ταυτόχρονα µειώνει τον κίνδυνο αστάθειας του δικτύου. Στον κανόνα έλτα η διόρθωση του ϐάρους κατά την επανάληψη k επηρεάζεται από την τιµή της διόρθωσης κατά την επανάληψη k 1 και δίνεται από τον τύπο : J w ij (k) = w ij (k) w ij (k 1) = h w ij (k) + µ w ij (k 1) (1.21) Η σταθερά ορµής είναι συνήθως ϑετικός αριθµός και καθορίζει πόσο µεγάλη είναι η αλλαγή του ϐάρους στην επόµενη επανάληψη. Επίσης µπορεί να εµποδίσει τη διαδικασία µάθησης να τερµατίσει πρόωρα σε ένα τοπικό ελάχιστο. Πλεονεκτήµατα κανόνα έλτα J Επιτάχυνση της σύγκλισης του αλγορίθµου : όταν η µερική παράγωγος w ij (k) έχει ίδιο πρόσηµο σε διαδοχικές επαναλήψεις, τότε µε τη χρήση της ορµής το w ij (k) αυξάνεται σε µέτρο και το w ij (k) προσαρµόζεται κατά ένα µεγάλο ποσό. Σταθεροποίηση σύγκλισης J αλγορίθµου : όταν η µερική παράγωγος έχει αντίθετα πρόσηµα σε διαδοχικές επαναλήψεις, τότε µε τη χρήση της ορµής το w ij (k) µειώνεται σε µέτρο και το ϐάρος w ij (k) w ij (k) προσαρµόζεται κατά ένα µικρό ποσό, γεγονός που συντελεί στην αποφυγή µεγάλων ταλαντώσεων Μειονεκτήµατα και προβλήµατα Παρά τη µεγάλη επιτυχία της µεθόδου οπισθοδιάδοσης σφάλµατος, υπάρχουν και περιπτώσεις [69] που η µέθοδος αποτυγχάνει ή δε δουλεύει άµεσα µε επιτυχία. Επίσης, υπάρχουν περιπτώσεις [89] που ο χρόνος εκπαίδευσης είναι υπερβολικά µεγάλος. Αυτό συµβαί-
46 1.12 Εφαρµογές ΤΝ 27 νει, διότι πολλοί νευρώνες δίνουν µεγάλη τιµή εξόδου, όπου η παράγωγος της συνάρτησης εξόδου είναι πολύ µικρή [145]. Το σφάλµα που επιστρέφει από την έξοδο προς το κρυµµένο επίπεδο µέσα στο δίκτυο είναι ανάλογο της παραγώγου αυτής και έτσι µπορεί η διαδικασία εκπαίδευσης να «κολλήσει». Τότε µικραίνουµε το µέγεθος ϐήµατος, αλλά αυτό έχει ως αποτέλεσµα να µεγαλώσει ο χρόνος εκπαίδευσης. Ενα άλλο συχνό πρόβληµα είναι αυτό των τοπικών ελαχίστων. Επειδή η διαδικασία ανάστροφης διάδοσης χρησιµοποιεί τη µέθοδο της απότοµης καθόδου, είναι δυστυχώς ευαίσθητη στο πρόβληµα των τοπικών ελαχίστων, δηλαδή µπορεί να συγκλίνει σε ένα σύνολο ϐαρών που είναι τοπικά ϐέλτιστα αλλά δεν είναι και ολικά ϐέλτιστα [239]. Για να αποφευχθεί το πρόβληµα αυτό χρησιµοποιούµε στατιστικές µεθόδους εκπαίδευσης [41]. Τέλος, ϑα πρέπει κατά τη διαδικασία της εκπαίδευσης να παρουσιάζουµε στο δίκτυο πρότυπα που δεν µεταβάλλονται, διότι η εκπαίδευση του δικτύου δε ϑα συγκλίνει ποτέ Εφαρµογές ΤΝ Τα ΤΝ χρησιµοποιούνται σε διάφορους τοµείς λόγω της υπολογιστικής τους ταχύτητας, της ικανότητας αντιµετώπισης πολύπλοκων µη γραµµικών λειτουργιών και της ικανότητάς τους να αναγνωρίζουν τις σχέσεις µεταξύ ποσοτήτων που είναι δύσκολο να µοντελοποιηθούν. Οι ϐασικές λειτουργίες τις οποίες µπορεί να επιτελέσει ένα τεχνητό νευρωνικό δίκτυο είναι τρεις [243]: 1. Προσέγγιση συναρτήσεων: στην οποία µε ϐάση τα δεδοµένα που δίνονται, το νευρωνικό δίκτυο έχει τη δυνατότητα να προσεγγίσει τη σχέση που συνδέει τις εισόδους µε τις εξόδους. Μάλιστα, έχει αποδειχθεί [105] ότι τα τεχνητά νευρωνικά δίκτυα µε ένα κρυφό στρώµα µπορούν να προσεγγίσουν οποιαδήποτε συνεχή συνάρτηση µε οποιαδήποτε επιθυµητή ακρίβεια. 2. Αναγνώριση προτύπων: κατά την οποία µε ϐάση τα στοιχεία που δίνονται για ένα πρότυπο, το δίκτυο µπορεί να προχωρήσει στην αναγνώριση και τον χαρακτηρισµό του. Σε αυτή την περίπτωση [146] κατά την εκπαίδευση του δικτύου παρέχονται σε αυτό πρότυπα µε τα χαρακτηριστικά τους και το σωστό διαχωρισµό τους και το δίκτυο µέσα από τη διαδικασία της εκµάθησης µπορεί να καταστεί ικανό να αναγνωρίζει άγνωστα σε αυτό πρότυπα ϐάσει κάποιων χαρακτηριστικών τους. 3. ιαχωρισµός δεδοµένων: κατά την οποία το δίκτυο διαχωρίζει σύνολα δεδοµένων που του δίνονται ϐάση κάποιας οµοιότητας. Με ϐάση τις τρεις παραπάνω ϐασικές λειτουργίες, τα νευρωνικά δίκτυα µπορούν να χρησι- µοποιηθούν σε µια πληθώρα εφαρµογών, από πολλούς επιστηµονικούς κλάδους. Ενδεικτικά,αναφέρουµε τις ακόλουθες εφαρµογές : 1. Ταξινόµηση προτύπων [26, 71, 156] 2. Αναγνώριση προτύπων [123] 3. Επεξεργασία εικόνας [61, 164] 4. Ανάλυση και συµπίεση εικόνας[51] 5. Προβλήµατα ϐελτιστοποίησης [47] 6. Φωνητική ανάλυση [134, 239] 7. Επεξεργασία ελλιπών εισόδων [245]
47 28 Γνωσιακό Υπόβαθρο 8. Ιατρική γνωµάτευση[33] 9. Πρόβλεψη χρηµατιστηρίου [242, 168] 10. Προσοµοίωση [1] 11. Πρόγνωση καιρού [97] 1.13 ίκτυα Πολλαπλών Επιπέδων Το δίκτυο Perceptron πολλών επιπέδων (Multilayer Perceptron-MLP) (Σχήµα 1.18) είναι µια γενίκευση του απλού Perceptron. Αποτελείται από ένα σύνολο αισθητήρων [168] που αποτελούν το επίπεδο εισόδου, ένα ή περισσότερα κρυφά επίπεδα υπολογιστικών κόµβων και ένα επίπεδο υπολογιστικών κόµβων εξόδου. Το ϐασικό χαρακτηριστικό [241] του δικτύου αυτού είναι ότι οι νευρώνες του κάθε στρώµατος τροφοδοτούν αποκλειστικά τους νευρώνες του επόµενου στρώµατος και τροφοδοτούνται αποκλειστικά από τους νευρώνες του προηγούµενου στρώµατος. Οι νευρώνες στο επίπεδο εισόδου δεν πραγµατοποιούν κάποιον υπολογισµό, απλά µεταδίδουν τις τιµές του διανύσµατος εισόδου στους νευρώνες του επόµενου επιπέδου [223]. Οι κρυφοί νευρώνες επιτρέπουν στο δίκτυο να «µαθαίνει» και να εκτελεί περίπλοκες εργασίες, εξάγοντας προοδευτικά τα χαρακτηριστικά εκείνα των προτύπων εισόδου που έχουν τη µεγαλύτερη σηµασία για τη σωστή απάντηση του δικτύου. Στο συγκεκριµένο ϑέµα, καθοριστικό ϱόλο διαδραµατίζει ο αριθµός των επιπέδων και των νευρώνων του εκάστοτε επιπέδου, αφού τα δύο αυτά στοιχεία καθορίζουν τη µορφή των ορίων κάθε κλάσης (Σχήµα 1.19). Ενας αλγόριθµος που χρησι- µοποιείται πολύ συχνά για το σκοπό αυτό είναι γνωστός ως αλγόριθµος Back-Propagation [64]. Τη µεγάλη αξία και χρησιµότητα που έχουν τα πολυεπίπεδα νευρωνικά δίκτυα µπορεί να την αντιληφθεί κανείς µέσω του Θεωρήµατος 1.1 [48, 104]. Θεώρηµα 1.1 Ενα δίκτυο πρόσθιας τροφοδότησης µε ένα κρυφό επίπεδο µπορεί να προσεγγίσει κάθε συνεχή συνάρτηση µε οποιαδήποτε επιθυµητή ακρίβεια, δεδοµένου ότι υπάρχει επαρκής αριθµός νευρώνων στο κρυφό επίπεδο. Κάθε κρυφός νευρώνας ή νευρώνας στο επίπεδο εξόδου µπορεί να κάνει δύο υπολογισµούς [52]: 1. Τον υπολογισµό του εξερχόµενου σήµατος κάθε νευρώνα. 2. Τον υπολογισµό µιας εκτίµησης του διανύσµατος κλίσης, το οποίο χρειάζεται για το προς τα πίσω πέρασµα. Τα δίκτυα MLP έχουν τα εξής χαρακτηριστικά [189, 79]: α) εν υπάρχουν συνδέσεις στο ίδιο επίπεδο. ϐ) εν υπάρχουν απευθείας συνδέσεις µεταξύ εισόδου και εξόδου. γ) Το πλήθος των εξόδων είναι ανεξάρτητο από το πλήθος των εισόδων. δ) Σε κάθε επίπεδο το πλήθος των κόµβων δεν επηρεάζεται από τα αντίστοιχα πλήθη του προηγούµενου και του επόµενου επιπέδου. ε) Κάθε κρυµµένος νευρώνας περιέχει µια µη γραµµική συνάρτηση ενεργοποίησης. στ) Η συνάρτηση ενεργοποίησης κάθε νευρώνα είναι παραγωγίσιµη.
48 1.14 ίκτυα Ακτινικής Βάσης 29 Σχήµα 1.18: Πολυεπίπεδο δίκτυο Σχήµα 1.19: Παραδείγµατα πολυεπίπεδων δικτύων Τέλος είναι ιδιαιτέρως σηµαντικό να επισηµάνουµε ότι ο αριθµός των κρυφών επιπέδων, καθώς και ο αριθµός των νευρώνων σε κάθε επίπεδο είναι εξαρχής άγνωστος σε µας. Κάθε πρόβληµα και ειδικότερα κάθε σύνολο εκπαίδευσης παρουσιάζει τις δικές του ιδιοµορφίες και ταυτόχρονα απαιτεί και τον κατάλληλο χειρισµό και επεξεργασία. υστυχώς µέχρι σήµε- ϱα είναι ϐασικό ερευνητικό Ϲήτηµα η γνώση της αρχιτεκτονικής ενός MLP δεδοµένου κάποιου συνόλου εκπαίδευσης ίκτυα Ακτινικής Βάσης Τα ίκτυα Ακτινικής Βάσης ( ΑΒ) (Radial Basis Function-RBF) προτάθηκαν από τους Moody και Darken το 1989 [179] και περιέχουν (Σχήµα 1.20) ένα µόνο κρυµµένο επίπεδο [14] στο οποίο οι j νευρώνες υπολογίζουν µια συνάρτηση ακτινικού τύπου h j (x) του διανύσµατος εισόδου x ενώ στο επίπεδο εξόδου χρησιµοποιούνται γραµµικές συναρτήσεις [89].
49 30 Γνωσιακό Υπόβαθρο Οι συναρτήσεις ακτινικής ϐάσης [223] περιέχουν κάποιο σηµείο M στο οποίο παίρνουν τη µέγιστη τιµή τους και καθώς αποµακρυνόµαστε από αυτό η τιµή τους µειώνεται µέχρι να µηδενιστεί. Μια συνάρτηση f(x) λέγεται συνάρτηση ακτινικής ϐάσης (radial basis) αν υ- Σχήµα 1.20: ίκτυο RBF πάρχει κάποιο διάνυσµα M το οποίο καλείται κέντρο και η τιµή της συνάρτησης εξαρτάται µόνο από την απόσταση του x από το κέντρο. Η ακτινική συνάρτηση (Σχήµα 1.21) χαρακτη- ϱίζεται και από το εύρος σ το οποίο είναι µια παράµετρος που ϱυθµίζεται και δείχνει πόσο αργά ή γρήγορα «πέφτει» η συνάρτηση δεξιά και αριστερά από το κέντρο της [131]. Η πιο χαρακτηριστική ακτινική συνάρτηση ϐάσης [267] είναι η συνάρτηση του Gauss. h j (x) = e x wj 2 2σ j 2 (Συνάρτηση Gauss) όπου το διάνυσµα των ϐαρών w j καθορίζει το κέντρο της συνάρτησης και η παράµετρος σ j καθορίζει την ακτίνα της συνάρτησης. Σχήµα 1.21: Γραφική παράσταση συνάρτησης RBF
50 1.14 ίκτυα Ακτινικής Βάσης 31 Είναι σηµαντικό εδώ να παραθέσουµε το ϑεώρηµα ολικής προσέγγισης για RBF δίκτυο που διατυπώθηκε από τους Park και Sandberg [193]. Θεώρηµα 1.2 Για κάθε συνεχή συνάρτηση απεικόνισης f(x) υπάρχει ένα RBF δίκτυο µε κέντρα {t i } m 1 i=1 και πλάτος σ > 0 για τα οποία η συνάρτηση απεικόνισης F (x) που δηµιουργείται από το RBF δίκτυο να είναι κοντά στην f(x) στην L p νόρµα, p [1, ] Εκπαίδευση των ικτύων Ακτινικής Βάσης Η χρησιµότητα των νευρωνικών δικτύων, όπως έχουµε αναφέρει και σε προηγούµενες ενότητες, έγκειται στο γεγονός ότι µπορούν να εκτελέσουν πολύπλοκες διαδικασίες για να λύσουν πολλά είδη προβληµάτων. Για να επιτευχθεί αυτό και να έχουµε τα επιθυµητά αποτελέσµατα, πρέπει κάθε δίκτυο που χρησιµοποιούµε, να το έχουµε εκπαιδεύσει. Αυτή η προϋπόθεση πρέπει να πληρείται και για τα δίκτυα ακτινικής ϐάσης. Κατά τη διάρκεια της εκπαίδευσης αποσκοπούµε στη δηµιουργία ενός δικτύου που ϑα παράγει όσο το δυνατό λιγότερο σφάλµα στην επεξεργασία των υπαρχόντων γνωστών δεδοµένων. Ψάχχουµε δηλαδή να ϐρούµε τις τιµές των w j, v ij που ελαχιστοποιούν την παρακάτω συνάρτηση σφάλµατος : E(θ) = 1 2 N n=1 m=1 p (t mn o m (x n, θ)) 2 (1.22) όπου x n η είσοδος του δικτύου, t n η επιθυµητή έξοδος, o(x n, θ) η έξοδος του δικτύου και θ = (θ 1,..., θ L ) ένα διάνυσµα στο οποίο αποθηκεύονται όλα τα ϐάρη του δικτύου. Η εκπαίδευση πραγµατοποιείται σε δύο στάδια [221]: 1. Χρησιµοποιείται το σύνολο των δεδοµένων εκπαίδευσης x n για τον καθορισµό των κέντρων και των ακτινών των συναρτήσεων ϐάσης. 2. Καθορίζονται οι τιµές των ϐαρών v ij και των πολώσεων v i0 του επιπέδου εξόδου. Η εκπαίδευση των νευρώνων του κρυφού επιπέδου µπορεί να γίνει µε διάφορες µεθόδους συσταδοποίησης (clustering) [89]. Παρακάτω, ϑα παρουσιαστεί η εκπαίδευση του δικτύου ακτινικής ϐάσης [241] µε τη χρήση της µεθόδου k means. Για τη µέθοδο αυτή διατίθενται p πρότυπα (x (1), x (2),..., x (p) ) που ανήκουν σε k κλάσεις X 1,..., X k, το οποίο πλήθος των κλάσεων µας δίνεται από την αρχή. Η µέθοδος k means ξεκινώντας µε τυχαία κέντρα κλάσεων και αναζητά ένα διάνυσµα που ϑα αντιπροσωπεύει τα στοιχεία κάθε κλάσης, δηλαδή το νέο κέντρο της κλάσης. Για να το επιτύχει αυτό, πρέπει να ικανοποιούνται ταυτόχρονα δύο απαιτήσεις : 1. Για κάθε i = 1,..., k η κλάση X i αποτελείται από τα πρότυπα x (p), που ϐρίσκονται πιο κοντά στο διάνυσµα c i σε σχέση µε όλα τα άλλα διανύσµατα c j, i j, δηλαδή x (p) c i = min J x (p) c j (1.23) 2. Για κάθε i = 1,..., k το διάνυσµα c i είναι ο µέσος όρος των προτύπων, που ανήκουν στην κλάση x i, δηλαδή c i = 1 x (p) (1.24) X i p x i όπου X i είναι το πλήθος των προτύπων της κλάσης και c i το κέντρο της κλάσης. Συνήθως επιλέγουµε τα εύρη των συναρτήσεων όλων των κρυφών νευρώνων να είναι ίσα µεταξύ τους : σ 1, σ 2 = = σ k = D (1.25) 2P
51 32 Γνωσιακό Υπόβαθρο όπου D είναι η απόσταση µεταξύ των πιο αποµακρυσµένων προτύπων και P είναι το πλήθος τους. Από την άλλη,στην εκπαίδευση του επιπέδου εξόδου ακολουθείται τελείως διαφορετική ϕιλοσοφία. Αφού έχουµε ήδη εκπαιδεύσει το κρυφό επίπεδο και γνωρίζουµε τις τιµές ενεργοποίησης (h 1,..., h k ) των κρυφών νευρώνων, ϑέλουµε να ϐρούµε τις τιµές o i των νευρώνων του επιπέδου εξόδου. Επειδή το επίπεδο αυτό είναι γραµµικό, η έξοδος κάθε νευρώνα δίνεται από τον τύπο : k o i = v ij h j + v i0 (1.26) j=1 Στην τιµή o (p) i για το πρότυπο εισόδου h (p) = [h (p) 1,..., h(p) k ]T αντιστοιχεί η τιµή στόχου t (p) i και ο κανόνας εκπαίδευσης είναι : v (p+1) ij = v (p) ij + β(t (p) i o (p) i )h (p) j (1.27) για j = 1,..., k i = 1,..., m v (p+1) i0 = v (p) i0 + β(t(p) i o (p) i ) (1.28) Σύγκριση δικτύων MLP και RBF Στη συγκεκριµένη ενότητα ϑα παρουσιάσουµε τις ϐασικές οµοιότητες αλλά και διαφορές [131, 94] µεταξύ των δικτύων MLP και RBF. Αρχικά και τα δύο δίκτυα υλοποιούν µη γραµµικές απεικονίσεις από το χώρο εισόδων R d στο χώρο εξόδων R p και δευτερευόντως µπορούν να προσεγγίσουν οποιαδήποτε συνάρτηση, οσοδήποτε µεγάλος αριθµός νευρώνων κι αν χρησιµοποιηθεί [193, 82]. Αναφορικά µε τις διαφορές τους, στα MLP κάθε κρυµµένος νευρώνας ορίζει την εξίσωση ενός υπερεπιπέδου και το MLP συνολικά υλοποιεί συναρτήσεις ταξινόµησης διαχωρίζοντας το χώρο των προτύπων µε υπερεπίπεδα και ορίζοντας τις περιοχές απόφασης ως τοµές των υπερεπιπέδων αυτών. ηλαδή στον υπολογισµό µιας εξόδου συµµετέχουν όλοι οι κρυµµένοι νευρώνες. Αντίθετα, στα RBF η γνώση για την έξοδο που αντιστοιχεί σε κάποια συγκεκριµένη είσοδο ενσωµατώνεται στα ϐάρη εκείνων των κρυµµένων νευρώνων οι οποίοι περιλαµβάνουν την είσοδο αυτή στη σφαίρα επιρροής τους. Επίσης τα δίκτυα RBF έχουν µόνο ένα κρυφό επίπεδο, ενώ τα δίκτυα MLP ένα ή περισσότερα. Τέλος, οι είσοδοι στις συναρτήσεις ενεργοποίησης των RBF δικτύων είναι η Ευκλείδεια απόσταση του διανύσµατος εισόδου από το κέντρο της συνάρτησης ακτινικής ϐάσης. Στα δίκτυα MLP οι είσοδοι στις συναρτήσεις ενεργοποίησης είναι το εσωτερικό γινόµενο του διανύσµατος εισόδου µε το διάνυσµα των ϐαρών του εκάστοτε νευρώνα Πιθανολογικά Νευρωνικά ίκτυα Τα πιθανολογικά νευρωνικά δίκτυα (ΠΝ ) (Probabilistic Neural Networks-PNN) εισήχθησαν από τον Donald Specht [229]. Τα δίκτυα αυτού του τύπου παρέχουν µια γενική λύση στο πρόβληµα αναγνώρισης προτύπων. Για να το επιτύχουν, χρησιµοποιούν ένα σύνολο εκπαίδευσης και εκτιµούν την πιθανότητα ενός εισερχόµενου προτύπου να είναι µέρος µιας κλάσης. Το σύνολο εκπαίδευσης µπορεί να συνδυαστεί µε περισσότερη πληροφορία, όπως η εκ των προτέρων πιθανότητα [62] κάθε κατηγορίας. Σε περίπτωση που δεν είναι διαθέσιµη αυτή η γνώση, η απόφαση για την ταξινόµηση ϐασίζεται στην εγγύτητα [13] ενός προτύπου εισόδου από τη συνάρτηση πυκνότητας πιθανότητας κάθε κλάσης. Ενα ΠΝ (Σχήµα 1.22) αποτελείται από τέσσερα επίπεδα [228] συµπεριλαµβανοµένου και του επίπεδου εισόδου. Το επίπεδο εισόδου περιλαµβάνει τόσους νευρώνες όσα και τα
52 1.15 Πιθανολογικά Νευρωνικά ίκτυα 33 Σχήµα 1.22: Το δίκτυο PNN στοιχεία των διανυσµάτων εισόδου που ϑα εισάγουµε στο δίκτυο. Οι νευρώνες σε αυτό το επίπεδο είναι πλήρως διασυνδεδεµένοι µε αυτούς του πρώτου κρυφού επιπέδου. Το πρώτο κρυφό επίπεδο ονοµάζεται και επίπεδο προτύπων (pattern layer) αφού υπάρχει ένας νευρώνας για κάθε παράδειγµα εκπαίδευσης και επίσης οι νευρώνες είναι χωρισµένοι σε οµάδες ανάλογα µε την κλάση στην οποία ανήκουν. Κάθε νευρώνας h i αυτού του επιπέδου, περιγράφεται από το κέντρο του y i και έναν παράγοντα διασποράς s i, για τον οποίο υπάρχουν πολλοί τρόποι για να καθοριστεί το s i. Κάθε νευρώνας h i παράγει την απόσταση του κέντρου y i από το πρότυπο εισόδου x µέσω µιας g(x) συνάρτησης Gauss. Αν τα x και y i ταυτίζονται, τότε η έξοδος της g(x) είναι 1. ιαφορετικά : g(x, y i, s i ) = e D 2 (x, y i ) 2s 2 i (1.29) το D 2 (x, y i ) υποδηλώνει τη συνάρτηση απόστασης που χρησιµοποιούµε ανάλογα µε τα δεδοµένα. Κάθε νευρώνας h i στο επίπεδο προτύπων συνδέεται [77] µόνο µε ένα νευρώνα στο επίπεδο άθροισης (sumation layer). Εάν η κλάση εξόδου του νευρώνα h i είναι το j, τότε ο νευρώνας h i συνδέεται µε το c j νευρώνα άθροισης. Κάθε νευρώνας c j υπολογίζει [229] το άθροισµα των συναρτήσεων ενεργοποίησης των νευρώνων του επιπέδου προτύπων που συνδέονται µε αυτόν και µεταφέρουν τα αθροίσµατα αυτά στο επίπεδο εξόδου. Στο επίπεδο εξόδου συγκρίνονται τα αθροίσµατα και επιλέγεται σαν έξοδος η κλάση στην οποία αντιστοιχεί το µεγαλύτερο άθροισµα [62]. Η έξοδος είναι ένα διάνυσµα µε 1 στη ϑέση που αντιστοιχεί στην κλάση ταξινόµησης και 0 στις υπόλοιπες [54] Πλεονεκτήµατα και µειονεκτήµατα Η χρήση των πιθανολογικών δικτύων, όπως και κάθε είδους νευρωνικού δικτύου, ακολουθείται από κάποια πλεονεκτήµατα και κάποια µειονεκτήµατα [163, 249, 45]. Το πιο αξιοσηµείωτο πλεονέκτηµα είναι η εγγυηµένη σύγκλιση του δικτύου σε ϐέλτιστο ταξινοµητή καθώς το µέγεθος του συνόλου εκπαίδευσης αυξάνει. Στα οφέλη αυτού του είδους δικτύων, συγκαταλέγεται επίσης η γρήγορη διαδικασία µάθησης καθώς και η ύπαρξη παράλληλης δοµής. Τέλος πρέπει να σηµειώσουµε ότι µπορούν να προσθαφαιρεθούν δείγµατα εκπαίδευσης χωρίς να χρειάζεται επανεκπαίδευση. Από την άλλη µεριά οι µεγάλες απαιτήσεις
53 34 Γνωσιακό Υπόβαθρο µνήµης και η αργή εκτέλεση του δικτύου είναι δύο παράγοντες που διαδραµατίζουν αποτρεπτικό ϱόλο στη χρήση τους. Επιπλέον για να λειτουργήσουν σωστά και να χουν καλά αποτελέσµατα πρέπει το σύνολο εκπαίδευσης να είναι αντιπροσωπευτικό ολόκληρου του συνόλου καταστάσεων. Κλείνοντας πρέπει να επισηµάνουµε πως δεν έχουν την ίδια ικανότητα γενίκευσης όπως τα δίκτυα που χρησιµοποιούν οπισθοδιάδοση σφάλµατος Θεωρία ταξινόµησης των ΠΝ Τα δίκτυα PNN έχουν εµπνευστεί [231] από τον ταξινοµητή Bayes. Εάν είναι γνωστή η συνάρτηση πυκνότητας πιθανότητας f k για κάθε κλάση k, τότε το άγνωστο x ανήκει στην κλάση i εάν [62]: f i (x) > f j (x), για όλα τα j i. (1.30) Σε περίπτωση που έχουν συµπεριληφθεί στους υπολογισµούς η εκ των προτέρων πιθανότητα p και το κόστος λάθος ταξινόµησης pc, ο κανόνας απόφασης γίνεται p i pc i f i > p j pc j f j, για όλα τα j i. (1.31) Η συνάρτηση πυκνότητας πιθανότητας για µια κλάση µε n στοιχεία δίνεται µέσω του τύπου : 1 nσ n k=1 w( x x k ) (1.32) σ όπου w µια συνάρτηση απόδοσης ϐάρους. Ως συνάρτηση εκτίµησης των ϐαρών χρησιµοποιείται λόγω της ευκολίας στη χρήση της, η συνάρτηση Gauss µε τύπο : g(x) = 1 nσ n k=1 e (x x k) 2 σ 2 1 (2π) l 2 s l e 1 (2π) l 2 σ l n i ni x x k 2 2s 2, όταν σαν είσοδος δίνεται ένα πρότυπο k=1 e x x k 2 2σ 2, όταν σαν είσοδος δίνεται µια σειρά από πρότυπα όπου : x η είσοδος, n το µέγεθος του δείγµατος εκπαίδευσης, x k το k παράδειγµα εκπαίδευσης, s παράγοντας δειγµατοληψίας, l το µέγεθος του διανύσµατος εισόδου Ο δεύτερος τύπος είναι για ένα παράδειγµα εισόδου µιας κλάσης και ο τρίτος για το µέσο όρο της συνάρτησης πυκνότητας πιθανότητας της κλάσης i. Ο κανόνας απόφασης γίνεται : Σύνολο εκπαίδευσης των ΠΝ g i (x) > g j (x), για όλα τα j i (1.33) Το σύνολο των παραδειγµάτων εκπαίδευσης σε ένα ΠΝ πρέπει να είναι αντιπροσωπευτικό του χώρου ταξινόµησης. Η προσθαφαίρεση παραδειγµάτων συνεπάγεται την προσθα- ϕαίρεση νευρώνων στο επίπεδο προτύπων. Καθώς το σύνολο εκπαίδευσης µεγαλώνει σε µέγεθος, το ΠΝ συγκλίνει [231] ασυµπτωτικά στο ϐέλτιστο ταξινοµητή Bayes. Η διαδικασία εκπαίδευσης ενός ΠΝ (Σχήµα 1.23) επικεντρώνεται στον υπολογισµό της παραµέτρου s.
54 1.16 Αναδροµικά ΤΝ 35 Σχήµα 1.23: Σχέση µεταξύ s και σωστής ταξινόµησης 1.16 Αναδροµικά ΤΝ Για να µπορέσουµε να υλοποιήσουµε δυναµικά συστήµατα όπως αυτά του εγκεφάλου, ϑα πρέπει να αναπτύξουµε ένα δίκτυο το οποίο να είναι σε ϑέση να αποθηκεύει εσωτερικές καταστάσεις [69]. Τα δίκτυα αυτά χαρακτηρίζονται από εσωτερικές συνδέσεις ανατροφοδότησης και ανήκουν στην κατηγορία των αναδροµικών ΤΝ. Αναδροµικό (recurrent) είναι ένα δίκτυο στο οποίο υπάρχουν επιπλέον συνδέσεις προς τα πίσω, δηλαδή νευρώνες µεγαλύτε- ϱων στρωµάτων τροφοδοτούν νευρώνες προηγούµενων στρωµάτων είτε νευρώνες του ίδιου στρώµατος. Η χρησιµοποίηση της ανατροφοδότησης δεν µπορεί να εγγυηθεί τη σταθερότητα στη γενική περίπτωση [85]. Η τιµή της εξόδου o i ενός νευρώνα i τη χρονική στιγµή k δίνεται από τη σχέση o i (k) = f( w ij o j (k 1)) (1.34) j δεδοµένου ότι έχουν δοθεί κάποιες αρχικές τιµές σε όλους τους νευρώνες του δικτύου. Η έξοδος του ανατροφοδοτούµενου ΤΝ σε κάθε χρονική στιγµή είναι συνάρτηση των προηγούµενων χρονικά εισόδων και εξόδων. Το ϐασικό πρόβληµα σε αυτά τα µοντέλα είναι η εκπαίδευσή τους ώστε να µάθουν κάποιες συγκεκριµένες χρονικές ακολουθίες στόχων [169] {t (p) (k), k = 1,..., T }, p = 1,..., P για συγκεκριµένες ακολουθίες εισόδων {x (p) (k)}. Για τη λύση του προβλήµατος χρησιµοποιείται πάλι το µέσο τετραγωνικό σφάλµα, το οποίο σε αυτήν την περίπτωση είναι : ίκτυα Hopfield E = 1 p T k=1 p=1 P [t (p) (k) o (p) (k)] 2 (1.35) Ο Hopfield συνδύασε τη χρήση της στατιστικής µηχανικής µε τη λειτουργία συγκεκρι- µένων κλάσεων αναδροµικών δικτύων τα οποία ϑα µπορούσαν να χρησιµοποιηθούν σαν συσχετιστική µνήµη [101]. Τα δίκτυα Hopfield είναι δυναµικά δίκτυα [183] που αποτελούνται από ένα µόνο επίπεδο µε πολλούς νευρώνες (Σχήµα 1.24) και µέσω των επαναλήψεων που
55 36 Γνωσιακό Υπόβαθρο επιτελούν, προσπαθούν ξεκινώντας από µια αυθαίρετη κατάσταση εισόδου να καταλήξουν σε µια σταθερή κατάσταση. Κάθε νευρώνας δέχεται σήµατα από το περιβάλλον και έχει εξόδους προς αυτό. Οι νευρώνες του δικτύου συνδέονται όλοι µεταξύ τους µε ενώσεις διπλής κατεύ- ϑυνσης. Άρα αν έχω n το πλήθος νευρώνες, ϑα έχω n(n 1) συνδέσεις. Αν τα ϐάρη για τη σύνδεση µεταξύ δύο νευρώνων είναι ίδια και για τις δύο κατευθύνσεις, τότε εξασφαλίζεται ότι το δίκτυο συγκλίνει [15] και καταλήγει σε µια σταθερή κατάσταση. Η καθυστέρηση στην ανατροφοδότηση παίζει σηµαντικό ϱόλο στην σταθερότητα του δικτύου [85]. Εάν το δίκτυο είναι ευσταθές, οι αλλαγές που επιτελούνται σε κάθε κύκλο γίνονται συνεχώς µικρότερες, µέχρις ότου τελικά οι έξοδοι να µην αλλάζουν καθόλου. Αν όµως το δίκτυο είναι ασταθές, τότε δε συγκλίνει και παρουσιάζει χαρακτηριστικά χαοτικού συστήµατος [15]. Ο στόχος εδώ είναι να σχεδιάσουµε ένα δίκτυο που αποθηκεύει ένα συγκεκριµένο σύνολο σηµείων ισορ- ϱοπίας, τέτοια ώστε, όταν παρέχεται µια αρχική κατάσταση, το δίκτυο τελικά να καταλήγει σε ένα τέτοιο σηµείο [54]. Σχήµα 1.24: ίκτυο Hopfield Εκπαίδευση δικτύου Hopfield Η εκπαίδευση στα δίκτυα Hopfield [90] έχει αρκετά κοινά στοιχεία µε την εκπαίδευση των MLP [145]. Οπως στα MLP, έτσι και στα δίκτυα Hopfield, οι παράµετροι που υπεισέρχονται είναι οι τιµές των εισερχοµένων σηµάτων και τα ϐάρη των συνάψεων τα οποία αθροίζονται κατά το γνωστό τρόπο. Αν το άθροισµα είναι ϑετικό τότε η έξοδος είναι 1, ενώ αν είναι αρνητικό τότε η έξοδος είναι 0. Το χαρακτηριστικό του δικτύου Hopfield είναι ότι οι νευρώνες συνεχώς αναπροσαρµόζονται. Αρχικά ϐρίσκονται σε µια τυχαία κατάσταση και ακολουθώντας κάποιους κανόνες [56] αναπροσαρµόζουν την κατάστασή τους χωρίς να αποκλείεται να παραµείνουν στην ίδια. Η εκπαίδευση ολοκληρώνεται όταν δεν πραγµατοποιούνται άλλες αλλαγές. Ας δούµε όµως στη συνέχεια, λίγο πιο αναλυτικά τη διαδικασία της εκπαίδευσης. Αρχικά, παρουσιάζονται τα πρότυπα στο δίκτυο και τα ϐάρη w κανονίζονται κατευθείαν από τις τιµές των προτύπων [15]. Το άθροισµα των εισερχόµενων σηµάτων είναι : s j = s i w ji, για i j (1.36) Για κάθε αναπροσαρµογή πρέπει να ϐρούµε κάθε ϕορά το νέο άθροισµα και να το συγκρίνου- µε εκ νέου µε το κατώφλι. Ενας τρόπος να γίνεται η αναπροσαρµογή είναι να ξεκινήσουµε από την πρώτη είσοδο και να αλλάζουµε τις τιµές µία-µία µέχρις ότου το σύστηµα ϕτάσει σε µια σταθερή κατάσταση, ο Hopfield όµως πρότεινε [59] οι αναπροσαρµογές να γίνονται
56 1.16 Αναδροµικά ΤΝ 37 µε τυχαίο τρόπο. Με τη µέθοδο αυτή το δίκτυο καταλήγει πάντοτε σε σταθερή κατάσταση. Κατά την εκπαίδευση [103] του δικτύου Hopfield ο στόχος µας είναι να ελαχιστοποιήσουµε την ποσότητα E που δίνεται από τον τύπο : E = 1 w ji s j s i, για i j (1.37) 2 j i Με τις αλλαγές που πραγµατοποιούνται στα s κατά τη διάρκεια της εκπαίδευσης, η ποσότητα E ή ϑα ελαττώνεται ή ϑα παραµένει ίδια. Το γεγονός αυτό συµβαίνει, διότι όταν αναπροσαρµόζεται ο νευρώνας j, το τµήµα του E που αλλάζει είναι : E j = 1 2 s ji w ji s i, για i j (1.38) i γιατί το σήµα s j είναι σταθερό και αλλάζουν µόνο τα s i, ώστε να ϕέρουν την αναπροσαρµογή του j. Εάν δεν αλλάξει καθόλου η τιµή του E j τότε η παλιά και η νέα κατάσταση ϑα είναι ίδιες. Αν άλλαξε, τότε η αλλαγή ϑα είναι : Υπάρχουν δύο περιπτώσεις : E j = 1 2 s j wji s i (1.39) Το s j µεταβάλλεται από 0 σε 1 Μετά τις αναπροσαρµογές ϑα έχουµε s j = 1 και i w jis i > 0 άρα σύµφωνα µε τη (Σχέση 1.39) ϑα ισχύει E j < 0. Το s j µεταβάλλεται από 1 σε 0 Μετά τις αναπροσαρµογές ϑα έχουµε s j = 1 και i w jis i < 0 άρα σύµφωνα µε τη (Σχέση 1.39) ϑα έχουµε ότι E j < 0. Σε όλες τις περιπτώσεις η αλλαγή του E είναι αρνητική ή µηδέν. ηλαδή το σύστηµα κινείται πάντα προς την εύρεση του ελαχίστου για την ποσότητα E. Υπάρχει περίπτωση το σύστηµα να εγκλωβιστεί σε τοπικό ελάχιστο και για να ϐρούµε το ολικό ελάχιστο ϑα πρέπει να επανεκκινήσουµε τη διαδικασία µε διαφορετικές αρχικές συνθήκες [127]. Η µέθοδος αυτή δεν εξασφαλίζει ότι δεν ϑα εγκλωβιστούµε σε νέο ή το ίδιο τοπικό ελάχιστο, γεγονός που το αναµένουµε αφού δεν υπάρχει αυστηρός µαθηµατικός τρόπος για να εκπαιδευθεί το δίκτυο µε ϐεβαιότητα ίκτυα Hopfield µε συνεχείς τιµές Σε αυτή την κατηγορία ανήκουν δίκτυα των οποίων οι νευρώνες µπορούν να πάρουν τιµές σε µια συνεχή περιοχή [122, 15]. Τα δίκτυα αυτά έχουν την ίδια τοπολογία, όπως αυτά µε τις δυαδικές τιµές, όµως η αναπροσαρµογή των ϐαρών γίνεται µε τη ϐοήθεια κάποιας σιγµοειδούς συνάρτησης. Επιπλέον, οι αναπροσαρµογές στους νευρώνες γίνονται σε συνεχή χρόνο. Η εξίσωση της παραµέτρου E δίνεται από τον τύπο : E = 1 w ji s j s i 2 j i j όπου I j είναι ο συντελεστής ορµής [102] του σήµατος εισόδου. s j I j (1.40)
57 38 Γνωσιακό Υπόβαθρο Στατιστικά δίκτυα Hopfield Τα στατιστικά δίκτυα Hopfield χρησιµοποιούν ένα στατιστικό τρόπο αναπροσαρµογής [69, 133]. Η πιθανότητα να αλλάξει ένα ϐάρος εξαρτάται από τη διαφορά εξόδου και κατω- ϕλιού (E i = s i θ i ) και δίνεται από τον τύπο P i = e E i T (1.41) όπου T είναι η ϑερµοκρασία του συστήµατος. Στην αρχή ϐάζουµε µια µεγάλη τιµή στο T και οι νευρώνες σε συνδυασµό µε αυτή την τιµή και το διάνυσµα εισόδου αποκτούν µια αρχική κατάσταση. Το δίκτυο ϐρίσκει το ελάχιστο της ποσότητας E ακολουθώντας τα παρακάτω ϐήµατα : 1. Η κατάσταση κάθε νευρώνα γίνεται 1 µε πιθανότητα P i. 2. Σταδιακά ελαττώνουµε τη ϑερµοκρασία T µέχρις ότου το σύστηµα ϕτάσει σε ισορροπία Παρατηρήσεις 1. Το δίκτυο Hopfield έχει δύο µορφές λειτουργίας [109], τη σύγχρονη και την ασύγχρονη λειτουργία. Η διαφορά τους ϐρίσκεται στο γεγονός ότι στην ασύγχρονη λειτουργία ενηµερώνονται διαδοχικά όλοι οι κόµβοι µε τυχαία επιλογή, ενώ στη σύγχρονη λειτουργία ενηµερώνονται όλοι οι κόµβοι του δικτύου ταυτόχρονα. Με την ασύγχρονη λειτουργία καταλήγουµε πάντα σε ευσταθή κατάσταση ισορροπίας, αντιθέτως, µε τη σύγχρονη λειτουργία, όπου δεν εγγυάται τη σύγκλιση του δικτύου σε κάποια κατάσταση ισορροπίας. Συγκεκριµένα, το δίκτυο ϑα καταλήξει είτε σε σηµείο ισορροπίας είτε ϑα παλινδροµεί συνεχώς µεταξύ δύο καταστάσεων. 2. Στο δίκτυο Hopfield δεν υπάρχει µόνο µια κατάσταση ισορροπίας, αλλά πολλές. Η κατάσταση ισορροπίας στην οποία ϑα συγκλίνει το δίκτυο εξαρτάται κάθε ϕορά από την αρχική συνθήκη. Τα διανύσµατα ισορροπίας λέγονται σηµεία έλξης (attractors) του συστήµατος. Για να είναι το πρότυπο x (m) = [x (m) 1,..., x (m) n ] T σηµείο έλξης, πρέπει να ισχύει η ισότητα [241]: x (m) i = sgn( n j=1 w ij x (m) j ) = sgn( P p=1 x (p) i n j=1 x (p) j x (m) j ) (1.42) ή αλλιώς x (m) i = sgn(nx (m) i + p m x (p) i n j=1 x (p) j x (m) j ) (1.43) 3. Οι Cohen και Grossberg [15, 85] απέδειξαν ότι τα δίκτυα µε µηχανισµό ανάδρασης είναι ευσταθή εάν το µητρώο των ϐαρών w είναι συµµετρικό µε 0 στην κύρια διαγώνιο. 4. Τα δίκτυα Hopfield ονοµάζονται και συνειρµικές µνήµες (associative memories) γιατί έχουν τη δυνατότητα να αναπαράγουν ολόκληρη τη µνήµη ή µεγάλο τµήµα της, µε ϐάση το περιεχόµενο των δεδοµένων εισόδου [66]. 5. Τα δίκτυα Hopfield εµφανίζουν κύκλους, όχι όµως self-loops [90]. Η απουσία selfloops εγγυάται την αποφυγή µόνιµης ανατροφοδότησης της τιµής της κατάστασης του νευρώνα.
58 1.17 ίκτυα ανταγωνιστικής µάθησης Σε ένα δίκτυο µε N κόµβους η χωρητικότητα, δηλαδή ο µέγιστος αριθµός που µπο- ϱούν να αποθηκευτούν ως ευσταθείς καταστάσεις, είναι περίπου m = 0, 15 N στην περίπτωση που χρησιµοποιείται ο κανόνας του Hebb [101]. Στην περίπτωση που τα πρότυπα εκπαίδευσης είναι γραµµικώς ανεξάρτητα, η χωρητικότητα ενός διακριτού δικτύου Hopfield µε Ν κόµβους είναι τάξης O( N 2 log N) [167] ίκτυα ανταγωνιστικής µάθησης Η ανταγωνιστική µάθηση (competitive learning) υλοποιείται σε ΤΝ (Σχήµα 1.25) που έχουν τουλάχιστον ένα επίπεδο µε ανταγωνιστικούς νευρώνες [113]. Για κάθε είσοδο του δικτύου, οι νευρώνες του ανταγωνιστικού επιπέδου ανταγωνίζονται µε σκοπό να αναδειχθεί ο νευρώνας του οποίου το διάνυσµα των ϐαρών εµφανίζει µεγαλύτερη οµοιότητα για τη συγκεκριµένη είσοδο [54]. Σκοπός της µάθησης δεν είναι πλέον η υλοποίηση κάποιας α- πεικόνισης από τα δεδοµένα εισόδου στα δεδοµένα εξόδου αλλά η αυτοοργάνωση και η ανακάλυψη διάφορων χαρακτηριστικών των ιδιοτήτων των δεδοµένων εισόδου. Ως µέτρο οµοιότητας χρησιµοποιείται [223] συνήθως µια συνάρτηση αντιστρόφως ανάλογη της ευκλείδειας απόστασης x w i του διανύσµατος εισόδου x από το διάνυσµα των ϐαρών w i. Ο νικητής νευρώνας m ϑέτει την έξοδό του o m = 1 ενώ οι υπόλοιποι νευρώνες δίνουν o i = 0, i = 1,..., M και i j. Στο πλαίσιο της µελέτης και της αξιολόγησης των Σχήµα 1.25: Ανταγωνιστικό ΤΝ αλγορίθµων ταξινόµησης, ορίζονται τα ακόλουθα είδη αποστάσεων [109]: 1. Η ευκλείδεια απόσταση µεταξύ δύο σηµάτων εισόδου : d(x l1, x l2 ) 1 n (x l1 x l2 ) n 2 i=1 2. Ο γεωµετρικός µέσος των ευκλείδειων αποστάσεων µεταξύ του κέντρου της κλάσης w k και του εκάστοτε στοιχείου που περιέχεται στην κλάση Ω k : d(w k, Ω k ) = 1 N k d N 2 (w k, x l ) k x l Ω k 3. Η µέση απόσταση µεταξύ των µελών της κάθε οµάδας : ˆd(Ω k ) = 1 N k d 2N 2 (x l, Ω k ) k x l Ω k
59 40 Γνωσιακό Υπόβαθρο Για να αξιολογηθούν τα αποτελέσµατα της εκάστοτε µεθόδου κατηγοριοποίησης και να πραγ- µατοποιηθεί σύγκριση µεταξύ των τεχνικών αυτών έχουν επινοηθεί µια σειρά από µαθηµατικούς δείκτες που παρουσιάζονται στον Πίνακα Η δοµή του δικτύου Kohonen Ενα δίκτυο Kohonen αποτελείται από δύο επίπεδα : Το πρώτο που είναι το επίπεδο εισόδου και ένα δεύτερο που είναι οργανωµένο σε µορφή πλέγµατος και µπορεί να έχει οποιαδήποτε διάσταση. Κάθε νευρώνας του πρώτου επιπέδου συνδέεται µε όλους τους νευ- ϱώνες του δεύτερου [69]. Τα δίκτυα Kohonen λειτουργούν σύµφωνα µε τον κανόνα που ακολουθεί. Ο νευρώνας του οποίου το διάνυσµα των ϐαρών είναι πιο κοντά στο διάνυσµα εισόδου, ενηµερώνεται ώστε να είναι ακόµη πιο κοντά [4]. Το αποτέλεσµα είναι ότι ο νικητής νευρώνας είναι πιο πιθανό να κερδίσει το διαγωνισµό την επόµενη ϕορά που ϑα παρουσιαστεί παρόµοιο διάνυσµα εισόδου και λιγότερο πιθανό να κερδίσει όταν ϑα παρουσιαστεί ένα πολύ διαφορετικό διάνυσµα εισόδου. Καθώς όλο και περισσότερες είσοδοι παρουσιάζονται, κάθε νευρώνας που ϐρίσκεται πλησιέστερα σε µια οµάδα διανυσµάτων εισόδου, προσαρµόζει το διάνυσµα ϐάρους του προς αυτά τα διανύσµατα εισόδου. Οταν εµφανίζονται διανύσµατα εισόδου που ανήκουν στη συστάδα ενός νευρώνα, ο νευρώνας αυτός παράγει µονάδα (1) στην έξοδο και οι υπόλοιποι µηδέν (0). Η ενηµέρωση γίνεται µόνο στα ϐάρη του νευρώνα του οποίου η έξοδος είναι 1 [55]. Σχήµα 1.26: ίκτυο Kohonen Η ϑέση του κάθε νευρώνα στο δίκτυο είναι πολύ σηµαντική γιατί η τοπολογική οργάνωση χρησιµοποιεί την έννοια της γειτονιάς ως ένα σύνολο νευρώνων που ϐρίσκονται σε διπλανές ϑέσεις στο πλέγµα [241] Εκπαίδευση του δικτύου Kohonen Η εκπαίδευση ενός δικτύου Kohonen [131] γίνεται µε τα παρακάτω ϐήµατα : 1. Αρχικοποιούµε τυχαία τις τιµές των ϐαρών των συνδέσεων των νευρώνων. 2. ίνουµε σαν είσοδο ένα πρότυπο και οι νευρώνες στο δεύτερο επίπεδο αφού αθροίσουν τις τιµές των εισόδων, αποκτούν όλοι σαν έξοδο το 0 εκτός από έναν που έχει το Πραγµατοποιούνται αλλαγές στα ϐάρη.
60 1.17 ίκτυα ανταγωνιστικής µάθησης 41 Ονοµασία Τύπος Μέσο τετραγωνικό σφάλµα J = 1 N N i=1 (x l w xl Ω k ) 2 1 Μέσος δείκτης καταλληλότητας M IA = M M k=1 d2 (w k, Ω k ) είκτης διασποράς οµαδοποίησης CDI = ˆd(W 1 1 M ) M k=1 ŝ2 (Ω k ) { } [ ] 1 1 είκτης του πίνακα οµοιότητας SMI = max p>q 1 ln[d(w p,w q)] είκτης Danies -Bouldin DBI = 1 M M k=1 max p q { ˆd(Ω p)+ ˆd(Ω q) d(w p,w q) } M k=1 xl Ω είκτης WCBCR W CBCR = k d 2 (w k,w l ) M 1 q<p d2 (w p,w q) Πίνακας 1.3: είκτες αξιολόγησης-καταλληλότητας για ανταγωνιστικά δίκτυα 4. Τα ϐήµατα 2 και 3 επαναλαµβάνονται µέχρις ότου το δίκτυο να εκπαιδευτεί. Ο στόχος µας, µετά την εκπαίδευση του δικτύου, είναι να διεγείρεται πάντα ο ίδιος νευ- ϱώνας, όταν δίνονται σαν είσοδος διανύσµατα που ανήκουν στην ίδια κλάση. Στη συνέχεια, αναλύουµε τη διαδικασία που ακολουθείται κατά την εκπαίδευση ενός δικτύου Kohonen [145, 67, 137]. Αρχικά, εισάγουµε ένα πρότυπο στο επίπεδο εισόδου. Εστω ότι το πρότυπο έχει τη µορφή s = [s 1,..., s n ] και τα ϐάρη w που συνδέουν το επίπεδο εισόδου µε τον i οστό νευρώνα στο επίπεδο εξόδου έχουν τη µορφή w i = (w i1, w i2,..., w in ). Στη συνέχεια υπολογίζουµε για κάθε νευρώνα µια τιµή d j η οποία δείχνει κατά πόσο τα ϐάρη αντιστοιχούν στις τιµές εισόδου. Η ποσότητα d j υπολογίζεται από τον τύπο : d j = (s j w ij ) 2 (1.44) j Επιλέγουµε το νευρώνα µε τη µικρότερη τιµή για το d j ενώ σε περίπτωση που υπάρχουν δύο ή περισσότεροι µε την ίδια τιµή, ϑα επιλέξουµε αυτόν που έχει το µικρότερο δείκτη i. Εστω ότι ονοµάζουµε c e το νευρώνα που επιλέγουµε. Πρέπει τώρα να ορίσουµε τη γειτονιά ως προς αυτό το νευρώνα, δηλαδή τους νευρώνες που είναι κοντά στον c e. Στην αρχή η γειτονιά ϑα είναι µεγάλη όµως κατά την εκπαίδευση συνεχώς ϑα µικραίνει ώσπου στο τέλος ϑα περιέχει µόνο το c e. Η διόρθωση των ϐαρών w γίνεται µε την εξίσωση : { 0, εάν η µονάδα i δεν ανήκει στη γειτονιά του c e w ij = α(s j w ij ), εάν η µονάδα i ανήκει στη γειτονιά του c e Με το w ij αλλάζουµε τις τιµές των νευρώνων στη γειτονιά του c e. Για να προχωρήσουµε πρέπει να ορίσουµε τη σταθερά α που είναι ο ϱυθµός εκπαίδευσης καθώς και το µέγεθος Nc e της γειτονιάς του c e. Το α κατά την εκπαίδευση ϑα ελαττώνεται µέσω της εξίσωσης α t = α 0 (1 t T ) (1.45)
61 42 Γνωσιακό Υπόβαθρο όπου α 0 η αρχική τιµή του α, T ο συνολικός αριθµός κύκλων εκπαίδευσης και t ο τρέχον κύκλος. Εάν d είναι η απόσταση από το c e µέχρι το τέλος της γειτονιάς, τότε η γειτονιά (Σχήµα 1.27) περιλαµβάνει όλα τα (x, y) για τα οποία c d < x < c d c d < x < c d Αρχικά το d είναι ίσο µε το µισό του επιπέδου (d 0 ) και η µείωσή του περιγράφεται από την εξίσωση Η εκπαίδευση σταµατάει όταν το d γίνει 1. d = d 0 (1 t T ) (1.46) Σχήµα 1.27: Ορθογώνια και εξαγωνική γειτονιά σε δίκτυο Kohonen 1.18 Βαθιά Νευρωνικά ίκτυα Η Βαθιά Μάθηση (Deep Learning) έχει εισχωρήσει δυναµικά στην καθηµερινότητά µας µέσω της χρήσης ποικίλων εφαρµογών και εργαλείων που περιέχονται στο διαδίκτυο, τα smartphones και άλλες ηλεκτρονικές συσκευές. Τα ϐαθιά νευρωνικά δίκτυα εκµεταλλεύονται την ιδιότητα ότι πολλά ϕυσικά σήµατα είναι ιεραρχίες σύνθεσης, στα οποία αποκτώνται χαρακτηριστικά υψηλότερου επιπέδου συνθέτοντας αυτά χαµηλότερου επιπέδου. Η χρησι- µότητα και η µεγάλη αξία των τεχνικών ϐαθιάς µάθησης οφείλεται στην υψίστης σηµασίας ιδιότητα, να µπορούν να επεξεργάζονται ακατέργαστα δεδοµένα, µετατρέποντάς τα σε µια κατάλληλη και ευκόλως επεξεργάσιµη από το εκάστοτε σύστηµα, εσωτερική δοµή. Επίσης, αξιοσηµείωτη είναι η δυνατότητά τους να αναγνωρίζουν την πολύπλοκη δοµή σε µεγάλα σύνολα δεδοµένων, γεγονός που επιτρέπει τη χρήση τους σε πολλούς τοµείς της επιστήµης και της τεχνολογίας όπως η αναγνώριση εικόνας [143] και οµιλίας [175]. Τα ΒΝ διαφέρουν από τα ΤΝ ως προς την αρχιτεκτονική διότι στα ΒΝ γίνεται χρησιµοποίηση πολλών επιπέδων σε αντίθεση µε τα ΤΝ που παρατηρείται συνήθως χρήση δύο ή τριών επιπέδων. Η αρχιτεκτονική ϐαθιάς µάθησης αποτελείται από µια στοίβα επιπέδων απλών µονάδων που υπολογίζουν µη γραµµικές αντιστοιχίσεις εισόδου-εξόδου και µετασχηµατίζουν την αναπαράσταση σε κάθε επίπεδο, σε µια αναπαράσταση σε υψηλότερο, ελαφρώς πιο αφηρηµένη. Με την διαδικασία αυτή καταφέρνουµε πράγµατα που ήταν µη διαχωρίσιµα στον αρχικό χώρο, να γίνουν διαχωρίσιµα στο νέο χώρο.
62 1.18 Βαθιά Νευρωνικά ίκτυα Επιβλεπόµενη µάθηση στα Βαθιά Νευρωνικά ίκτυα Οπως έχουµε ήδη προαναφέρει, η ικανότητα των νευρωνικών δικτύων που τους έχει προσδώσει τόσο κύρος και ϐαρύτητα είναι η µάθηση από το περιβάλλον και εν συνεχεία η αλληλεπίδραση µε αυτό. Η επιβλεπόµενη µάθηση στα Βαθιά Νευρωνικά ίκτυα (ΒΝ ) ακολουθεί την ίδια ϕιλοσοφία µε τα ΤΝ. ηλαδή, έχουµε ένα σύνολο δεδοµένων που γνωρίζουµε εκ των προτέρων σε ποια κλάση ανήκει και µέσω ενός αλγορίθµου προσπαθούµε να ελαχιστοποιήσουµε µια συνάρτηση σφάλµατος, αναπροσαρµόζοντας συνεχώς τα ϐάρη του δικτύου µέχρι να επιτύχουµε ένα συγκεκριµένο κατώφλι για την τιµή της συνάρτησης σφάλµατος. Ο πιο διαδεδοµένος αλγόριθµος εκπαίδευσης στα ΒΝ χρησιµοποιεί µια διαδικασία κλίσης στοχαστικής καθόδου stochastic gradient descent (SGD) [80, 28]. Η διαδικασία αυτή περιλαµβάνει την κατάτµιση του συνόλου δεδοµένων σε δύο σύνολα (το σύνολο εκπαίδευσης και το σύνολο ελέγχου) και στη συνέχεια τη δηµιουργία µικρών συνόλων που είναι υποσύνολα του συνόλου εκπαίδευσης. Τα σύνολα αυτά εισάγονται ένα-ένα στο δίκτυο και παράγεται για το καθένα ξεχωριστά η µέση κλίση και γίνεται η αναπροσαρµογή των ϐαρών. Η προαναφερθείσα διαδικασία επαναλαµβάνεται µέχρις ότου η συνάρτηση σφάλµατος σταµατήσει να µειώνεται. Ονοµάζεται στοχαστική επειδή κάθε µικρό σύνολο παραδειγµάτων δίνει µια ϑορυβώδη εκτίµηση της µέσης κλίσης σε όλα τα παραδείγµατα [149]. Τέλος, προκειµένου να εκτιµηθεί η ικανότητα χρήσης του δικτύου σε άγνωστο σύνολο δεδοµένων, εισάγουµε το σύνολο ελέγχου στο δίκτυο υπολογίζουµε την απόδοσή του. Το ϐασικό πλεονέκτηµα της ϐαθιάς µάθησης είναι ότι τα καλά χαρακτηριστικά µπορούν να γίνουν αυτοµάτως αντιληπτά χρησιµοποιώντας µια διαδικασία µάθησης γενικής σκοπού. Backpropagation στα Βαθιά Νευρωνικά ίκτυα Ο υπολογισµός της κλίσης της αντικειµενικής συνάρτησης µιας στοίβας πολλαπλών ε- πιπέδων µέσω του αλγορίθµου Backpropagation δεν είναι παρά η εφαρµογή του κανόνα της αλυσίδας για τις παραγώγους. Η κλίση της αντικειµενικής συνάρτησης σε σχέση µε την είσοδο µιας µονάδας µπορεί να υπολογιστεί, δουλεύοντας προς τα πίσω, από την κλίση σε σχέση µε την έξοδο της εν λόγω µονάδας [149] (Σχήµα 1.28). Ο υπολογισµός της κλίσης στο. Σχήµα 1.28: Προς τα πίσω πέρασµα
63 44 Γνωσιακό Υπόβαθρο επίπεδο εξόδου γίνεται µέσω των σχέσεων : ενώ στα υπόλοιπα επίπεδα µέσω των σχέσεων : E = y l t l y l (1.47) E = E y l z l y l z l (1.48) (1.49) layer 1 E E = w kl (1.50) y k z l l E = E y k (1.51) z k y k z k (1.52) Η παραπάνω διαδικασία έπεται της τροφοδοσίας του δικτύου µε πρότυπα εκπαίδευσης και της παραγωγής σφάλµατος. Η τροφοδότηση αυτή γίνεται υπολογίζοντας για κάθε επίπεδο το σταθµισµένο άθροισµα των εισόδων και τη µεταβίβαση του µέσω µιας µη γραµµικής συνάρτησης (συνήθως της rectified linear unit (ReLU) Σχήµα 1.29). Σχήµα 1.29: Η συνάρτηση ReLU, f(x) = max(0, x) Συνελικτικά Νευρωνικά ίκτυα Τα Συνελικτικά Νευρωνικά ίκτυα-σν (Convolutional Neural Networks-CNN) συγκαταλέγονται στα ϐαθιά δίκτυα πρόσθιας τροφοδότησης, έχουν το πλεονέκτηµα ότι εκπαιδεύονται ευκολότερα και παρουσιάζουν καλύτερη ικανότητα γενίκευσης από τα πλήρως συνδεδεµένα µεταξύ των γειτωνικών στρωµάτων δίκτυα [150]. Τα CNN έχουν σχεδιαστεί για να επεξεργάζονται δεδοµένα που έχουν τη µορφή µητρώων (συστάδων διανυσµάτων) στα οποία οι γειτονικές τιµές συσχετίζονται. Η αρχιτεκτονική τους αποτελείται από δύο είδη επιπέδων που κάποιες ϕορές ακολου- ϑούνται από πλήρως συνδεδεµένα επίπεδα όπως στα πολυεπίπεδα ΤΝ πρόσθιας τροφοδότησης. Το πρώτο είδος επιπέδου είναι το επίπεδο συνέλιξης (convolutional layer), στο οποίο οι νευρώνες είναι οργανωµένοι σε χάρτες χαρακτηριστικών, εντός των οποίων κάθε νευρώνας συνδέεται τοπικά µε τους χάρτες χαρακτηριστικών του προηγούµενου στρώµατος µέσω ενός συνόλου ϐαρών που ονοµάζεται τράπεζα ϕίλτρων [149]. Ο ϱόλος του δευτέρου
64 1.19 Πλεονεκτήµατα και µειονεκτήµατα των ΤΝ 45 είδους επιπέδου, που καλείται επίπεδο συγκέντρωσης (pooling layer) είναι να συγχωνεύσει σηµασιολογικά παρόµοια χαρακτηριστικά σε ένα. ηλαδή συνοψίζουν τις εξόδους γειτονικών γκρουπ νευρώνων εντός ενός παραθύρου (patch) µε µια αντιπροσωπευτική τιµή, ενώ συνήθως τα γειτονικά παράθυρα δεν επικαλύπτονται. Τα CNN έχουν τις ϱίζες τους στο neocognitron [71], η αρχιτεκτονική του οποίου ήταν κάπως παρόµοια, αλλά δεν διέθετε έναν αλγόριθµο εκπαίδευσης από άκρο σε άκρο, όπως ο Backpropagation Πλεονεκτήµατα και µειονεκτήµατα των ΤΝ Τα ΤΝ λόγω της ικανότητάς τους να ανταπεξέρχονται µε ευκολία και να παρουσιάζουν καλά αποτελέσµατα σε πολύπλοκα προβλήµατα, έχουν µια πληθώρα εφαρµογών σε διαφο- ϱετικές επιστήµες. Η ευρεία διάδοσή τους όφείλεται πέρα από τη χρησιµότητα και στην ευκολία που παρέχουν στο νέο χρήστη και ερευνητή. ηλαδή ένα ΤΝ µπορεί να αναπτυχθεί εύκολα και σε σύντοµο χρόνο, δίχως κάποιος να είναι ειδικός. Η ευκολία στη χρήση ενισχύεται ακόµα περισσότερο από ένα µεγάλο αριθµό διαθέσιµων εργαλείων λογισµικού για υλοποίηση. Από την άλλη µεριά, συναντάται δυσκολία στη δηµιουργία και χρήση ΤΝ αφού δεν υπάρχουν αυστηροί κανόνες και οδηγίες ανάλογα µε το πρόβληµα. Σαν αποτέλεσµα, η ενασχόληση ερευνητών από ένα ευρύ ϕάσµα επιστηµών έχει οδηγήσει πολλές ϕορές στην εµπειρική ανάπτυξη ενός ΤΝ πάνω σε συγκεκριµένο αντικείµενο, αφήνοντας να µελετηθούν αρκετές αρχές και κανόνες αναφορικά µε αυτό το Ϲήτηµα. Τα ΤΝ, όπως και κάθε άλλο αντικείµενο που αποτελεί προϊόν της ανάπτυξης των ε- πιστηµών και της τεχνολογίας, είναι «καταδικασµένα» ώστε η χρήση τους να προσκοµίζει τόσο πλεονεκτήµατα όσο και µειονεκτήµατα στον εκάστοτε χρήστη τους. Το γεγονός αυτό οφείλεται στο ότι παρόλο που υπάρχει και συνεχώς µεγαλώνει το εύρος τύπων ΤΝ καθώς και των αλγορίθµων εκπαίδευσης, δεν υπάρχει ο ϐέλτιστος συνδιασµός τύπου-αλγορίθµου εκπαίδευσης [263] που να επιλύει κάθε πρόβληµα. Ακολούθως, σηµειώνουµε ενδεικτικά ορισµένα από τα πλεονεκτήµατα όσο και τα µειονεκτήµατα [244]. Πλεονεκτήµατα 1. Μπορούν να εντοπίσουν εµµέσως πολύπλοκες µη γραµµικές σχέσεις µεταξύ ανεξάρτητων και εξαρτηµένων µεταβλητών και έχουν τη δυνατότητα αυτόµατα, να προσαρµόσουν τα συναπτικά ϐάρη ώστε να προσπεράσουν τέτοιου είδους πολυπλοκότητα. 2. Εχουν την δυνατότητα να ανιχνεύουν όλες τις πιθανές αλληλεπιδράσεις µεταξύ των µεταβλητών πρόβλεψης. 3. Για την ανάπτυξή τους χρησιµοπούνται πολλοί διαφορετικοί αλγόριθµοι εκπαίδευσης, κάτι που παρέχει αρκετές διεξόδους ανάλογα µε τη ϕύση της διεργασίας που καλού- µαστε να διεκπεραιώσουµε µέσω ΤΝ. Μειονεκτήµατα 1. Συχνά, όταν ϑέλουµε να επεξεργαστούµε µεγάλο όγκο δεδοµένων, απαιτείται και µεγάλη υπολογιστική ισχύς και έτσι ο χρόνος υπολογισµού µπορεί να γίνει πολύ υψηλός. 2. Μπορεί ανάλογα µε το σύνολο των δεδοµένων εκπαίδευσης να δηµιουργήσουµε ένα ΤΝ µε κακή ικανότητα γενίκευσης, κάτι που ϑα καθιστούσε το δίκτυο δύσχρηστο και αναποτελεσµατικό. 3. εν υπάρχει ΤΝ για το οποίο µπορούµε να πούµε πως είναι γενικά καλύτερο από κάποιο άλλο ή καλύτερο από όλα.
65 46 Γνωσιακό Υπόβαθρο 1.20 Μηχανές ιανυσµατικής Υποστήριξης Η Μηχανή ιανυσµατικής Υποστήριξης-(Μ Υ)(Support Vector Machine-SVM) είναι µια νέα µέθοδος ταξινόµησης [236] που εφαρµόστηκε σε προβλήµατα ταξινόµησης ως εναλλακτική των πολυστρωµατικών νευρωρικών δικτύων. Οι SVM ταξινοµούν µέσω µιας γραµµικής ή µη γραµµικής διαχωριστικής επιφάνειας στο χώρο εισόδου του συνόλου των δεδοµένων. Για να το επιτύχουν αυτό χρησιµοποιούν µια µη γραµµική απεικόνιση που µετασχηµατίζει τα αρχικά δεδοµένα εκπαίδευσης σε δεδοµένα µεγαλύτερης διάστασης [68]. Τα κύρια συστατικά µιας SVM είναι [9]: 1. Ο πυρήνας εσωτερικού γινοµένου: από τον τρόπο που δηµιουργείται ο πυρήνας εσωτε- ϱικού γινοµένου, δηµιουργούνται διαφορετικές SVM που η καθεµία έχει τη δική της µη γραµµική επιφάνεια απόφασης [94]. 2. Οι συναρτήσεις πυρήνα (kernel functions) (Πίνακας 1.4) είναι απεικονίσεις των διανυσµάτων εισόδου σε ένα µετασχηµατισµένο χώρο χαρακτηριστικών µε πιθανόν µεγαλύτερη διάσταση µέσω µιας µη γραµµικής συνάρτησης φ(x). Η συνάρτηση πυρήνα k(x, x ) = φ T (x)φ(x ) =< φ(x)φ(x ) > είναι το εσωτερικό γινόµενο των διανυσµάτων φ(x) και φ(x ) στον καινούριο χώρο χα- ϱακτηριστικών και ϑεωρείται ως ένα µέτρο οµοιότητας µεταξύ των διανυσµάτων στο χώρο εισόδου. Για να είναι µια συνάρτηση k(x, y) έγκυρη συνάρτηση πυρήνα [5, 219], ϑα πρέπει να είναι συµµετρική και το µητρώο A = {k(x n, x m )} να είναι ϑετικά ηµιορισµένο για κάθε πιθανό συνδυασµό διανυσµάτων στο σύνολο των προτύπων εκπαίδευσης. Πολυωνυµικός πυρήνας ϐαθµού h k(x i, x j ) = (x i x j + 1) h Πυρήνας συνάρτησης ακτινικής ϐάσης Gauss k(x i, x j ) = e x i x j 2σ 2 Σιγµοειδής πυρήνας k(x i, x j ) = tanh(kx i x j δ) 2 Πίνακας 1.4: Παραδείγµατα συναρτήσεων πυρήνα 3. Το περιθώριο διαχωρισµού: είναι το σηµείο ρ του υπερεπιπέδου απόφασης που απέχει τη µικρότερη απόσταση από τα δεδοµένα εισόδου. Ο στόχος µιας SVM είναι να ϐρει ένα υπερεπίπεδο για το οποίο το περιθώριο διαχωρισµού µεγιστοποιείται [68]. 4. Το ϐέλτιστο διαχωριστικό υπερεπίπεδο: διαχωρίζει (Σχήµα 1.30) τις δύο κλάσεις και µεγιστοποιεί την απόσταση µέχρι τα πιο κοντινά σηµεία από κάθε κλάση, ϐελτιώνοντας την απόδοση ταξινόµησης στα δεδοµένα εκπαίδευσης [226]. 5. Τα διανύσµατα υποστήριξης: είναι πολύ σηµαντικά για µια SVM γιατί ϐρίσκονται πολύ κοντά στην επιφάνεια απόφασης (Σχήµα 1.30) και κατά συνέπεια είναι δύσκολο να ταξινοµηθούν [9]. Αν αφαιρέσουµε όλα τα πρότυπα εκπαίδευσης, εκτός από αυτά που συµπεριλαµβάνονται στα διανύσµατα υποστήριξης, ϑα ϐρεθεί το ίδιο υπερεπίπεδο διαχωρισµού µετά την επανεκπαίδευση [32] Βέλτιστο υπερεπίπεδο για γραµµικώς διαχωρίσιµα πρότυπα Εστω ότι έχουµε το γραµµικώς διαχωρίσιµο σύνολο εκπαίδευσης {(x i, d i )} N i=1 όπου x i η είσοδος και d i το αναµενόµενο αποτέλεσµα. Η εξίσωση του υπερεπιπέδου απόφασης δίνεται µέσω της σχέσης [113]: w T x + b = 0 (1.53)
66 1.20 Μηχανές ιανυσµατικής Υποστήριξης 47 όπου w το διάνυσµα ϐάρους και b η µεροληψία. Αν w 0, b 0 οι ϐέλτιστες τιµές του διανύσµατος ϐάρους και της µεροληψίας και x (s) ένα διάνυσµα υποστήριξης για το οποίο η κλάση είναι το 1 (d (s) = 1), ϑα έχουµε ότι : g(x (s) ) = w T 0 x (s) ± b 0 = ±1, για d (s) = ±1 (1.54) Η απόσταση του διανύσµατος x (s) από το ϐέλτιστο υπερεπίπεδο είναι [94]: r = g(x(s) ) w 0 = 1 w 0, αν d(s) = 1 1 w 0, αν d(s) = 1 όπου το πρόσηµο δείχνει σε ποια µεριά του υπερεπιπέδου ϐρίσκεται το x (s). Η ϐέλτιστη τιµή για το περιθώριο διαχωρισµού δίνεται από τον τύπο : ρ = 2r = 2 w 0 (1.55) Σχήµα 1.30: Το ϐέλτιστο υπερεπίπεδο διαχωρισµού Ο στόχος είναι να ϐρούµε τις ϐέλτιστες τιµές ενός διανύσµατος ϐάρους w και τη ϐέλτιστη τιµή της µεροληψίας b ώστε για δεδοµένο σύνολο εκπαίδευσης {(x i, d i )} N i=1 να ικανοποιείται ο περιορισµός [76]: d i (w T x i + b) 1 για i = 1, 2,..., N (1.56) και το διάνυσµα ϐάρους w να ελαχιστοποιεί την κυρτή συνάρτηση κόστους E(w) = 1 2 wt w (1.57) Για να λύσουµε αυτό το πρόβληµα ϑα χρησιµοποιήσουµε τους πολλαπλασιαστές Lagrange [132]. Η συνάρτηση Lagrange δίνεται µέσω του τύπου J(w, b, α) = 1 2 wt w N α i [d i (w T x i + b) 1] (1.58) i=1
67 48 Γνωσιακό Υπόβαθρο όπου α i µη αρνητικές σταθερές που ονοµάζονται πολλαπλασιαστές Lagrange. Χρησιµοποιώντας τις µερικές παραγώγους ως προς w και ως προς b καταλήγουµε στις παρακάτω σχέσεις J(w, b, α) = 0 (1.59) w και Από τη (Σχέση 1.59) έχουµε ότι J(w, b, α) b = 0 (1.60) w = N α i d i x i (1.61) i=1 και από τη (Σχέση 1.60) έχουµε ότι N α i d i = 0 (1.62) i=1 Κατασκευάζοντας το δυικό του παραπάνω προβλήµατος καταλήγουµε ότι το ϐέλτιστο ϐάρος w 0 υπολογίζεται ως [94]: N w 0 = α oi d i x i (1.63) και η ϐέλτιστη διασπορά ως i=1 b 0 = 1 w T 0 x (s), d (s) = 1 (1.64) όπου α oi οι ϐέλτιστοι πολλαπλασιαστές Lagrange και x (s) ένα ϑετικό διάνυσµα υποστήριξης. Η πλήρης και αναλυτική κατασκευή και περιγραφή του δυικού του προβλήµατος ελαχιστοποίησης της συνάρτησης κόστους παρουσιάζεται στο [94] Βέλτιστο υπερεπίπεδο για µη γραµµικώς διαχωρίσιµα πρότυπα Για µη διαχωρίσιµα δεδοµένα δεν είναι εφικτή η εύρεση υπερεπιπέδου χωρίς σφάλµατα ταξινόµησης. Ο στόχος είναι η εύρεση ενός υπερεπιπέδου που ελαχιστοποιεί την πιθανότητα σφάλµατος ταξινόµησης. Το περιθώριο διαχωρισµού λέµε ότι είναι χαλαρό (soft), εάν ένα παράδειγµα (x i, d i ) παραβιάζει τη σχέση : Η παραβίαση γίνεται µε δύο τρόπους : d i (w T x i + b) 1, για i = 1, 2,..., N (1.65) 1. Το παράδειγµα (x i, d i ) είναι πάνω στη διαχωριστική επιφάνεια (Σχήµα 1.31) αλλά στη σωστή πλευρά του υπερεπιπέδου απόφασης. 2. Το παράδειγµα (x i, d i ) είναι πάνω στη διαχωριστική επιφάνεια (Σχήµα 2) αλλά στη λάθος πλευρά του υπερεπιπέδου απόφασης. Για την καλύτερη διαχείριση των µη διαχωρίσιµων προτύπων, εισάγουµε στη (Σχέση 1.65) µη αρνητικές ϐαθµωτές µεταβλητές {ξ i } N i=1 και η επιφάνεια απόφασης γίνεται d i (w T x i + b) 1 ξ για i = 1, 2,..., N (1.66) Τα ξ i ονοµάζονται χαλαρές µεταβλητές (slack variables) και µετρούν την απόκλιση ενός προτύπου από την ιδανική συνθήκη διαχωρισιµότητας. Ισχύει ότι : α) Αν ξ i > 1, έχουµε λάθος ταξινόµηση.
68 1.20 Μηχανές ιανυσµατικής Υποστήριξης 49 Σχήµα 1.31: Το (x i, d i ) πάνω στη σωστή µεριά του υπερεπιπέδου απόφασης (σωστή ταξινόµηση) Σχήµα 1.32: Το (x i, d i ) πάνω στη λάθος µεριά του υπερεπιπέδου απόφασης (λάθος ταξινόµηση) ϐ) Αν 0 ξ i 1, έχουµε σωστή ταξινόµηση αλλά το πρότυπο ϐρίσκεται πάνω στη διαχω- ϱιστική επιφάνεια. Στην προσπάθειά µας να ϐρούµε το διαχωριστικό υπερεπίπεδο µε το ελάχιστο λάθος ταξινόµησης καταλήγουµε στην ελαχιστοποίηση της συνάρτησης E(w, ξ) = 1 2 wt w + C N ξ i (1.67) όπου η παράµετρος C ελέγχει τη σχέση µεταξύ της πολυπλοκότητας του µηχανισµού και του αριθµού των µη διαχωρίσιµων προτύπων. Η παράµετρος C επιλέγεται από το χρήστη εµπειρικά µέσω της διαδικασίας εκπαίδευσης και ελέγχου [235, 266]. Η πολυπλοκότητα του εκπαιδευόµενου κατηγοριοποιητή χαρακτηρίζεται από το πλήθος των διανυσµάτων υποστήριξης [226]. Το πρόβληµα ελαχιστοποίησης της (Σχέσης 1.67) είναι το πρωτογενές (primal). Με την εύρεση και κατασκευή του δυϊκού του, που περιγράφεται στο [94], συµπε- i=1
69 50 Γνωσιακό Υπόβαθρο ϱάνουµε ότι η ϐέλτιστη λύση w 0 για τη (Σχέση 1.67) δίνεται µέσω της σχέσης : N s w 0 = α oi d i x i (1.68) i=1 όπου N s ο αριθµός των διανυσµάτων υποστήριξης και η ϐέλτιστη διασπορά b 0 είναι η µέση τιµή των αποτελεσµάτων της σχέσης α 1 [d i (w T x i + b) 1 + ξ] = 0 i = 1, 2,..., N (1.69) για τα (x i, d i ) για τα οποία ισχύει 0 < α oi < C Συµπεράσµατα 1. Το πλήθος των διανυσµάτων υποστήριξης που εντοπίστηκαν µπορεί να χρησιµοποιηθεί για τον υπολογισµό ενός άνω ορίου για το σφάλµα του SVM κατηγοριοποιητή. Το σφάλµα αυτό [226] είναι ανεξάρτητο από τη διαστατικότητα των δεδοµένων, γεγονός που δίνει την ικανότητα καλής γενίκευσης ακόµα και για µικρό σύνολο διανυσµάτων υποστήριξης. 2. Οι SVM είναι ανθεκτικοί στην υπερπροσαρµογή καθώς µαθαίνουν ένα ειδικό γραµµικό όριο απόφασης [58]. 3. Οι SVM µπορούν να εφαρµοστούν σε δεδοµένα µε ϑόρυβο [44]. 4. Οι αλγόριθµοι των SVM επιταχύνονται στην περίπτωση που τα δεδοµένα είναι αραιά [124]. 5. Το πλήθος των παραµέτρων που απαιτούν ϱύθµιση στις µηχανές διανυσµάτων υποστήριξης είναι σηµαντικά µικρότερο από το αντίστοιχο άλλων µεθοδολογιών [76]. Οι κυριότερες διαφορές µεταξύ των νευρωνικών δικτύων και των µηχανών διανυσµατικής υποστήριξης παρουσιάζονται στον Πίνακα 1.5 [188]. SVM Ντετερµινιστικός αλγόριθµος ύσκολη εκπαίδευση σε batch mode µε quadratic τεχνικές Καλές ιδιότητες γενίκευσης υνατή αναπαράσταση πολύ σύνθετων συναρτήσεων Νευρωνικά δίκτυα Μη ντετερµινιστικός αλγόριθµος Μπορούν να εκπαιδευτούν εύκολα κατά στοιχείο Γενικεύουν αλλά δεν έχουν µαθηµατική ϑε- µελίωση Η εκµάθηση σύνθετων συναρτήσεων µε χρήση MLP Πίνακας 1.5: Σύγκριση SVM και νευρωνικών δικτύων
70 Κ Ε Φ Α Λ Α Ι Ο 2 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ 2.1 Μελέτη ενός ΤΝ Με τον όρο µελέτη ενός ΤΝ αναφερόµαστε στην παρουσίαση και αξιολόγηση της ε- πίδρασης µιας ή περισσοτέρων παραµέτρων ενός ΤΝ στην απόδοσή του. Η εργασία αυτή είναι ιδιαίτερα µακροσκελής διότι η δηµιουργία και η λειτουργία ενός ΤΝ προϋποθέτει τον κατάλληλο ορισµό ενός µεγάλου πλήθους παραµέτρων όπως είναι ο τύπος του, η αρχιτεκτονική του, οι συναρτήσεις ενεργοποίησης που χρησιµοποιούνται ανά επίπεδο, ο τρόπος καθορισµού των αρχικών ϐαρών, η µορφή της προς ελαχιστοποίηση συνάρτησης σφάλµατος, ο αλγόριθµος εκπαίδευσης και άλλα. Στην προσπάθειά να οµαδοποιήσουµε τη µελέτη µας, έχουµε καταλήξει σε τρεις πτυχές για την κατασκευή ενός ΤΝ [204]. 1. οµή Αφορά τόσο το πλήθος των επιπέδων και των νευρώνων ανά επίπεδο όσο και τον τύπο των συναρτήσεων ενεργοποίησης. Επίσης εµπεριέχει τον τρόπο σύνδεσης των νευρώνων µεταξύ των διαφορετικών επιπέδων αλλά και µεταξύ του ίδιου επιπέδου. 2. Κωδικοποίηση Εννοούµε τον τρόπο σύµφωνα µε τον οποίο προσδιορίζονται τα αρχικά ϐάρη καθώς επίσης και τον τρόπο σύµφωνα µε τον οποίο επιτελούνται οι αλλαγές των ϐαρών στις συνδέσεις µεταξύ των νευρώνων. 3. Ανάκληση Αναφέρεται στη µέθοδο µέσω της οποίας ένα ΤΝ αποκτά την ικανότητα να ανακτά πληροφορία. Ο τύπος ανάκλησης µπορεί να χαρακτηρίσει το δίκτυο ως αυτοσυσχετι- Ϲόµενο ή ετεροσυσχετιζόµενο. Η αυτοσυσχέτιση είναι το ϕαινόµενο της συσχέτισης ενός διανύσµατος εισόδου µε τον εαυτό του ως έξοδο, ενώ ετεροσυσχέτιση είναι η ανάκληση ενός διανύσµατος εξόδου που έχει σχέση µε το διάνυσµα εισόδου. Επειδή στη συνέχεια περιγράφονται ϑέµατα που αφορούν εστιασµένα τη συµπεριφορά των παραµέτρων εκπαίδευσης στα πολυεπίπεδα ΤΝ, ο αναγνώστης ϑα µπορούσε να ανατρέξει στο ϐιβλίο [114] όπου παρουσιάζονται για τα δίκτυα RBF µέθοδοι προκειµένου να καθοριστούν τα ποιοτικά και ποσοτικά χαρακτηριστικά των κέντρων του δικτύου Αριθµός επιπέδων-στρωµάτων Ενα ΤΝ, όπως έχει ήδη προαναφερθεί, αποτελείται από τουλάχιστον δύο επίπεδα νευ- ϱώνων (συµπεριλαµβανοµένου του επίπεδου εξόδου). Ο αριθµός των επιπέδων καθορίζει και τις δυνατότητες του εκάστοτε δικτύου δηµιουργώντας περιορισµούς ως προς την χρήση του σε κάθε πρόβληµα. Η διάκριση των επιπέδων ή στρωµάτων ενός ΤΝ είναι πολύ εύκολη όταν αναπαρίσταται ως γράφος αφού κάθε επίπεδο αντιπροσωπεύεται από µια σειρά ή µια στήλη νευρώνων. Μέσα από ϑεωρητικά αποτελέσµατα όσο και από πολλές προσοµοιώσεις σε διαφορετικά πεδία εφαρµοσµένης µηχανικής υποστηρίζεται η άποψη ότι δεν χρειάζεται να
71 52 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ υπάρχουν περισσότερα από δύο κρυφά στρώµατα. Από την άλλη µεριά υπάρχουν συζητήσεις για δίκτυα µε τρία και περισσότερα κρυφά στρώµατα που έχουν καλύτερες ιδιότητες χαρτογράφησης [115]. Στη συνέχεια της υποενότητας ϑα δώσουµε έµφαση στις ιδιαιτερότητες που αποκτά ένα ΤΝ ανάλογα µε τον αριθµό των επιπέδων του, διευκρινίζοντας ότι δεν ϑα προσµετρίσουµε το επίπεδο εξόδου αφού υπάρχει και επιτελεί την ίδια λειτουργία σε όλα τα δίκτυα. Η πιο συνήθης διάκριση των ΤΝ σύµφωνα µε τον αριθµό των στρωµάτων δηµιουργεί δύο οµάδες, τα µονοστρωµατικά και τα πολυστρωµατικά δίκτυα. Ενα µονοστρωµατικό δίκτυο µπορεί να επεξεργαστεί σηµαντικές εφαρµογές, αρκεί όµως τα δεδοµένα που επεξεργάζεται να είναι γραµµικώς διαχωρίσιµα [176]. Να υπάρχει δηλαδή ένας τύπος γραµ- µικού διαχωριστή, όπως µια γραµµή στο επίπεδο ή ένα επίπεδο στον τρισδιάστατο χώρο ή ένα υπερεπίπεδο σε ανώτερες διαστάσεις έτσι ώστε το σύνολο των προτύπων εισόδου που αποκτούν µέσω του ΤΝ µια τιµή, να ϐρίσκονται όλα στη µία πλευρά αυτού του διαχωριστή, ενώ από την άλλη πλευρά να ϐρίσκονται τα πρότυπα εισόδου που δεν αποκτούν την ίδια τιµή µέσω του ΤΝ. Παραδείγµατος χάρη, δε µπορούµε να χρησιµοποιήσουµε µονοστρωµατικό δίκτυο για το πρόβληµα XOR [204]. Σε αντίθεση µε τα µονοστρωµατικά, τα πολυστρωµατικά δίκτυα ξεπερνούν το εµπόδιο-περιορισµό της γραµµικής διαχωρισιµότητας και µπορούν να ανταπεξέλθουν σε µεγάλο ϐαθµό σε πολύπλοκα προβλήµατα Αριθµός νευρώνων ανά επίπεδο Ο αριθµός των νευρώνων σε ένα κρυφό επίπεδο είναι η σηµαντικότερη παράµετρος σχεδιασµού σε σχέση µε τις δυνατότητες προσέγγισης ενός νευρωνικού δικτύου. Αυτό συµβαίνει γιατί τόσο ο αριθµός των νευρώνων εισόδου όσο και ο αριθµός των νευρώνων εξόδου καθο- ϱίζεται γενικά από τη ϕύση του προβλήµατος. ηλαδή ο αριθµός των νευρώνων στο επίπεδο εισόδου ορίζεται ως ο αριθµός των χαρακτηριστικών κάθε προτύπου εισόδου, ενώ ο αριθός των νευρώνων στο επίπεδο εξόδου εξαρτάται από το πως ϑέλει ο χρήστης να προβάλει την έξοδο. Σε αντίθεση µε τα επίπεδα εισόδου και εξόδου, ο προσδιορισµός των νευρώνων που απαιτείται σε κάθε κρυφό επίπεδο είναι δύσκολο να προσδιοριστεί. Η ϐασική ιδέα είναι να χρησιµοποιηθούν οι όσο το δυνατόν λιγότεροι νευρώνες στα κρυφά επίπεδα. Ο ϐέλτιστος α- ϱιθµός κρυφών νευρώνων ϑα πρέπει να προσδιορίζεται ϐελτιστοποιώντας την απόδοση µέσω της µεθόδου cross validation.[239] Αν και υπάρχει δισταγµός στην παράθεση συγκεκριµένων οδηγιών ώστε να καταρτιστεί ο ακριβής αριθµός νευρώνων στο κρυφό επίπεδο, τα πειραµατικά αποτελέσµατα έχουν δείξει ότι για δίκτυα εύλογου µεγέθους (εκατοντάδες ή χιλιάδες εισροών), το µέγεθος του κρυµµένου επιπέδου πρέπει να είναι µόνο ένα σχετικά µικρό τµήµα αυτού του στρώµατος εισόδου [69]. Προσδιορισµός νευρώνων στα πολυστρωµατικά δίκτυα Εάν το σύνολο εκπαίδευσης είναι χωρισµένο σε οµάδες µε παρόµοια χαρακτηριστικά, ο αριθµός αυτών των οµάδων µπορεί να χρησιµοποιηθεί για να επιλεγεί ο αριθµός των κρυφών νευρώνων. Στην άλλη ακραία περίπτωση, όταν τα δεδοµένα εκπαίδευσης είναι αραιά και δεν περιέχουν κοινά χαρακτηριστικά, τότε ο αριθµός των συνδέσεων ίσως χρειαστεί να είναι κοντά στον αριθµό των προτύπων εισόδου για να επιτευχθεί σύγκλιση του δικτύου. Ο µικρότερος αριθµός πρέπει να είναι h p 1 (2.1) n + 2 όπου p είναι ο αριθµός των προτύπων εκπαίδευσης και n είναι ο αριθµός των εισόδων του δικτύου [131]. Προκειµένου να προσδιοριστεί ο αριθµός των νευρώνων τόσο στο επίπεδο εισόδου όσο και στο κρυφό επίπεδο, µπορούν να χρησιµοποιηθούν δύο προσεγγίσεις για τη δυναµική αναπροσαρµογή τους για τη ϐελτιστοποίηση της δοµής κατά τη διαδικασία εκµάθησης. Η
72 2.1 Μελέτη ενός ΤΝ 53 πρώτη προσέγγιση [98] αρχικά χρησιµοποιεί ένα σχετικά µικρό αριθµό µονάδων εισόδου και κρυφών µονάδων και όταν κατά τη διαδικασία της µάθησης παγιδεύεται σε τοπικό ελάχιστο, προστίθενται νέοι νευρώνες τόσο στο επίπεδο εισόδου όσο και στο κρυφό. Στη συνέχεια η διαδικασία εκµάθησης προχωράει επειδή αλλάζει το σχήµα του χώρου ϐάρους. Στη δεύτερη προσέγγιση, κατασκευάζεται ένα δίκτυο µε µεγαλύτερο αριθµό κρυφών µονάδων από ότι απαιτείται και οι περιττές µονάδες αφαιρούνται σταδιακά κατά τη διαδικασία εκµάθησης [222]. Η προσέγγιση αυτή στηρίχτηκε στην παρατήρηση ότι τα ϐάρη σε ορισµένους κόµβους αλλάζουν πολύ λίγο από τις αρχικές τους τιµές, γεγονός που προσδίδει ότι αυτοί οι κόµβοι ενδέχεται να µην συµµετέχουν στη διαδικασία εκµάθησης και µπορεί να αρκούν λιγότερες κρυφές µονάδες. Υπάρχει επίσης µια αυτόµατη µέθοδος, η οποία αναπτύχθηκε από την Rumelhart [41] για το «κλάδεµα» µη απαραίτητων κόµβων από το δίκτυο. Μια παραλλαγή της ίδιας τεχνικής έγινε από τους Ishikawa και Moriyama [119], σύµφωνα µε την οποία, κατά τη διάρκεια της εκπαίδευσης γίνεται «κλάδεµα» των συνδέσεων µε µικρά ϐάρη. Τέλος στην εργασία των Reed και Russell [205] γίνεται εκτενής αναφορά πολλών µεθόδων αποκοπής κόµβων Αρχικοποίηση ϐαρών Η επιλογή των αρχικών ϐαρών είναι ιδιαιτέρως σηµαντική επειδή µε µια κακή αρχικοποίησή τους, η εκπαίδευση ϑα διαρκέσει για αρκετή ώρα χωρίς να επιτευχθεί σύγκλιση στο ολικό ελάχιστο ή ϑα σταµατήσει σύντοµα σε κάποιο τοπικό ελάχιστο [132]. Η επαναρχικοποίηση των ϐαρών είναι µια καλή επιλογή που µπορεί να γίνει προκειµένου να αντιµετωπιστεί µια τέτοια κατάσταση. Πρέπει να δοθεί ιδιαίτερη προσοχή στον καταρτισµό του µεγέθους των ϐαρών. Η πρώτη επιλογή µας είναι να αρχικοποιηθούν τα ϐάρη µε µικρές τιµές. Το πόσο µικρές, εξαρτάται από το σύνολο δεδοµένων εκπαίδευσης και ιδιαίτερα από το πόσο µεγάλες είναι οι τιµές των χαρακτηριστικών των προτύπων εισόδου. Η µάθηση είναι πολύ συχνά ένα είδος εµπειρίας και υπάρχουν πολλοί κανόνες. Μια πρώτη σκέψη [89] είναι να αρχικοποιούµε τα ϐάρη στο διάστηµα [-0.5, 0.5]. Μια άλλη επιλογή [73] είναι ότι το εύρος των αρχικών ϐαρών για τους νευρώνες του κρυφού επιπέδου µε ένα I-διάστατο διάνυσµα εισόδου πρέπει να οριοθετείται εντός του διαστήµατος [ 2 I, 2 I ]. Ενα παρόµοιο κριτήριο που δίνεται από τον Russo [215] υποδηλώνει ότι τα ϐάρη ϑα πρέπει να κατανέµονται οµοιόµορφα εντός της περιοχής [ 2.4, 2.4 ]. Ο Bishop [25] προτείνει ότι τα I I αρχικά ϐάρη ϑα πρέπει να δηµιουργούνται από µια κανονική κατανοµή µε µέση τιµή µηδέν και τυπική απόκλιση c που είναι ανάλογη προς το 1 I 1 2 για τα κανονικοποιηµένα πρότυπα εισόδου, για να εξασφαλιστεί ότι η ενεργοποίηση των κρυφών νευρώνων καθορίζεται από τα µη γραµµικά µέρη των σιγµοειδών συναρτήσεων χωρίς κορεσµό (saturation). Οι µεγάλες τιµές στην αρχικοποίηση των ϐαρών έχουν ως αντίκτυπο την πρόσληψη µικρών τιµών για την κλίση κατά τη εφαρµογή του αλγορίθµου Backpropagation, γεγονός που προκαλεί µεγάλη επιβράδυνση στη διαδικασία της µάθησης. Από την άλλη µεριά, µε την ανάθεση πολύ µικρών τιµών στα αρχικά ϐάρη, ο αλγόριθµος Backpropagation ϑα επιχειρήσει σε µια πολύ επίπεδη περιοχή γύρω από την αρχική ϑέση της επιφάνειας σφάλµατος [94]. Η αρχικοποίηση των ϐαρών του επιπέδου εξόδου δεν πρέπει να γίνει µε µικρά µικρά ϐάρη. Αν τα ϐάρη του επιπέδου εξόδου είναι µικρά, τότε µικρή ϑα είναι και η συµβολή των νευρώνων των κρυφών επιπέδων στο σφάλµα εξόδου [132]. Κατά συνέπεια η επίδραση των ϐαρών των κρυφών επιπέδων δεν είναι αρκετά ορατή. Επιπλέον τα ϐάρη των νευρώνων στο επίπεδο εξόδου επηρεάζουν τη µάθηση καθιστώντας την αργή όταν έχουν µικρές τιµές αφού συµµετέχουν στον υπολογισµό των µερικών παραγώγων της συνάρτησης σφάλµατος. Ετσι, ο Smith [227] προτείνει ότι τα µισά από τα ϐάρη του επιπέδου εξόδου ϑα πρέπει να αρχικοποιηθούν µε +1 και τα άλλα µισά µε -1. Εάν ο αριθµός των ϐαρών του επιπέδου εξόδου είναι περιττός, τότε η µεροληψία πρέπει να αρχικοποιηθεί στο µηδέν.
73 54 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Οριοθέτηση ϱυθµού µάθησης Ο ϱυθµός µάθησης η, ο οποίος καθορίζει το εύρος των αυξήσεων του ϐάρους σε κάθε επανάληψη του αλγορίθµου µάθησης, επηρεάζει σίγουρα την απόδοση της µάθησης. Συνήθως, ο ϱυθµός µάθησης πρέπει να είναι ένας µικρός αριθµός, στο διάστηµα [0.05, 0.25], για να διασφαλιστεί ότι το δίκτυο ϑα συγκλίνει σε µια λύση [69]. Μια µικρή τιµή για το ϱυθµό µάθησης σηµαίνει ότι το δίκτυο ϑα πρέπει να κάνει µεγάλο αριθµό επαναλήψεων. Αν ο ϱυθµός µάθησης η έχει µεγάλη τιµή τότε τα ϐάρη ταλαντεύονται µε µεγάλο εύρος. Εχει διαπιστωθεί ότι ο ϐέλτιστος ϱυθµός µάθησης είναι αντιστρόφως ανάλογος του αριθµού των κρυφών κόµβων [131]. Η Σχέση 2.2 δίνει µια εκτίµηση του ϱυθµού µάθησης συναρτήσει του αριθµού των προτύπων που ανήκουν σε κάθε κλάση [60]. η = pi 2 (2.2) όπου p i ο αριθµός των προτύπων που ανήκουν στην κλάση i. Ιδιαίτερο ερευνητικό ενδιαφέρον παρουσιάζουν οι µελέτες για τον προσδιορισµό της τιµής του ϱυθµού µάθησης. Ολες καταλήγουν πως τα καλύτερα αποτελέσµατα επιτυγχάνονται όταν χρησιµοποιούνται αλγόριθµοι που προσαρµόζουν την τιµή του σε κάθε επανάληψη. Για να επιλεγεί προσαρµοστικά ο ϱυθµός µάθησης, η στρατηγική αναζήτησης και σύγκλισης (search-then-converge) προτάθηκε από τους Darken και Moody [50]. Στην πρώτη ϕάση της µάθησης, η οποία ονοµάζεται «ϕάση αναζήτησης» (search phase), ο ϱυθµός µάθησης έχει οριστεί µε µεγάλη τιµή και στη συνέχεια µειώνεται εκθετικά. Στη δεύτερη ϕάση ή αλλιώς «συγκλίνουσα ϕάση» (convergent phase) ο ϱυθµός µάθησης ορίζεται µε µια µικρή τιµή και στη συνέχεια µειώνεται σταδιακά στο µηδέν. Οι δύο ισοδύναµες σχέσεις για το η που προτάθηκαν είναι : 1 η(k) = η k (2.3) k 0 η(k) = η c η c η 0 k k 0 k k 0 + k 0 ( k k 0 ) 2 (2.4) όπου οι παράµετροι η 0 > 0, c > 0 και k >> 1 επιλέγονται κατάλληλα. Προκειµένου η προσαρµογή του ϱυθµού µάθησης να αξιοποιεί την πληροφορία για το αν ο αλγόριθµος ϐρίσκεται σε σωστή κατεύθυνση, επιταχύνοντας τη σύγκλισή του στο ελάχιστο, πρέπει (Σχέση 2.5) η µεταβολή του ϱυθµού µάθησης να είναι αντίστροφη της µεταβολής της συνάρτησης σφάλµατος Ε [247]. αη(k 1), E(k) < E(k 1) f(x) = βη(k 1), E(k) c 1 E(k 1) η(k 1), αλλιώς όπου οι τυπικές τιµές των παραµέτρων είναι α = 1.05, β = 0.7 και c 1 = Μια ακόµη µέθοδος που προσαρµόζει αυτόµατα το ϱυθµό µάθησης είναι η ADADELTA. Η µέθοδος προσαρµόζεται δυναµικά µε την πάροδο του χρόνου, χρησιµοποιώντας µόνο πληροφορίες πρώτης τάξης και έχει ελάχιστη υπολογιστική επιβάρυνση [268]. Επειδή τα τελευταία επίπεδα έχουν µεγάλες κλίσεις καθόδου από ότι αυτά στην αρχή, πρέπει στα τελευταία η τιµή του ϱυθµού µάθησης να είναι µικρότερη απ ότι στα πρώτα ώστε όλοι οι νευρώνες να µαθαίνουν στον ίδιο ϱυθµό. Επίσης, για τον προαναφερθέντα λόγο, οι νευρώνες µε µεγάλο αριθµό εισόδων πρέπει να έχουν µικρότερο ϱυθµό µάθησης απ ότι αυτοί µε µικρό αριθµό εισόδων [94]. Στην περίπτωση που µαζί µε το ϱυθµό µάθησης έχει εισηχθεί και όρος µοµέντουµ για την εκπαίδευση ενός πολυεπίπεδου ΤΝ, µια προσαρµοστική διαδικασία τόσο για τον ϱυθµό (2.5)
74 2.1 Μελέτη ενός ΤΝ 55 εκµάθησης όσο και για τον όρο µοµέντουµ µπορεί να επιταχύνει τη διαδικασία της µάθησης. Ενας ιδιαίτερα αποτελεσµατικός αλγόριθµος για το συγκεκριµένο πρόβληµα προτάθηκε από τους Silva και Almeida [3]. Τέλος, όσον αφορά την επιτάχυνση της σύγκλισης του αλγορίθµου Backpropagation µέσω της προσαρµογής του ϱυθµού µάθησης, δίνονται οι εξής χρήσιµες ενέργειες [120]: 1. Κάθε προσαρµοζόµενη παράµετρος της συνάρτησης σφάλµατος πρέπει να έχει το δικό της ϱυθµό µάθησης. 2. Κάθε ϱυθµός µάθησης πρέπει να έχει την ικανότητα να αλλάζει σε κάθε επανάληψη κατά τη διάρκεια της µάθησης. 3. Οταν οι παράγωγος της συνάρτησης κόστους ως προς ένα συναπτικό ϐάρος έχει το ίδιο πρόσηµο για αρκετές συναπτές επαναλήψεις, πρέπει να αυξηθεί ο ϱυθµός µάθησης για το συγκεκριµένο ϐάρος. Ενώ όταν αλλάζει συνεχώς, πρέπει να µειωθεί Μορφή µάθησης Η ϕύση και η δοµή κάθε προβλήµατος που δύναται να αντιµετοπισθεί από ένα ΤΝ χρήζει του κατάλληλου τρόπου αναπροσαρµογής των συναπτικών ϐαρών ώστε να επιτυγχάνεται η καλύτερη δυνατή απόδοση συναρτήσει του υπολογιστικού χώρου και χρόνου. Οι ϐασικότερες επιλογές συνοψίζονται ως [162]: 1. Ντετερµινιστική µάθηση (Deterministic learning) Είναι µια τεχνική ϐελτιστοποίησης που ϐασίζεται σε µια αντικειµενική συνάρτηση που παράγει πάντα το ίδιο αποτέλεσµα, ανεξάρτητα από το πόσες ϕορές την υπολογίσουµε και γίνεται πάντα εκτός σύνδεσης. 2. Στοχαστική µάθηση (Stochastic learning) Είναι χρήσιµη όταν η αντικειµενική συνάρτηση επηρεάζεται από το ϑόρυβο και τα τοπικά ελάχιστα. Μπορεί να χρησιµοποιηθεί στο πλαίσιο ενός αλγόριθµου κλίσης καθόδου. 3. Προσαρµοστική µάθηση (Adaptive learning) Η ιδέα πίσω από την έννοια της προσαρµοστικής µάθησης είναι να απορρίπτει το παρελθόν όταν δεν έχει σχέση µε το παρόν και να προσαρµόζεται στις αλλαγές του περιβάλλοντος. 4. Κατασκευαστική µάθηση (Constructive Learning) Ασχολείται µε την αλλαγή της αρχιτεκτονικής ή των διασυνδέσεων στο δίκτυο κατά τη διάρκεια της εκπαίδευσης. ύο ϐασικές κατηγορίες αυτού του είδους µάθησης είναι η ανάπτυξη δικτύων (network growing) [100] και το «κλάδεµα» δικτύων (network pruning) [205] Τρόπος αναπροσαρµογής συναπτικών ϐαρών Η σωστή εκπαίδευση ενός ΤΝ αποτελεί συνισταµένη της σωστής επιλογής αλγορίθµου εκπαίδευσης (ώστε να ανταπεξέρχεται όσο το δυνατόν καλύτερα στο εκάστοτε πρόβληµα) και του τρόπου αναπροσαρµογής των συναπτικών ϐαρών. Για την εκπαίδευση ενός δικτύου υπάρχουν οι παρακάτω τρόποι : 1. Τρόπος προτύπων (Pattern mode): Με αυτόν τον τρόπο επιβλεπόµενης µάθησης οι προσαρµογές στα ϐάρη του Perceptron πολλών επιπέδων εκτελούνται παράδειγµα προς παράδειγµα, δηλαδή µε την παρουσίαση κάθε διανύσµατος εκπαίδευσης [237, 55].
75 56 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Κάθε αλλαγή ϐάρους που γίνεται κατά τη διάρκεια του συγκεκριµένου τρόπου εκπαίδευσης ϑα µειώσει το λάθος για εκείνη την ιδιαίτερη περίπτωση, αλλά µπορεί να µειώσει ή να αυξήσει το λάθος επάνω το σύνολο εκπαίδευσης. Η συνάρτηση κόστους που ϑα ελαχιστοποιηθεί είναι η J = 1 2 m i=1 [o (p) i y (p) i ] 2 (2.6) όπου, y i η επιθυµητή έξοδος του i οστού νευρώνα του δικτύου, o i η έξοδος του i οστού νευρώνα του δικτύου και p ο δείκτης που δείχνει πιο πρότυπο εκπαίδευσης χρησιµοποιήθηκε. 2. Μαζική µάθηση (Batch mode):στη µαζική µέθοδο επιβλεπόµενης µάθησης οι προσαρ- µογές στα ϐάρη του Perceptron πολλών επιπέδων εκτελούνται µετά από την παρουσίαση όλων των παραδειγµάτων εκπαίδευσης τα οποία αποτελούν µια εποχή εκπαίδευσης [96]. Σε αυτή την περίπτωση η συσσωρευµένη αλλαγή ϐάρους δείχνει στην κατεύθυνση της αληθινής κλίσης σφάλµατος γεγονός που υποδηλώνει ότι ένα αρκετά µικρό ϐήµα σε εκείνη την κατεύθυνση ϑα µειώσει συνολικά το λάθος στο σύνολο εκπαίδευσης, εκτός αν έχει ήδη ϐρεθεί ένα τοπικό ελάχιστο. Η συνάρτηση κόστους προς ελαχιστοποίηση είναι J = 1 2N N m n=1 i=1 [o (n) i y (n) i ] 2 (2.7) όπου, y i η επιθυµητή έξοδος του i οστού νευρώνα του δικτύου, o i η έξοδος του i οστού νευρώνα του δικτύου και n ο αριθµός της τρέχουσας εποχής εκπαίδευσης. Πρέπει να επισηµάνουµε ότι αν και η εκπαίδευση ανά εποχή ϑεωρείται περισσότερο συµβατή µε τη ϑεωρία ϐελτιστοποίησης σε σχέση µε την εκπαίδευση ανά πρότυπο, η µέση αλλαγή ϐάρους κατά τη διάρκεια της εκπαίδευσης ανά πρότυπο τείνει στην κατεύθυνση της αληθινής κλίσης [259]. Επίσης ϑα µπορούσαµε να ισχυριστούµε ότι η εκπαίδευση ανά πρότυπο µπορεί να σηµειώσει µεγαλύτερη πρόοδο κατά τη διάρκεια µιας εποχής σε σχέση µε την εκπαίδευση ανά οµάδα προτύπων, διότι η πρώτη ακολουθεί τη µεταβαλλόµενη κλίση γύρω από τις αυθαίρετες καµπύλες ενώ η δεύτερη χρησιµοποιεί ενιαίο ϐήµα ϐασισµένο στην αρχική κλίση [75] Επιπλέον στοιχεία Μεγάλη σηµασία για τη σωστή εκπαίδευση ενός ΤΝ διαδραµατίζει η µορφή και τα ποιοτικά χαρακτηριστικά της εισόδου του. Πρέπει τα δεδοµένα εκπαίδευσης να καλύπτουν ολόκληρο το χώρο εισόδου. Στην περίπτωση που εκπαιδεύουµε ένα δίκτυο για να δράσει σε ένα ϑορυβώδες περιβάλλον, πρέπει οπωσδήποτε να συµπεριλάβουµε µερικά ϑορυβώδη διανύσµατα εισόδου στο σύνολο δεδοµένων. Μερικές ϕορές η προσθήκη ϑορύβου στα διανύσµατα εισόδου κατά τη διάρκεια της εκπαίδευσης ϐοηθάει το δίκτυο να συγκλίνει ακόµη και αν δεν αναµένεται ϑόρυβος στις εισόδους. Επιπλέον, η ϑεωρία των πληροφοριών υποδηλώνει ότι ο αριθµός των παραδειγµάτων εκπαίδευσης ϑα πρέπει να είναι της ίδιας τάξης µε τον αριθµό των ελεύθερων παραµέτρων στο δίκτυο [238]. Κλείνοντας, καλή στρατηγική ϑεωρείται η τυχαία σειρά εισόδου στο ΤΝ των προτύπων εκπαίδευσης. Ενα επιπλέον χαρακτηριστικό των ΤΝ που καθορίζει την ικανότητα γενίκευσής τους είναι ο αριθµός των συναπτικών ϐαρών τους. Και σε αυτή την περίπτωση δεν υπάρχει κάποιος κανόνας που να καθορίζει τον ακριβή αριθµό. Αξίζει όµως να επισηµανθεί ότι ένα εντελώς συνδεδεµένο δίκτυο έχει τους περισσότερους δυνατούς ϐαθµούς ελευθερίας, ώστε να µπορεί να µάθει ϑεωρητικά περισσότερες λειτουργίες από ότι πιο περιορισµένα δίκτυα. Ωστόσο, αυτό δεν είναι πάντα επιθυµητό. Εάν ένα δίκτυο έχει πάρα πολλούς ϐαθµούς ελευθερίας,
76 2.2 Ανάπτυξη εφαρµογών µε ΤΝ 57 µπορεί απλά να αποµνηµονεύσει το σετ εκπαίδευσης χωρίς να µάθει την υποκείµενη δοµή του προβλήµατος και κατά συνέπεια µπορεί να γενικεύσει κακώς σε νέα δεδοµένα [239]. Επίσης ιδιαίτερο ενδιαφέρον παρουσιάζει και η επιλογή του τύπου της συνάρτησης ε- νεργοποίησης που ϑα χρησιµοποιηθεί στο εκάστοτε επίπεδο. Πρέπει να γίνει έτσι ώστε να εκµεταλεύεται τη ϕύση του προβλήµατος και να ανταπεξέρχεται όσο το δυνατόν καλύτερα στις ανάγκες του χρήστη. Παραδείγµατος χάρη, τα πολυεπίπεδα ΤΝ εκπαιδεύονται γρηγορότερα από άποψη επαναλήψεων όταν η σιγµοειδής συνάρτηση που χρησιµοποιούν είναι αντισυµµετρική σε σχέση µε το να είναι συµµετρική [94]. Μια τέτοιου είδους συνάρτηση είναι και η : f(x) = α tanh(βx) (2.8) όπου σύµφωνα µε το [148] οι τιµές των σταθερών είναι α = και β = 2 3. Τέλος, είναι άξιο αναφοράς πως το είδος του δικτύου διαδραµατίζει σηµαντικό ϱόλο στην εκπαίδευση και την ικανότητα γενίκευσης ενός ΤΝ. ηλαδή για το ίδιο πρόβληµα είναι πολύ πιθανό να παρουσιάζουν διαφορετικά αποτελέσµατα (χρόνος εκπαίδευσης, γενίκευση), διαφορετικά είδη δικτύων. Για παράδειγµα τα δίκτυα ακτινικής ϐάσης έχουν γρήγορο χρόνο εκπαίδευσης και δεν έχουν προβλήµατα µε τα τοπικά ελάχιστα, όπως συµβαίνει µε το πολυεπίπεδα δίκτυα που χρησιµοποιούν τον αλγόριθµο backpropagation. Στον αντίποδα, ένα εκπαιδευµένο δίκτυο ακτινικής ϐάσης ίσως να είναι πιο αργό από ένα πολυεπίπεδο δίκτυο που χρησιµοποιεί τον αλγόριθµο backpropagation, επειδή απαιτούνται περισσότεροι υπολογισµοί για να υπολογισθεί η έξοδος. Οι Girosi και Poggio [83] έδειξαν ότι τα δίκτυα RBF διαθέτουν καλύτερη ιδιότητα προσέγγισης για την κλάση συνεχών συναρτήσεων στον R n σε σχέση µε τα δίκτυα MLP. 2.2 Ανάπτυξη εφαρµογών µε ΤΝ Εχουµε πολλάκις αναφέρει τη χρησιµότητα των ΤΝ καθώς και το πόσο σηµαντικά εργαλεία είναι για την επίλυση ενός προβλήµατος. Πρέπει να επισηµανθεί όµως ότι πριν ξεκινήσουµε το σχεδιασµό µιας εφαρµογής µέσω ΤΝ, είναι αναγκαίο να έχουµε κάποιες προϋποθέσεις διότι δε λύνονται όλα τα προβλήµατα µε χρήση ΤΝ. Τα κριτήρια που πρέπει να πληρούνται είναι τα εξής [238]: 1. Το πρόβληµα δεν µπορεί να περιγραφεί ϱητά από ένα σύνολο εξισώσεων ή από ένα σύνολο κανόνων. 2. Υπάρχουν κάποια στοιχεία ότι υπάρχει µια αντιστοίχιση εισόδου-εξόδου µεταξύ ενός συνόλου µεταβλητών εισόδου x και των αντίστοιχων δεδοµένων εξόδου y έτσι ώστε y = f(x). 3. Πρέπει να υπάρχουν µεγάλα διαθέσιµα δεδοµένα, δηλαδή πολλά διαφορετικά παραδείγµατα µε τα οποία ϑα εκπαιδευτεί το δίκτυο. Με δεδοµένο ότι ικανοποιούνται τα παραπάνω κριτήρια, υπάρχουν ποικίλα νευρωνικά δίκτυα που µπορούν να ανταποκριθούν, εκµεταλευόµενα τα δοµικά τους χαρακτηριστικά, σε µια ευρεία γκάµα προβληµάτων. Στην πραγµατικότητα όµως, όλα τα νευρωνικά δίκτυα κάνουν ένα ή περισσότερα από τα ακόλουθα : Ταξινόµηση προτύπων (Pattern classification) Η ταξινόµηση προτύπων περιγράφεται ως η διαδικασία κατά την οποία δεδοµένου ενός συνόλου n γνωστών µοτίβων και ενός νέου προτύπου εισόδου, σκοπός είναι να ανακαλυφθεί ποια από τα γνωστά πρότυπα είναι πλησιέστερα προς το νέο, ώστε να το ταξινοµήσουµε στην ίδια κλάση µε αυτά. Το πρόβληµα της ταξινόµησης µπορεί να χωριστεί σε δυο διεργασίες, την εξαγωγή χαρακτηριστικών και την ταξινόµηση [238]. Η
77 58 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ εξαγωγή χαρακτηριστικών περιγράφεται από ένα µετασχηµατισµό που χαρτογραφεί το σηµείο x σε ένα ενδιάµεσο σηµείο y σε ένα q-διαστάσεων χαρακτηριστικό χώρο µε q < m. Η ταξινόµηση αυτή καθαυτή περιγράφεται ως µετασχηµατισµός που χαρτογραφεί το ενδιάµεσο σηµείο y σε µία από τις κλάσεις σε ένα r-διάστατο χώρο απόφασης, όπου r είναι ο αριθµός των κλάσεων που πρέπει να διακριθούν (Σχήµα 2.1). Πίνακας 2.1: Αναπαράσταση ταξινόµησης προτύπων Το αποτέλεσµα της εκπαιδευτικής ϕάσης είναι το σύνολο των ϐαρών W του ταξινοµητή. Αυτά τα ϐάρη ορίζουν τις συναρτήσεις που σχηµατίζουν τα όρια µεταξύ των κλάσεων. Αυτά τα όρια κλάσης είναι σηµεία, καµπύλες, επιφάνειες και υπερεπίπεδα [132]. Συσχέτιση προτύπων (Pattern association) Η µάθηση είναι η διεργασία που δηµιουργεί συσχετισµούς ανάµεσα σε πρότυπα που τα συνδέει κάποια σχέση. Τα πρότυπα που τα συνδέουµε µεταξύ τους µπορεί να είναι του ίδιου ή διαφορετικού τύπου. Η συσχέτιση προτύπων είναι η διαδικασία της αποµνηµόνευσης των προτύπων εισόδου-εξόδου σε µια αρχιτεκτονική προκειµένου να ανακαλέσουν κάποιο από τα αποθηκευµένα πρότυπα όταν παρουσιάζεται ένα νέο πρότυπο εισόδου. εν απαιτείται το νέο πρότυπο εισαγωγής να είναι ακριβώς το ίδιο µε αυτό που έχει αποθηκευτεί στη µνήµη, µπορεί να είναι διαφορετικό, αλλά πα- ϱόµοιο µε αυτό [131]. Το πιο σηµαντικό χαρακτηριστικό της συσχέτισης είναι ότι ένα ερέθισµα εισόδου που είναι παρόµοιο µε το ερέθισµα για τη συσχέτιση ϑα παράγει το σχετικό πρότυπο απόκρισης. Για να επιτευχθεί όµως αυτό, είναι κοµβικής σηµασίας η µετατροπή των αρχικών προτύπων σε µια κατάλληλη αναπαράσταση για υπολογισµό. Βέβαια η εύρεση της καταλληλότερης µετατροπής αποτελεί και αυτή πρόβληµα διότι
78 2.2 Ανάπτυξη εφαρµογών µε ΤΝ 59 όλες οι αναπαραστάσεις του ίδιου προτύπου δεν είναι εξίσου ισχυρές και επαρκείς. Τα δίκτυα συσχετιστικής µνήµης µπορούν να είναι είτε πρόσθιας τροφοδότησης είτε αναδροµικά. Τα δίκτυα Hopfield και οι µηχανές Boltzman είναι δύο παραδείγµατα αυτοσυσχετιστικών δικτύων. Άλλοι τύποι συσχετιστικών δικτύων είναι οι ετεροσυσχετιστικές αρχιτεκτονικές δικτύων. Μία από αυτές, είναι η αµφίδροµη συσχετιστική µνήµη BAM [139]. Οι αυτοσυσχετιστικές µνήµες χρησιµοποιούν µη επιβλεπόµενη µάθηση ενώ οι ετεροσυσχετιστικές µνήµες χρησιµοποιούν επιβλεπόµενη µάθηση. Οι συνδυαστικές µνήµες παρέχουν επίσης µία προσέγγιση στο πρόβληµα της αποθήκευσης και της ανάκτησης δεδοµένων µε ϐάση το περιεχόµενο και όχι τη διεύθυνση αποθήκευσης όπως γίνεται στους Η/Υ. Ο αριθµός των χαρακτηριστικών που µπορεί να αποθηκεύσει ένα δίκτυο συσχετιστικής µνήµης περιγράφεται από το παρακάτω ϑεώρηµα [67]. Θεώρηµα 2.1 Η χωρητικότητα ενός δικτύου συσχετιστικής µνήµης εξαρτάται από τον αριθµό των χαρακτηριστικών των αποθηκευµένων προτύπων καθώς και από τις σχέσεις µεταξύ των αποθηκευµένων προτύπων. Για να αποθηκευτούν περισσότερα πρότυπα, ϑα πρέπει να είναι µεταξύ τους ορθογώνια. Βελτιστοποίηση (Optimization) Τα προβλήµατα ϐελτιστοποίησης αφορούν την εύρεση ϐέλτιστων τιµών για παραµέτρους ενός αντικειµένου ή ενός συστήµατος που ελαχιστοποιεί µια συνάρτηση σφάλµατος. Υ- πάρχουν πολλές µέθοδοι που εφαρµόζονται σε προβλήµατα ϐελτιστοποίησης. Από τη σκοπιά της λύσης που επιτυγχάνεται, µπορούµε να διακρίνουµε µεθόδους που εγγυώνται την πλήρη ϐέλτιστη λύση και ευρετικές µεθόδους που δεν εγγυώνται τη ϐέλτιστη λύση, αλλά στις περισσότερες περιπτώσεις δίνουν µια ικανοποιητική λύση για πολύ λιγότερη πολυπλοκότητα [131]. Συσταδοποίηση δεδοµένων (Data clustering) Μια συστάδα αποτελείται από έναν αριθµό παρόµοιων προτύπων εισόδου. Αν υπάρχουν n χαρακτηριστικά που χρησιµοποιούνται για την περιγραφή των δεδοµένων, µια συστάδα είναι η δισδιάστατη απεικόνιση µιας περιοχής που περιέχει n-διάστατα πρότυπα, διαχωρισµένη από άλλες τέτοιες περιοχές. Ο αριθµός των συστάδων σε ένα σύνολο δεδοµένων δεν είναι εκ των προτέρων γνωστός και αποτελεί µη τετριµµένο πρόβληµα. Το ϐασικό Ϲήτηµα στον προσδιορισµό συστάδων είναι η περιγραφή ενός µέτρου οµοιότητας. Το πιο προφανές µέτρο οµοιότητας µεταξύ δύο προτύπων είναι η µεταξύ τους απόσταση. Η συσταδοποίηση είναι σηµαντική διότι µπορεί να δώσει κάποια εικόνα για τη ϕύση των δεδοµένων και να οδηγήσει στην ανακάλυψη διακεκριµένων υποκατηγοριών ή σηµαντικών αποκλίσεων από τα αναµενόµενα χαρακτηριστικά [238]. Αν στο τέλος αυτής της ϕάσης πρέπει να σχεδιαστεί ένας ταξινοµητής, τότε υπάρχει µια πολύ άµεση επέκταση από τον χάρτη χαρακτηριστικών χρησιµοποιώντας τον ποσοτικό προσδιορισµό διανυσµάτων (Leaming Vector Quantisation)[135]. Προσέγγιση συνάρτησης (Function approximation) Η προσέγγιση συνάρτησης είναι η διαδικασία κατά την οποία για ένα δεδοµένο σύνολο εισόδου x έχουµε ένα σύνολο εξόδου y για το οποίο y = f(x). Ο στόχος µας είναι να προσεγίσουµε την άγνωστη συνάρτηση f σε άγνωστα σηµεία. Στην ουσία το ΤΝ ϑα υπολογίσει µια συνάρτηση F, που ταιριάζει το σύνολο x µε το σύνολο y, για την οποία ισχύει ότι F (x) f(x) < ɛ x i x όπου το ɛ είναι ένας µικρός ϑετικός αριθµός και αντιστοιχεί στο σφάλµα προσέγγισης.
79 60 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ 2.3 Τεχνητά Νευρωνικά ίκτυα και MATLAB Neural Network toolbox Το Neural Network toolbox είναι ένα λογισµικό ευρείας χρήσης που χρησιµοποιείται στο σχεδιασµό και την ανάπτυξη των νευρωνικών δικτύων. Το λογισµικό αυτό είναι ϕιλικό προς το χρήστη και επιτρέπει την αλληλεπίδραση µε άλλα toolbox. Το Neural Network toolbox ενεργοποιείται πληκτρολογώντας την εντολή nntool στο Command Window της MATLAB. Θα εµφανιστεί το Σχήµα 2.1 που ϕαίνεται στην παρακάτω εικόνα Σχήµα 2.1: NN Network/Data Manager Προκειµένου να δηµιουργήσουµε και στη συνέχεια να εκπαιδεύσουµε ένα νευρωνικό δίκτυο πρέπει να ορίσουµε τις µεταβλητές εισόδου και εξόδου καθώς επίσης και τα δεδοµένα που περιέχουν. Το συγκεκριµένο toolbox επιτρέπει την είσοδο δεδοµένων απευθείας από το τρέχον workspace είτε από άλλο ανεξάρτητο αρχείο. Επειτα όπως ϕαίνεται στο Σχήµα 2.2 πρέπει να καθορίσουµε τα δοµικά στοιχεία ενός ΤΝ όπως ο τύπος, η είσοδος, η έξοδος, ο αριθµός νευρώνων ανά επίπεδο, η συνάρτηση ενεργοποίησης των νευρώνων του εκάστοτε επιπέδου (Πίνακας 2.3), ο αλγόριθµος εκπαίδευσης (Πίνακας 2.2) και η µορφή της συνάρτησης σφάλµατος. Μόλις αναθέσουµε τιµές σε όλες τις παραµέτρους, πρέπει να ορίσουµε τις παραµέτρους εκπαίδευσης του ΤΝ και να ξεκινήσουµε την εκπαίδευση. Κατά τη διάρκεια εκπαίδευσης του ΤΝ αναδύεται το παράθυρο επίβλεψης εκπαίδευσης δικτύου (Σχήµα 2.3) στο οποίο ϐλέπουµε ποιο κριτήριο τερµατισµού ενεργοποιείται ώστε να σταµατήσει η εκπαίδευση. Σχόλιο 2.1 Κατά τη χρήση του Neural Network Toolbox, η εκπαίδευση µε µαζική µάθηση ( batch training) είναι ταχύτερη και επιπλέον παράγει µικρότερα σφάλµατα από την µάθηση ανά πρότυπο ( incremental training-pattern Mode training) [108].
80 2.3 Τεχνητά Νευρωνικά ίκτυα και MATLAB 61 Σχήµα 2.2: Παράθυρο επιλογής εισόδων δικτύου Πίνακας 2.2: Αλγόριθµοι εκπαίδευσης Neural Fitting app Αυτή η εφαρµογή διαχειρίζεται νευρωνικά δίκτυα εµπρόσθιας τροφοδότησης (feed-forward nets) δύο επιπέδων µε νευρώνες που χρησιµοποιούν σιγµοειδείς συναρτήσεις ενεργοποίησης στο κρυφό επίπεδο και γραµµικές στο επίπεδο εξόδου. Το δίκτυο ϑα εκπαιδευτεί ϐάση του αλγορίθµου backpropagation των Levenberg-Marquardt [91, 181] εκτός αν δεν υπάρχει επαρκής µνήµη, όπου χρησιµοποιούνται scaled conjugate gradient backpropagation µέθοδοι [178, 8]. Για να χρησιµοποιήσουµε το Neural Fitting app πληκτρολογούµε nftool στο Command Window της MATLAB και αναδύεται το παράθυρο που παρουσιάζεται στο Σχήµα 2.4.
81 62 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Πίνακας 2.3: Συναρτήσεις ενεργοποίησης Neural Pattern Recognition app Αυτή η εφαρµογή διαχειρίζεται νευρωνικά δίκτυα εµπρόσθιας τροφοδότησης (feed-forward nets) δύο επιπέδων µε νευρώνες που χρησιµοποιούν σιγµοειδείς συναρτήσεις στο κρυφό ε- πίπεδο και softmax συναρτήσεις [29] στο επίπεδο εξόδου. Το δίκτυο ϑα εκπαιδευτεί µε scaled conjugate gradient backpropagation µεθόδους. Για να χρησιµοποιήσουµε το συγκεκριµένο
82 2.3 Τεχνητά Νευρωνικά ίκτυα και MATLAB 63 Σχήµα 2.3: Παράθυρο επίβλεψης εκπαίδευσης δικτύου Σχήµα 2.4: Παράθυρο Neural Fitting toolbox πληκτρολογούµε nprtool στο Command Window της MATLAB και εµφανίζεται το Σχήµα 2.5.
83 64 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Σχήµα 2.5: Παράθυρο Neural Pattern Recognition Neural Clustering app Αυτή η εφαρµογή διαχειρίζεται νευρωνικά δίκτυα που είναι αυτοοργανώµενοι χάρτες (self-organized maps). Οι χάρτες αυτοί αποτελούνται από ένα ανταγωνιστικό επίπεδο το οποίο µπορεί να ταξινοµήσει ένα σετ δεδοµένων οποιασδήποτε διάστασης σε τόσες κλάσεις όσες είναι και οι νευρώνες που αποτελείται το ανταγωνιστικό επίπεδο. Οι νευρώνες είναι διατεταγµένοι σύµφωνα µε την τοπολογία 2D. Το δίκτυο εκπαιδεύεται µε τον αλγόριθµο SOM µαζικής µάθησης (trainbu, learnsomb). Για να χρησιµοποιήσουµε το συγκεκριµένο toolbox πληκτρολογούµε nctool στο Command Window της MATLAB και εµφανίζεται το Σχήµα 2.6. Σχήµα 2.6: Παράθυρο Neural Clustering
84 2.3 Τεχνητά Νευρωνικά ίκτυα και MATLAB Neural Time Series app Πληκτρολογώντας ntstool στο Command Window της MATLAB εµφανίζεται το Σχήµα 2.7. Αυτό το toolbox µας επιτρέπει να λύσουµε ένα πρόβληµα µη γραµµικών χρονοσειρών Σχήµα 2.7: Παράθυρο Neural Time Series µε τη χρήση δυναµικών ΤΝ. Υπάρχουν τρία είδη προβληµάτων που µπορούν να επιλυθούν : 1. Μη γραµµική αυτοπαλινδρόµηση µε εξωτερική είσοδο (NARX)[199, 153] Προβλέπει τις τιµές της χρονοσειράς y(t) έχοντας σαν δεδοµένα d παλαιότερες τιµές της και µια άλλη χρονοσειρά x(t). 2. Μη γραµµική αυτοπαλινδρόµηση (NAR)[46, 152] Προβλέπει τις τιµές της χρονοσειράς y(t) έχοντας σαν δεδοµένα d παλαιότερες τιµές της. 3. Μη γραµµική είσοδος-έξοδος[194] Προβλέπει τις τιµές της χρονοσειράς y(t) έχοντας σαν δεδοµένα d παλαιότερες τιµές της χρονοσειράς x(t) SVM toolbox Το SVM toolbox είναι ένα toolbox που µας επιτρέπει τη χρήση των SVMs για ταξινόµηση και παλινδρόµηση [87] και είναι διαθέσιµο µέσω του ιστότοπου : Το συγκεκριµένο toolbox µπορεί να διαχειριστεί προβλήµατα ταξινόµησης και παλινδρόµησης. Οι διαθέσιµες συναρτήσεις για κάθε πρόβληµα, ανφέρονται στους Πίνακες 2.4 και Βασικές εντολές για Τεχνητά Νευρωνικά ίκτυα Οι ϐασικές εντολές που χρησιµοποιούνται στη Matlab για τη δηµιουργία και εκπαίδευση ενός ΤΝ είναι οι : new-επίθεµα Με τον όρο επίθεµα εννοούµε ένα αριθµό από χαρακτήρες που ϑα ϐρίσκονται αµέσως µετά το new και δηλώνουν το είδος του ΤΝ που ϑα κατασκευάσουµε. Οι εντολές αυτές παρουσιάζονται στον πίνακα 2.6.
85 66 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Συνάρτηση Λειτουργία svc Υπολογισµός διανυσµάτων υποστήριξης για πρόβληµα ταξινόµησης svcplot Γραφική αναπαράσταση για πρόβληµα ταξινόµησης svcoutput Υπολογισµός εξόδου µοντέλου svcerror Υπολογισµός σφάλµατος µοντέλου uiclass Γραφική διεπαφή χρήστη για πρόβληµα ταξινόµησης Πίνακας 2.4: Συναρτήσεις SVM για πρόβληµα ταξινόµησης Συνάρτηση Λειτουργία svr Υπολογισµός διανυσµάτων υποστήριξης για πρόβληµα παλινδρόµησης svrplot Γραφική αναπαράσταση για πρόβληµα παλινδρόµησης svroutput Υπολογισµός εξόδου µοντέλου svrerror Υπολογισµός σφάλµατος µοντέλου uiregress Γραφική διεπαφή χρήστη για πρόβληµα παλινδρόµησης Πίνακας 2.5: Συναρτήσεις SVM για πρόβληµα παλινδρόµησης Είδος δικτύου feedforwardnet cascadeforwardnet competlayer distdelaynet elmannet fitnet layrecnet linearlayer lvqnet narxnet patternnet perceptron selforgmap timedelaynet Εντολή newff newcf newc newdtdnn newelm newfit newlrn newlin newlvq newnarx, newnarxsp newpr newp newsom newtdnn Πίνακας 2.6: Η εντολή new train Εχοντας δηµιουργήσει το δίκτυο, ϑα το εκπαιδεύσουµε χρησιµοποιώντας την εντολή train για να παράξουµε το εκπαιδευµένο δίκτυο µε ονοµασία net1 [112]. [net1, tr] = train(net, X, T, Xi, Ai, EW ) Τα ορίσµατα και οι έξοδοι της συνάρτησης train παρουσιάζονται στον πίνακα 2.7 Κατά την εκπαίδευση πρέπει να οριστούν κάποιες παράµετροι, µερικές από αυτές παρουσι-
86 2.3 Τεχνητά Νευρωνικά ίκτυα και MATLAB 67 Μεταβλητή net X T Xi Ai EW net1 tr Σηµασία Το νευρωνικό δίκτυο Τα δεδοµένα εισόδου Τα δεδοµένα εξόδου Οι αρχικές συνθήκες χρονοκαθυστέρησης στο επίπεδο εισόδου Οι αρχικές συνθήκες χρονοκαθυστέρησης στα κρυφά επίπεδα Error weights Το εκπαιδευµένο νευρωνικό δίκτυο εδοµένα εκπαίδευσης (εποχές, απόδοση) Πίνακας 2.7: Ορίσµατα-έξοδοι εντολής train άζονται στον πίνακα 2.8. Το Xi και το Ai χρησιµοποιούνται µόνο σε δίκτυα που έχουν Μεταβλητή net.trainparam.show=a; net.trainparam.lr=b; net.trainparam.epochs=c; net.trainparam.goal=d; Σηµασία Το αποτέλεσµα εµφανίζεται κάθε A επαναλήψεις Θέτουµε την τιµή του ϱυθµού µάθησης (learning rate) ίση µε B Θέτουµε το µέγιστο αριθµό επαναλήψεων ίσο µε C ηλώνουµε ότι ϑέλουµε η ακρίβεια στα σφάλµατα να είναι ίση µε D Πίνακας 2.8: Παράµετροι εκπαίδευσης χρονοκαθυστέρηση. Στα δίκτυα που δεν χρησιµοποιούν µπορούµε να τα παραλείψου- µε γιατί η προεπιλογή για τις τιµές τους είναι το µηδέν. adapt Στην εκπαίδευση κατά παράδειγµα (pattern mode, incremental mode) χρησι- µοποιούµε την εντολή adapt αντί της train. Ο γενικός της τύπος είναι ο [110]: [net1, Y, E, P f, Af, tr] = adapt(net, P, T, P i, Ai) Οι σηµασίες των µεταβλητών εισόδου και εξόδου παρουσιάζονται στον πίνακα 2.9 Τα Ai, Af, Pi και το Pf χρησιµοποιούνται µόνο σε δίκτυα που έχουν χρονοκαθυστέρηση. sim Για να ελέγξουµε την απόδοση του net1 ϑα χρησιµοποιήσουµε την εντολή sim [111]. Τα ορίσµατα και οι έξοδοι της συνάρτησης train παρουσιάζονται στον πίνακα 2.10 ytest = sim(net1, x) Τώρα µπορεί να συγκριθεί η γνωστή έξοδος T µε αυτή του νευρωνικού δικτύου (Y) και να ϐρεθεί το σφάλµα e = T Y. Τα Xi, Ai, Af και Xf χρησιµοποιούνται µόνο σε δίκτυα που έχουν χρονοκαθυστέρηση.
87 68 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Μεταβλητή net P T Pi Ai net1 Y E Pf Af tr Σηµασία Το νευρωνικό δίκτυο Τα δεδοµένα εισόδου Τα δεδοµένα εξόδου Οι αρχικές συνθήκες χρονοκαθυστέρησης στο επίπεδο εισόδου Οι αρχικές συνθήκες χρονοκαθυστέρησης στα κρυφά επίπεδα Το εκπαιδευµένο νευρωνικό δίκτυο Η έξοδος του δικτύου Το σφάλµα του δικτύου Οι τελικές συνθήκες χρονοκαθυστέρησης στην είσοδο Οι τελικές συνθήκες χρονοκαθυστέρησης ανά επίπεδο εδοµένα εκπαίδευσης (εποχές, απόδοση) Πίνακας 2.9: Ορίσµατα-έξοδοι εντολής adapt Μεταβλητή net X T Xi Ai Y Xf Af Σηµασία Το νευρωνικό δίκτυο Τα δεδοµένα εισόδου Τα δεδοµένα εξόδου Οι αρχικές συνθήκες χρονοκαθυστέρησης στο επίπεδο εισόδου Οι αρχικές συνθήκες χρονοκαθυστέρησης στα κρυφά επίπεδα Η έξοδος του δικτύου Οι τελικές συνθήκες χρονοκαθυστέρησης στην είσοδο Οι τελικές συνθήκες χρονοκαθυστέρησης ανά επίπεδο Πίνακας 2.10: Ορίσµατα-έξοδοι εντολής sim 2.4 Τεχνητά Νευρωνικά ίκτυα και R Πακέτο AMORE Το πακέτο AMORE χρησιµοποιείται για τη δηµιουργία και εκπαίδευση πολυεπίπεδων ΤΝ πρόσθιας τροφοδότησης. Η ϐασική συνάρτηση του συγκεκριµένου πακέτου είναι η συνάρτηση newff µε τύπο : newff(n.neurons, learning.rate.global, momentum.global, error.criterium, Stao, hidden.layer, output.layer, method) Πακέτο neuralnet Το πακέτο neuralnet µας παρέχει τη δυνατότητα να εκπαιδεύσουµε ένα ΤΝ µε χρήση των αλγορίθµων backpropagation, resilient backpropagation-(rprop) µε ή χωρίς οπισθοδρόµηση των ϐαρών, καθώς και την τροποποιηµένη ολικώς συγκλίνουσα εκδοχή της resilient backpropagation-(grprop) [70]. Η χρήση του µας επιτρέπει να προσεγγίσουµε οποιαδήποτε σχέση ανάµεσα στις µεταβλητές εισόδου και εξόδου. Θεωρητικά µπορεί να διαχειριστεί προβλήµατα µε µεγάλο αριθµό µεταβλητών, αλλά ή πολυπλοκότητα του εκάστοτε προβλήµατος επηρεάζει και την υπολογιστική πολυπλοκότητα του δικτύου. Το γεγονός αυτό ίσως οδηγήσει σε πρόωρη διακοπή της διαδικασίας εκπαίδευσης. Κατά τη διάρκεια της εκπαίδευσης, οι παραπάνω αλγόριθµοι αποσκοπούν στην ελαχιστοποίηση της συνάρτησης σφάλµατος. Οι τύποι συναρτήσεων σφάλµατος που χρησιµοποιούνται στο πακέτο neuralnet είναι οι [88]:
88 2.4 Τεχνητά Νευρωνικά ίκτυα και R E = 1 2 L H (o lh y lh ) 2 (SSE) l=1 h=1 2. όπου : E = 1 2 L H (y lh log(o lh ) + (1 y lh ) log(1 o lh )) (CE) l=1 h=1 l : 1,..., L τα Ϲευγάρια εισόδου-εξόδου h : 1,..., H οι νευρώνες του επιπέδου εξόδου o: η έξοδος του δικτύου y: η επιθυµητή έξοδος Για να επιτευχθεί η ελαχιστοποίηση της συνάρτησης σφάλµατος, οι παραπάνω αλγόριθµοι ενισχύουν τα ϐάρη που έχουν κατεύθυνση αντίθετη µε αυτή της κλίσης της συνάρτησης µε τη χρήση του ϱυθµού µάθησης η k. Σε αντίθεση µε την κλασσική backpropagation όπου ο ϱυθµός µάθησης η k = η είναι κοινός για όλο το δίκτυο και οι αλλαγές στα ϐάρη γίνονται µέσω της σχέσης : w (t+1) k = w (t) k η E(t) w (t) k στη resilient backpropagation [88, 206] κάθε νευρώνας έχει το δικό του ϱυθµό µάθησης η k και οι αλλαγές στα ϐάρη γίνονται µέσω της σχέσης : w (t+1) k = w (t) k η(t) k (2.9) sign( E(t) ) (2.10) w (t) k Η ολικώς συγκλίνουσα εκδοχή του Anastasiadis [6] εκτελεί resilient backpropagation µε µια επιπλέον τροποποίηση ενός ϱυθµού µάθησης, ο οποίος σχετίζεται µε όλους τους άλλους ϱυθµούς µάθησης. Αυτός ο ϱυθµός µάθησης η i συνδέεται είτε µε τη µικρότερη απόλυτη τιµή της µερικής παραγώγου, είτε µε το µικρότερο ϱυθµό µάθησης. Ο ϱυθµός µάθησης η i υπολογίζεται µέσω της σχέσης : η i = n k=1,k i η(t) k E(t) + δ w (t) k E (t) w (t) i (2.11) όταν E(t) 0 και 0 < δ <. w (t) i Η ϐασική συνάρτηση του συγκεκριµένου πακέτου είναι η συνάρτηση neuralnet µε τύπο [70]: neuralnet(formula, data, hidden = 1, threshold = 0.01, stepmax = 1e+05, rep = 1, startweights = NULL, learningrate.limit = NULL, learningrate.factor = list(minus = 0.5, plus = 1.2), learningrate=null, lifesign = "none", lifesign.step = 1000, algorithm = "rprop+", err.fct = "sse", act.fct = "logistic", linear.output = TRUE, exclude = NULL, constant.weights = NULL, likelihood = FALSE)
89 70 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Πακέτο nnet Το πακέτο nnet µεταχειρίζεται ΤΝ µε ένα κρυφό επίπεδο επίπεδο. Χρησιµοποιεί µε- ϑόδους quasi-newton για την προσαρµογή των ϐαρών κατά την εκπαίδευση και πιο ειδικά τον αλγόριθµο BFGS [23]. Ο αλγόριθµος BFGS πήρε την ονοµασία του από τους εφευρέτες του (Broyden, Fletcher, Goldfarb και Shanno). Χρησιµοποιείται σε προβλήµατα ϐελτιστοποίησης και περιγράφεται από την ακόλουθες επαναληπτικές σχέσεις [185]: H k+1 = H k + yk (y k ) T (y k ) T s k H ks k (s k ) T H k (s k ) T H k s k (2.12) s k = x k+1 x k (2.13) y k = f(x k+1 ) f(x k ) (2.14) όπου H k+1 είναι µια προσέγγιση του Εσσιανού µητρώου. Αποδεικνύεται εύκολα ότι το H k+1 ϑα είναι ϑετικά ορισµένο όταν είναι το H k και ισχύει επίσης (s k ) T y k > 0 (2.15) Η σχέση 2.15 εξασφαλίζει τη σύγκλιση του αλγορίθµου BFGS στη γενική περίπτωση. Πιο συγκεκριµένα ο αλγόριθµος συγκλίνει στο ελάχιστο x όταν µε q υπεργραµµική σύγκλιση όταν πληρούνται οι συνθήκες της q τετραγωνικής σύγκλισης της µεθόδου Newton και όταν η στάθµη της διαφοράς H k 2 f(x k ) είναι σχετικά µικρή [49]. Η συνάρτηση nnet χρησιµοποιείται για την εκπαίδευση ΤΝ µε ένα κρυφό επίπεδο. Ο τύπος της δίνεται ως [207]: είτε ως : nnet(formula, data, weights,..., subset, na.action, contrasts = NULL) nnet(x, y, weights, size, Wts, mask, linout = FALSE, entropy = FALSE, softmax = FALSE, censored = FALSE, skip = FALSE, rang = 0.7, decay = 0, maxit = 100, Hess = FALSE, trace = TRUE, MaxNWts = 1000, abstol = 1.0e-4, reltol = 1.0e-8,...) Πακέτο frfb Το πακέτο frfb εφαρµόζει έναν αλγόριθµο για συναρτήσεις ακτινικής ϐάσης και µπορεί να χρησιµοποιηθεί µόνο για ταξινόµηση. Ο αλγόριθµος κατασκευάζει αρχικά µέσω µη επι- ϐλεπόµενης µάθησης την τοπολογία του δικτύου και στη συνέχεια χρησιµοποιεί διαφορετικό κέντρο για κάθε κλάση [23]. Ενα διάνυσµα εισόδου x, ϑα λέµε ότι ανήκει στην κλάση c i όταν µεγιστοποιείται το παρακάτω άθροισµα πυρήνων για την εκάστοτε κλάση arg ci C max j w j i k ij(x) (2.16) όπου : k ij (x) είναι µια συνάρτηση πυρήνα και w j i µια παράµετρος που αξιοποιεί τη σηµασία ενός πυρήνα. Η ϐασική συνάρτηση του συγκεκριµένου πακέτου είναι η frbf και ορίζεται ως : frbf(data_matrix, number_clusters, class_name, weighting_function = "euclidean", scale_variance = TRUE,
90 2.4 Τεχνητά Νευρωνικά ίκτυα και R 71 s_value = 0.2, d = 0.23, epsilon = 0.01, niter = -1, niter_changes = 5, perform_sum = TRUE, clustering_algorithm = "", verbose="no") Πακέτο e1071 Το πακέτο e1071 αποτελείται από πολλές συναρτήσεις που χρησιµοποιούνται για ταξινόµηση. Μια από αυτές είναι η συνάρτηση svm που µας επιτρέπει να χρησιµοποιήσουµε µηχανές υποστήριξης διανύσµατος (SVMs). Επίσης στο πακέτο αυτό περιέχονται πολλές επιλογές οπτικοποίησης των δεδοµένων. Η συνάρτηση svm χρησιµοποιείται για την εκπαίδευση SVMs. Μπορούν επίσης να χρησιµοποιηθούν για παλινδρόµηση και ταξινόµηση. Ο τύπος της έχει δύο µορφές [173]: 1. svm(formula, data = NULL,..., subset, na.action = na.omit, scale = TRUE) 2. svm(x, y = NULL, scale = TRUE, type = NULL, kernel = "radial", degree = 3, gamma = if (is.vector(x)) 1 else 1 / ncol(x), coef0 = 0, cost = 1, nu = 0.5, class.weights = NULL, cachesize = 40, tolerance = 0.001, epsilon = 0.1, shrinking = TRUE, cross = 0, probability = FALSE, fitted = TRUE,..., subset, na.action = na.omit) Η συνάρτηση svm επιστρέφει σαν έξοδο τα [172]: sv: ένα µητρώο µε τα διανύσµατα υποστήριξης labels: την κλάση κάθε στοιχείου index: ένα ευρετήριο που δείχνει τα διανύσµατα υποστήριξης στο σύνολο εισόδου Πακέτο kohonen Το πακέτο kohonen περιλαµβάνει τους τυπικούς SOMs και δύο επεκτάσεις τους που ε- πιτρέπουν τη χρήση των SOMs για ταξινόµηση, παλινδρόµηση και εξόρυξη δεδοµένων [252]. Στις παροχές του πακέτου συγκαταλέγεται και µια εκτεταµένη λίστα συναρτήσεων που πα- ϱάγουν γραφικές αναπαραστάσεις. Οι SOMs µπορούν να χρησιµοποιηθούν για αναγνώριση προτύπων εισάγοντας επιπλέον εξαρτηµένη πληροφορία Y στο αρχικό σύνολο δεδοµένων X. Συνήθως στο Y ανήκει η πληροφορία για την κλάση του εκάστοτε προτύπου. Η επιπλέον πληροφορία ϑα εκτιµηθεί µετά την εκπαίδευση του ΤΝ και υπάρχουν δύο περιπτώσεις : 1. Αν η µεταβλητή προς πρόβλεψη είναι συνεχής, τότε ο µέσος όρος όλων των παραδειγ- µάτων που ανήκουν σε κάθε οµάδα χρησιµοποιείται για την εκτίµηση της οµάδας που ανήκει το νέο παράδειγµα. Το νέο παράδειγµα ϑα ανήκει στην οµάδα που ο µέσος όρος της ϑα είναι πιο κοντά στην τιµή του Y. 2. Αν η µεταβλητή προς πρόβλεψη, είναι µεταβλητή κλάσης, τότε χρησιµοποιείται η στρατηγική ο νικητής τα παίρνει όλα.
91 72 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ Ο Melssen [170] πρότεινε µια νέα προσέγγιση στην οποία οι αποστάσεις στον X-χώρο και τον Y-χώρο να υπολογίζονται ξεχωριστά. Θεωρούµε πως και οι δύο χώροι έχουν κλιµακωθεί ώστε η µέγιστη απόσταση να ισούται µε 1 και η συνολική απόσταση να ορίζεται σαν το παρακάτω σταθµισµένο άθροισµα όπου : D(o, u) = αd x (o, u) + (1 α)d y (o, u) (2.17) D(o, u) : η απόσταση ενός αντικειµένου o από το κέντρο κάποιας κλάσης u D i (o, u) : η απόσταση ενός αντικειµένου στον εκάστοτε ανεξάρτητο χώρο α : µια σταθερά στο διάστηµα [0, 1] Η συνάρτηση som δηµιουργεί τυπικούς χάρτες (SOMs) και έχει αρκετές παραµέτρους. Ο γενικός τύπος είναι [251]: som(data, grid=somgrid(), rlen = 100, alpha = c(0.05, 0.01), radius = quantile(nhbrdist, 0.67) * c(1, -1), init, toroidal = FALSE, n.hood, keep.data = TRUE) Πακέτο RSNNS Το SNNS είναι µια ολοκληρωµένη εφαρµογή για τη δηµιουργία, την εκπαίδευση και τον έλεγχο ΤΝ. Το SNNS αναπτύχθηκε στο πανεπιστήµιο της Στουτγάρδης ενώ σήµερα διατη- ϱείται στο πανεπιστήµιο του Τίµπινγκεν. Το ιδιαίτερο χαρακτηριστικό του SNNS είναι ότι µας επιτρέπει να χειριστούµε ΤΝ που διαφέρουν σε µεγάλο ϐαθµό στον τρόπο λειτουργίας, την αρχιτεκτονική και τον τρόπο εκπαίδευσης [23]. Τα κύρια πλεονεκτήµατα του πακέτου RSNNS, το οποίο είναι ένα ολοκληρωµένο πακέτο για χρήση νευρωνικών δικτύων στη γλώσσα R, είναι τα : 1. Η λειτουργικότητα και η ευελιξία του πυρήνα SNNS παρέχεται µέσα στην R. 2. Οι παρεχόµενες διασυνδέσεις µε τις πιο κοινές εργασίες που προβλέπονται, έτσι ώστε οι µέθοδοι SNNS να µπορούν να ενταχθούν εύκολα στην R. 3. Τα παρεχόµενα εργαλεία για την οπτικοποίηση και την ανάλυση της εκπαίδευσης και του ελέγχου των ΤΝ που δηµιουργούνται µέσω του συγκεκριµένου πακέτου. Η συνάρτηση mlp Αυτή η συνάρτηση δηµιουργεί ένα πολυεπίπεδο δίκτυο (MLP) και το εκπαιδεύει. Ο τύπος της είναι [22]: mlp(x, y, size = c(5), maxit = 100, initfunc = "Randomize_Weights", initfuncparams = c(-0.3, 0.3), learnfunc = "Std_Backpropagation", learnfuncparams = c(0.2, 0), updatefunc = "Topological_Order", updatefuncparams = c(0), hiddenactfunc = "Act_Logistic", shufflepatterns = TRUE, linout = FALSE, inputstest = NULL, targetstest = NULL, prunefunc = NULL, prunefuncparams = NULL,...)
92 2.5 Τεχνητά Νευρωνικά ίκτυα και WEKA 73 Η συνάρτηση rbf Αυτή η συνάρτηση δηµιουργεί ένα δίκτυο συνάρτησης ακτινικής ϐάσης (RBF) και το εκπαιδεύει. Το RBF εκτελεί ένα γραµµικό συνδυασµό των συναρτήσεων ϐάσης οι οποίες είναι συµµετρικές γύρω από ένα κέντρο. Ο τύπος της είναι [22]: rbf(x, y, size = c(5), maxit = 100, initfunc = "RBF_Weights", initfuncparams = c(0, 1, 0, 0.02, 0.04), learnfunc = "RadialBasisLearning", learnfuncparams = c(1e-05, 0, 1e-05, 0.1, 0.8), updatefunc = "Topological_Order", updatefuncparams = c(0), shufflepatterns = TRUE, linout = TRUE, inputstest = NULL, targetstest = NULL,...) Η συνάρτηση som Αυτή η συνάρτηση δηµιουργεί και εκπαιδεύει έναν αυτο-οργανούµενο χάρτη (SOM). Ο τύπος της είναι [22]: som(x, mapx = 16, mapy = 16, maxit = 100, initfuncparams = c(1, -1), learnfuncparams = c(0.5, mapx/2, 0.8, 0.8, mapx), updatefuncparams = c(0, 0, 1), shufflepatterns = TRUE, calculatemap = TRUE, calculateactmaps = FALSE, calculatespanningtree = FALSE, savewinnersperpattern = FALSE, targets = NULL,...) Πακέτο pnn Το πακέτο pnn υλοποιεί τον αλγόριθµο που πρότεινε ο Specht [229]. Το ΤΝ γνωρίζοντας ένα σύνολο από πρότυπα καθώς και την κλάση στην οποία ταξινοµούνται, εκπαιδεύεται µε σκοπό να προβλέπει την κλάση που ϑα ανήκει κάθε νέο εισερχόµενο πρότυπο. Σε αυτό το πακέτο χρησιµοποιούνται οι εξής τέσσερεις ϐασικές συναρτήσεις [40]: 1. learn ηµιουργεί ένα νέο πιθανολογικό νευρωνικό δίκτυο ή αναβαθµίζει ένα ήδη υπάρχον εισάγοντας νέα πρότυπα εκπαίδευσης. 2. smooth Υπολογίζει την παράµετρο εξοµάλυνσης µέσω γενετικού αλγορίθµου σε περίπτωση που αυτή δεν είναι γνωστή. 3. perf Υπολογίζει την απόδοση ενός πιθανολογικού νευρωνικού δικτύου. 4. guess Προβλέπει την κλάση ταξινόµησης κάθε νέου προτύπου. 2.5 Τεχνητά Νευρωνικά ίκτυα και WEKA Το WEKA ( Waikato Environment for Knowledge Analysis) αναπτύχθηκε στο University of Waikato της Νέας Ζηλανδίας και περιέχει ένα ευρύ ϕάσµα αλγορίθµων µηχανικής µάθησης για εργασίες εξόρυξης δεδοµένων [92]. Είναι ιδιαίτερα διαδεδοµένο στην κοινότητα της µηχανικής µάθησης διότι εκτός του µεγάλου εύρους των προσφερόµενων αλγορίθµων, είναι
93 74 Μελέτη ΤΝ και ανάπτυξη εφαρµογών µε ΤΝ ιδιαιτέρως εύκολο στη χρήση του καθώς παρέχει ένα προγραµµατιστικό περιβάλλον που επιτρέπει την υλοποίηση αλγορίθµων χωρίς να απαιτεί τη γνώση προγραµµατιστικών τεχνικών από τους χρήστες του. Εχει αναπτυχθεί µε τη χρήση της γλώσσας προγραµµατισµού Java και είναι άµεσα διαθέσιµο από την ηλεκτρονική διεύθυνση όπου εκτός από την εφαρµογή παρέχονται και αρκετές σηµαντικές πληροφορίες γι αυτήν. Το WEKA παρέχει αρκετές διαφορετικές διεπαφές χρήστη που αναφέρονται παρακάτω επιγραµµατικά [30]. 1. Simple CLI: Παρέχει γραµµή εντολών για τις ϱουτίνες του WEKA και είναι περισσότερο για λειτουργικά συστήµατα που δεν έχουν γραµµή εντολών. 2. Explorer: Παρέχει γραφικό περιβάλλον για απλούς πειραµατισµούς µε δεδοµένα και µοντέλα. 3. KnowledgeFlow: ίνει ίδιες δυνατότητες µε το προηγούµενο αλλά µε ένα περιβάλλον που επιτρέπει drag-and-drop. 4. Experimenter: Επιτρέπει τη δηµιουργία πειραµάτων και στατιστικών αναλύσεων των µεθόδων που παρέχονται. Η αρχιτεκτονική MLP περιλαµβάνει υλοποιήσεις για νευρώνες µε δύο τύπους συναρτήσεων ενεργοποίησης, τη γραµµική και τη λογιστική. Η εκπαίδευσή του δικτύου γίνεται µε τη µέθοδο οπισθοδιάδοσης σφάλµατος και οι παράµετροί του µπορούν να καθοριστούν από το χρήστη. Η εκπαίδευσή µιας αρχιτεκτονικής RBF πραγµατοποιείται σε δύο στάδια. Στην αρχή καθορίζονται τα κέντρα και οι ακτίνες των συναρτήσεων ϐάσης µέσω του αλγορίθµου k- means και στη συνέχεια καθορίζονται οι τιµές των ϐαρών και των πολώσεων των νευρώνων του επιπέδου εξόδου. Τέλος πρέπει να επισηµανθεί ότι παρόλο που το WEKA παρέχει µεγάλο πλήθος επιλογών για τους αλγορίθµους µηχανικής µάθησης, έχει παροπλιστεί και χρησιµοποιείται κυρίως για εκπαιδευτικούς λόγους όσον αφορά την εκπαίδευση και χρήση ΤΝ. Η κύρια αιτία του ϕαινοµένου αυτού οφείλεται στην έλλειψη δυνατότητας επέµβασης στον κώδικα του εκάστοτε αλγορίθµου. Επιπλέον δεν παρέχει τη δυνατότητα δηµιουργίας ΤΝ µε διαφορετική αρχιτεκτονική εκτός από την προεπιλεγµένη για κάθε τύπο δικτύου.
94 Κ Ε Φ Α Λ Α Ι Ο 3 Προγραµµατιστικά περιβάλλοντα 3.1 MATLAB: Προσφερόµενες επιλογές Προεπεξεργασία των δεδοµένων Η προεπεξεργασία (preprocessing) των δεδοµένων είναι µια σηµαντική διεργασία που πρέπει να προηγηθεί του σχεδιασµού και της υλοποίησης ενός ΤΝ. Κρίνεται απαραίτητη διότι είτε τα αρχικά δεδοµένα πάσχουν από διαφόρων ειδών προβλήµατα (π.χ. ύπαρξη χαµένων τιµών και ϑορύβου), είτε οι απαιτήσεις των µεθόδων επεξεργασίας επιβάλλουν τον µετασχηµατισµό των δεδοµένων. Εν ολίγοις, ο πρωταρχικός σκοπός της προεπεξεργασίας των δεδοµένων είναι η διευκόλυνση της διαδικασίας της µάθησης από το ΤΝ. Το περιβάλλον του MATLAB παρέχει τις εξής επιλογές : 1. Εντολές premnmx, postmnmx, tramnmx Η εντολή premnmx µετατρέπει τα δεδοµένα εισόδου και εξόδου ώστε να ανήκουν στο διάστηµα [-1, 1], ενώ η εντολή postmnmx κάνει την αντίστροφη απεικόνιση µόνο για τα δεδοµένα εξόδου. Η αντιστοίχιση γίνεται µε τον εξής γραµµικό µετασχηµατισµό [10]: x i = x i min A ( max max A min min ) + min (3.1) A A A A όπου x i το πρότυπο εισόδου µετά το µετασχηµατισµό, x i το αρχικό πρότυπο εισόδου, min A, max A η ελάχιστη και η µέγιστη τιµή για το σύνολο τιµών Α και min A = 1, max A = 1 η ελάχιστη και η µέγιστη τιµή για το µετασχηµατισµένο εύρος του συνόλου τιµών του Α. Η εντολή tramnmx χρησιµοποιείται όταν ϑέλουµε να χρησιµοποιήσουµε ένα εκπαιδευµένο ΤΝ που τα δεδοµένα του έχουν επεξεργαστεί από την εντολή premnmx. ιασφαλίζει ότι τα νέα δεδοµένα ϑα προεπεξεργαστούν µε τις ίδιες τιµές (ελάχιστο και µέγιστο) όπως το σύνολο εκπαίδευσης. Οι παραπάνω εντολές έχουν οµαδοποιηθεί και αντικατασταθεί στη νεότερη έκδοση µε την εντολή mapminmax. 2. Εντολές prestd, poststd, trastd Μια άλλη µέθοδος προεπεξεργασίας είναι η κανονικοποίηση (normalization) σύµφωνα µε την οποία µετασχηµατίζονται τα αριθµητικά δεδοµένα σε «καταλληλότερες» τιµές. Η κανονικοποίηση των δεδοµένων γίνεται ώστε να αντιµετοπιστεί το πρόβληµα ότι οι µεταβλητές µε τις µεγάλες τιµές καθορίζουν ουσιαστικά την απόσταση των παρατη- ϱήσεων, ενώ οι µεταβλητές µε τις µικρές τιµές επηρεάζουν την απόσταση ελάχιστα και τελικά, δεν παίζουν κανένα ϱόλο στον υπολογισµό του αποτελέσµατος. Η εντολή prestd µετασχηµατίζει τα δεδοµένα εισόδου και εξόδου ώστε να έχουν µέση τιµή 0 και τυπική απόκλιση 1, χρησιµοποιώντας το µετασχηµατισµό [10]: x i = x i µ A σ A (3.2) όπου x i το πρότυπο εισόδου µετά το µετασχηµατισµό, x i το αρχικό πρότυπο εισόδου, µ A η µέση τιµή για το σύνολο Α και σ A η τυπική απόκλιση για το σύνολο Α. Η εντολή
95 76 Προγραµµατιστικά περιβάλλοντα poststd κάνει την αντίστροφη απεικόνιση για τα δεδοµένα εξόδου ενώ η εντολή trastd επιτελεί κατ αντιστοιχία την ίδια διαδικασία µε την tramnmx. Οι παραπάνω εντολές έχουν οµαδοποιηθεί και αντικατασταθεί στη νεότερη έκδοση µε την εντολή mapstd. 3. Εντολές prepca, trapca Πολλές ϕορές µεταξύ των χαρακτηριστικών µπορεί να υπάρχουν αλληλεξαρτήσεις που να καθιστούν την ταυτόχρονη παρουσία τους περιττή. Η ανάλυση κυρίων συνιστωσών (Principal Components Analysis (PCA)) [260] είναι µια µέθοδος συµπίεσης των δεδο- µένων, η οποία µας επιτρέπει να µειώσουµε το πλήθος των διαστάσεων ενός συνόλου δεδοµένων. Η ανάλυση κυρίων συνιστωσών αποτελεί µέθοδο µείωσης των διαστάσεων των δεδοµένων, µε προβολή τους σε έναν χώρο λιγότερων διαστάσεων και όχι µέθοδο επιλογής σηµαντικών χαρακτηριστικών. Η διαδικασία που επιτελείται περιγράφεται ως εξής : αρχικά ορθογωνίζει τα συστατικά των διανυσµάτων εισόδου, στη συνέχεια διατάσσει τα προκύπτοντα ορθογώνια συστατικά έτσι ώστε τα άτοµα µε τη µεγαλύτερη διακύµανση να έρχονται πρώτα και τέλος εξαλείφει εκείνα τα στοιχεία που συµβάλλουν ελάχιστα στην παραλλαγή του συνόλου δεδοµένων. Πρέπει να σηµειωθεί ότι προηγείται η κανονικοποίηση των δεδοµένων της ανάλυσης κυρίων συνιστωσών. Η εντολή trapca εγγυάται ότι κάθε ϕορά που το εκπαιδευµένο ΤΝ χρησιµοποιείται µε νέες εισόδους, αυτές ϑα προεπεξεργαστούν µε το ίδιο µητρώο µετασχηµατισµού που χρησιµοποιήθηκε για το σύνολο εκπαίδευσης. Οι παραπάνω εντολές έχουν οµαδοποιηθεί και αντικατασταθεί στη νεότερη έκδοση µε την εντολή processpca ηµιουργία ΤΝ Αισθητήρας Η χρήση αισθητήρα είναι αποτελεσµατική για την ταξινόµηση διαχωρίσιµων δεδοµένων. Εστω ότι x είναι το µητρώο εισόδου και y το διάνυσµα στόχος. Για να δηµιουργήσουµε τον αισθητήρα χρησιµοποιούµε την παρακάτω εντολή [265]: Οπου : net = newp(p R, S, T F, LF ) PR: ένα R 2 µητρώο που περιέχει την ελάχιστη και τη µέγιστη τιµή που µπορεί να πάρει το εκάστοτε στοιχείο του διανύσµατος εισόδου S: ο αριθµός των νευρώνων στο επίπεδο εξόδου TF: η συνάρτηση µεταφοράς LF: η συνάρτηση εκπαίδευσης Εναλλακτικά για τη δηµιουργία του αισθητήρα µπορεί να χρησιµοποιηθεί η εντολή : net = perceptron; Η εκπαίδευση του δικτύου γίνεται µέσω της εντολής : net = train(net, x, y) Ο αισθητήρας χρησιµοποιεί σαν συνάρτηση µεταφοράς µία εκ των hardlim ή hardlims και ως συνάρτηση εκπαίδευσης µία εκ των learnp ή learnpn. Σε περίπτωση που ο αισθητήρας ϑέλουµε να έχει γραµµική συνάρτηση µεταφοράς πρέπει να χρησιµοποιήσουµε την συνάρτηση newlin. Ετσι οι τιµές εξόδου µπορούν να πάρουν οποιαδήποτε τιµή και δεν είναι περιορισµένες στα 0 ή 1 όπως συµβαίνει µε την εντολή newp. Παράδειγµα στο Matlab Στη συνέχεια ακολουθεί παράδειγµα ταξινόµησης µεταξύ δύο γραµµικώς διαχωρίσιµων κλάσεων. Το παράδειγµα αυτό έχει υλοποιηθεί στη Matlab και αποτελείται από τον παρακάτω κώδικα [201]:
96 3.1 MATLAB: Προσφερόµενες επιλογές 77 1 N = 20; 2 % define inputs and outputs 3 offset = 5; % offset for second class 4 x = [randn(2,n) randn(2,n)+offset]; % inputs 5 y = [zeros(1,n) ones(1,n)]; % outputs 6 7 % Plot input samples with PLOTPV (Plot perceptron input/target vectors) 8 figure(1) 9 plotpv(x,y); 10 pause; net = newp(x,y,'hardlim','learnp'); 13 net = train(net,x,y); figure(1) 16 plotpc(net.iw{1},net.b{1}); Ο παραπάνω κώδικας χωρίζεται σε 4 µέρη : 1. ηµιουργούµε τα µητρώα εισόδου και εξόδου 2. ηµιουργούµε µια γραφική αναπαράσταση των δειγµάτων (Σχήµα 3.1) Σχήµα 3.1: Παράδειγµα αισθητήρα- είγµατα 3. Εκπαιδεύουµε τον αισθητήρα (Σχήµα 3.2) 4. ηµιουργούµε µια γραφική αναπαράσταση των δειγµάτων µε τη διαχωριστική γραµµή για τις κλάσεις (Σχήµα 3.3) Παρατήρηση 3.1 Τα δίκτυα perceptron πρέπει να εκπαιδεύονται µε την εντολή adapt, η οποία εισάγει ένα-ένα τα παραδείγµατα εισόδου και κάνει διορθώσεις στα ϐάρη και τη µεροληψία µετά την εισαγωγή του κάθε παραδείγµατος. Η χρήση της εντολής adapt µε τέτοιο τρόπο εγγυάται ότι οποιοδήποτε γραµµικώς διαχωρίσιµο πρόβληµα µπορεί να λυθεί έπειτα από πεπερασµένο αριθµό επαναλήψεων [54]. Παρατήρηση 3.2 Οταν τα δίκτυα perceptron εκπαιδεύονται µέσω της εντολής train, παρουσιάζονται τα παραδείγµατα στο δίκτυο µαζικά batch mode και οι διορθώσεις στο δίκτυο γίνονται αθροίζοντας τις εκάστοτε διορθώσεις που προκύπτουν ανά παράδειγµα. υστυχώς δεν υπάρχει
97 78 Προγραµµατιστικά περιβάλλοντα Σχήµα 3.2: Παράδειγµα αισθητήρα-εκπαίδευση Σχήµα 3.3: Παράδειγµα αισθητήρα- ιαχωριστική γραµµή απόδειξη ότι αυτός ο τρόπος εκπαίδευσης συγκλίνει. Τέλος πρέπει να επισηµάνουµε ότι η συνάρτηση εκπαίδευσης learnp αντιµετωπίζει προβλήµατα όταν τα στοιχεία του δείγµατος έχουν ακραίες τιµές [54]. Για να αντιµετωπίσουµε αυτό το πρόβληµα κανονικοποιούµε τη συνάρτηση learnp και προκύπτει η learnpn µε την παρακάτω µορφή : w = (t a) p[ T ] p = e pt p Παρατήρηση 3.3 Ο learnpn χρειάζεται περισσότερο χρόνο εκτέλεσης για κάθε επανάληψη αλλά µειώνει τον αριθµό των εποχών. ίκτυα ADALINE Το ΤΝ ADALINE (Adaptive Linear Neuron networks) [69] µοιάζει µε τον αισθητήρα, έχει γραµµικές συναρτήσεις ενεργοποίησης και έχει την ικανότητα να ανταποκρίνεται στις
98 3.1 MATLAB: Προσφερόµενες επιλογές 79 αλλαγές του περιβάλλοντός του καθώς λειτουργεί. Σε κάθε χρονική στιγµή το ΤΝ ϱυθµίζεται ϐάσει των νέων Ϲευγαριών εισόδου-εξόδου ώστε να ϐρίσκει τις νέες τιµές των ϐαρών και της µεροληψίας που ελαχιστοποιούν τη συνάρτηση σφάλµατος. Μπορούµε να συνδυάσουµε µια γραµµή καθυστέρησης µε ένα δίκτυο ADALINE για να δηµιουργήσουµε το προσαρµοστικό δίκτυο ϕίλτρων που αναφέρεται στο πεδίο επεξεργασίας ψηφιακού σήµατος ως ένα ϕίλτρο πεπερασµένης παλµικής απόκρισης (Finite Impulse Response-FIR) [233]. Πολυεπίπεδα νευρωνικά δίκτυα Η εντολή newff που περιγράφεται παρακάτω δηµιουργεί ένα πολυεπίπεδο δίκτυο (MLP) που ονοµάζεται net [138]. όπου : net = newff(xr, [s 1, s 2,..., s NL ], {tf 1, tf 2,..., tf NL }, btf) R: ο αριθµός των στοιχείων κάθε διανύσµατος εισόδου. XR: ένα µητρώο R 2 µε την ελάχιστη και τη µέγιστη τιµή που µπορούν να πάρουν τα στοιχεία κάθε διανύσµατος εισόδου. s i : ο αριθµός των νευρώνων του i-οστού επιπέδου. N L : ο αριθµός των επιπέδων. tf i : η συνάρτηση ενεργοποίησης των νευρώνων του i-οστού επιπέδου. btf: ο αλγόριθµος εκπαίδευσης του ΤΝ. Σχόλιο 3.1 Η προεπιλεγµένη ( default) συνάρτηση ενεργοποίησης είναι η tansig. Σχόλιο 3.2 Ο προεπιλεγµένος αλγόριθµος εκπαίδευσης είναι ο Levenberg-Marquardt. Σχόλιο 3.3 Οι τιµές για τα ϐάρη και τη µεροληψία δίνονται τυχαία στην αρχή και µεταβάλλονται κατά την εκπαίδευση. Εξαιτίας της τυχαιότητας των αρχικών τιµών των µεταβλητών, υπάρχει περίπτωση ο αλγόριθµος να δίνει διαφορετικά αποτελέσµατα για κάθε επανάληψη. Σχόλιο 3.4 Η χρήση του αλγορίθµου Levenberg-Marquardt (trainlm) προτείνεται για δίκτυα µικρού και µεγάλου µεγέθους εφόσον είναι διαθέσιµη αρκετή µνήµη. Για µεγάλα δίκτυα συνίσταται η χρήση των αλγορίθµων trainscg και trainrp [107]. ίκτυα ακτινικής ϐάσης Τα δίκτυα ακτινικής ϐάσης µπορούν να χρησιµοποιηθούν για προσέγγιση συνάρτησης (function approximation) ή αναγνώριση προτύπων (pattern recognition) και αποτελούνται από ένα επίπεδο εισόδου, ένα κρυφό επίπεδο και ένα επίπεδο εξόδου. Στο κρυφό επίπεδο υπάρχουν µόνο νευρώνες που χειρίζονται συναρτήσεις ακτινικής ϐάσης ενώ στο επίπεδο εξόδου όλοι οι νευρώνες είναι γραµµικοί, δηλαδή έχουν γραµµικές συναρτήσεις ενεργοποίησης [122]. Η δηµιουργία και η χρήση δικτύων ακτινικής ϐάσης µέσω του MATLAB γίνεται εφικτή µέσω της εντολής newrbe ή newrb. Οι εντολές που χρησιµοποιούνται είναι οι : spread = a 2 net = newrbe(p, T, spread) goal = a 1 spread = a 2 net1 = newrb(p, T, goal, spread) όπου :
99 80 Προγραµµατιστικά περιβάλλοντα a 1,a 2 : αριθµοί που αναθέτουµε εµείς P: το µητρώο εισόδου T: το µητρώο εξόδου goal: ο στόχος που ϑέλουµε να επιτύχουµε spread: η διασπορά των συναρτήσεων ακτινικής ϐάσης Παρατήρηση 3.4 Οι νευρώνες στα δίκτυα ακτινικής ϐάσης έχουν µεγάλη έξοδο όσο η α- πόσταση µεταξύ w και P είναι µικρή. Λειτουργούν κατά κάποιο τρόπο σαν ανιχνευτές που παράγουν 1 όταν η είσοδος P είναι πανοµοιότυπη µε το διάνυσµα των ϐαρών w ενός νευρώνα. Η µεροληψία b χρησιµοποιείται προκειµένου να προσαρµόζουµε την ευαισθησία του νευρώνα [54]. Παρατήρηση 3.5 Η διαφορά ανάµεσα στη newrbe και τη newrb είναι ότι η newrb δηµιουργεί το µικρότερο δυνατό δίκτυο που µπορεί να λύσει ένα πρόβληµα µε δεδοµένο στόχο για το σφάλµα ενώ η newrbe δηµιουργεί ένα δίκτυο µε τόσους νευρώνες ακτινικής ϐάσης, όσα τα διανύσµατα εισόδου. Επίσης τα δίκτυα που δηµιουργήθηκαν µέσω της εντολής newrbe ϐρίσκουν ακριβείς λύσεις [54]. Παρατήρηση 3.6 Τα δίκτυα ακτινικής ϐάσης, ακόµη και όταν έχουν σχεδιαστεί αποτελεσµατικά µε newrbe, τείνουν να έχουν πολλές ϕορές περισσότερους νευρώνες από ένα δίκτυο εµπρόσθιας τροφοδότησης µε tansig ή logsig νευρώνες στο κρυφό επίπεδο. Το γεγονός αυτό συµβαίνει διότι οι σιγµοειδείς συναρτήσεις µπορούν να έχουν εξόδους πάνω από µια ευρεία περιοχή του χώρου εισόδου, ενώ οι νευρώνες στα δίκτυα ακτινικής ϐάσης ανταποκρίνονται µόνο σε σχετικά µικρές περιοχές του χώρου εισόδου [54]. ίκτυο γενικευµένης παλινδρόµησης Ενα γενικευµένο ΤΝ παλινδρόµησης (generalized regression neural network-grnn) [230] χρησιµοποιείται συχνά για την προσέγγιση συναρτήσεων και αποτελείται από ένα ε- πίπεδο µε συνάρτηση ακτινικής ϐάσης και ένα µε νευρώνες που έχουν γραµµική συνάρτηση ενεργοποίησης. Η σταθµισµένη είσοδος κάθε νευρώνα είναι η απόσταση µεταξύ του διανύσµατος εισόδου και του ϐάρους του. Η καθαρή είσοδος κάθε νευρώνα είναι το γινόµενο της σταθµισµένης εισόδου του µε τη µεροληψία του. Κάθε έξοδος των νευρώνων είναι η τιµή που προκύπτει σαν έξοδος από µια συνάρτηση ενεργοποίησης στην οποία έχει δοθεί σαν είσοδος, η είσοδος που δίνεται στο δίκτυο. Πιθανολογικά νευρωνικά δίκτυα Εστω P η είσοδος και T το µητρώο στόχος µε 0 και 1 σε όλες τις ϑέσεις του. Τα PNN δίκτυα δηµιουργούνται µέσω της εντολής [54]: net = newpnn(p, T ); y = sim(net, P ) Για να δούµε σε ποια κλάση έχει ταξινοµηθεί κάθε παράδειγµα, χρησιµοποιούµε την εντολή : y c = vec2ind(y)
100 3.1 MATLAB: Προσφερόµενες επιλογές 81 ίκτυα ανταγωνιστικής µάθησης kohonen (SOM) Για να δηµιουργήσουµε ένα δίκτυο SOM χρησιµοποιούµε την εντολή [55]: net = newsom(p R, [D 1, D 2,...], T F CN, DF CN, OLR, OST EP S, T LR, T ND) όπου : PR: ένα R 2 µητρώο που περιέχει την ελάχιστη και τη µέγιστη τιµή των R στοιχείων του διανύσµατος εισόδου. D i : οι διαστάσεις του i-οστού επιπέδου. Ως προεπιλογή υπάρχει το [5 8]. TFCN: η συνάρτηση τοπολογίας DFCN: η συνάρτηση απόστασης OLR: ο ϱυθµός µάθησης. Ως προεπιλογή έχει οριστεί το 0.9. OSTEPS: Ordering phase steps TLR: Tuning phase learning rate TND: Tuning phase neighborhood distance Τοπολογίες SOM Μπορούµε να ορίσουµε διαφορετικές τοπολογίες για την αρχική ϑέση των νευρώνων µε τις συναρτήσεις [54]: 1. gridtop Η τοπολογία gridtop ξεκινάει µε νευρώνες σε ένα ορθογώνιο πλέγµα. Για παράδειγµα έστω ότι ϑέλουµε ένα 2 4 µητρώο µε 8 νευρώνες, πληκτρολογούµε pos = gridtop(2, 4) και εµφανίζεται το : ( ) pos = Οι στήλες αυτού του µητρώου είναι οι συντεταγµένες του εκάστοτε νευρώνα στο ορθογώνιο πλέγµα (Σχήµα 3.4). 2. hextop Η τοπολογία hextop δηµιουργεί νευρώνες σε εξαγωνικό µοτίβο (Σχήµα 3.5). Για πα- ϱάδειγµα, αν ϑέλουµε να δηµιουργήσουµε ένα 2 3 µοτίβο νευρώνων πληκτρολογούµε pos = hextop(2, 3) και εµφανίζεται το : ( ) pos = Για να πάρουµε τη γραφική τους αναπαράσταση χρησιµοποιούµε την εντολή plotsom(pos) 3. randtop Η τοπολογία randtop δηµιουργεί νευρώνες σε ένα n-διάστατο τυχαίο πρότυπο (Σχήµα 3.6). Για παράδειγµα, αν ϑέλουµε να δηµιουργήσουµε ένα µοτίβο νευρώνων πληκτρολογούµε pos = randtop(10, 12);. Για να πάρουµε τη γραφική τους αναπα- ϱάσταση χρησιµοποιούµε την εντολή plotsom(pos)
101 82 Προγραµµατιστικά περιβάλλοντα Σχήµα 3.4: Τοπολογία gridtop Σχήµα 3.5: Τοπολογία hextop Συναρτήσεις απόστασης SOM Υπάρχουν τέσσερις διαφορετικοί τρόποι για να υπολογίσουµε τις αποστάσεις ενός νευρώνα από τους γειτονικούς του. Κάθε µέθοδος υπολογισµού υλοποιείται µε µία από τις παρακάτω συναρτήσεις [54]: 1. Συνάρτηση dist Υπολογίζει την ευκλείδεια απόσταση ενός νευρώνα προς όλους τους υπόλοιπους. 2. Συνάρτηση linkdist Υπολογίζει τον αριθµό των ϐηµάτων που πρέπει να γίνουν προκειµένου να ϕτάσουµε από ένα νευρώνα σε έναν άλλο.
102 3.1 MATLAB: Προσφερόµενες επιλογές 83 Σχήµα 3.6: Τοπολογία randtop 3. Συνάρτηση mandist Υπολογίζει την απόσταση manhattan µεταξύ δύο νευρώνων. Αν x και y το διάνυσµα των συντεταγµένων κάθε νευρώνα, η απόσταση manhattan υπολογίζεται ως D = x y 4. Συνάρτηση boxdist Υπολογίζει την απόσταση ενός νευρώνα που ονοµάζεται home από όλους τους άλλους, κατά στρώµατα όπως ϕαίνεται στο Σχήµα 3.7. Σχήµα 3.7: Απόσταση boxdist ίκτυα LVQ Η µάθηση κβαντικού διανύσµατος (Learning Vector Quantization-LVQ) [136] είναι µια µέθοδος για την εκπαίδευση ανταγωνιστικών επιπέδων µέσω επιβλεπόµενης µάθησης. Ενα α- νταγωνιστικό επίπεδο επιτελεί αυτόµατη ταξινόµηση των διανυσµάτων εισόδου ϐασιζόµενο
103 84 Προγραµµατιστικά περιβάλλοντα µόνο στην απόσταση µεταξύ των διανυσµάτων εισόδου. Το µειονέκτηµα της συγκεκριµένης µεθόδου είναι ότι δεν υπάρχει αυστηρός κανόνας που να αποφασίζει αν δύο παρόµοια διανύσµατα εισόδου ανήκουν στην ίδια ή διαφορετική κλάση. Συστήµατα ελέγχου Υπάρχουν συνήθως δύο στάδια που εµπλέκονται όταν χρησιµοποιείτε νευρωνικά δίκτυα για έλεγχο : 1. Το στάδιο αναγνώρισης του συστήµατος, όπου αναπτύσεται ένα µοντέλο ΤΝ που ϑα ελέγχει το σύστηµα που ϑέλουµε. 2. Το στάδιο σχεδιασµού του ελέγχου, όπου χρησιµοποιούµε το µοντέλο ΤΝ για να εκπαιδεύσουµε τον ελεγκτή. Οι προσφερόµενες αρχιτεκτονικές είναι οι : 1. Μοντέλο πρόβλεψης ελέγχου (Model Predictive Control 2. Ελεγχος NARMA-L2 (NARMA-L2 Control 3. Μοντέλο ελέγχου αναφοράς (Model Reference Control ίκτυα Elman Η πιο απλή αρχιτεκτονική αναδροµικού δικτύου είναι το δίκτυο Elman [43]. Το δίκτυο Elman είναι ένα MLP ενός κρυφού επιπέδου και περιλαµβάνει αναδροµικές συνδέσεις από τους νευρώνες του κρυφού επιπέδου προς τους νευρώνες εσωτερικής κατάστασης. Οι νευ- ϱώνες εσωτερικής κατάστασης αποθηκεύουν τις εξόδους των νευρώνων του κρυφού επιπέδου σε µια χρονική στιγµή και την επόµενη χρονική στιγµή αυτές οι τιµές επανατροφοδοτούνται ως επιπλέον είσοδοι των νευρώνων του κρυφού επιπέδου. Αλγόριθµος εκπαίδευσης δικτύου Elman 1. Αρχικοποίηση των ϐαρών w 0 στο διάστηµα (-1,1), του µετρητή επαναλήψεων (k 1 = 0) και του µετρητή εποχών (k 2 = 0). Καθορισµός του ϱυθµού µάθησης η και ανάθεση της τιµής 0.5 στους νευρώνες εσωτερικής κατάστασης. 2. Στην αρχή κάθε εποχής,έστω w(k 1 ) το διάνυσµα ϐαρών (αʹ) Εναρξη εποχής k 2. Αποθήκευση του τρέχοντος διανύσµατος ϐαρών w old = w(k 1 ) (ϐʹ) Για n = 1,, N. Επιλογή του παραδείγµατος εκπαίδευσης (x n, t n ) και εφαρµογή του κανόνα οπισθοδιάδοσης σφάλµατος για τον υπολογισµό των µερικών παραγώγων En w i. Ενηµέρωση των ϐαρών w i (k 1 + 1) = w i (k 1 ) η En w i. Αντιγραφή των τιµών εξόδων των νευρώνων του κρυφού επιπέδου στους νευ- ϱώνες εσωτερικής κατάστασης.. k 1 = k (γʹ) Τέλος εποχής k 2. Ελεγχος τερµατισµού. Εάν ναι, τερµατίζουµε. (δʹ) k 2 = k µετάβαση στο ϐήµα 2
104 3.1 MATLAB: Προσφερόµενες επιλογές 85 ηµιουργία δικτύου από το χρήστη Το MATLAB πέρα απο τα toolbox και κάποιες εντολές που δηµιουργούν συγκεκριµένους τύπους δικτύων, παρέχει στο χρήστη τη δυνατότητα να δηµιουργήσει ένα ΤΝ σύµφωνα µε τις δικές του επιλογές. Για να πραγµατοποιηθεί αυτό πρέπει να χρησιµοποιηθεί η εντολή [56]: net = network(numinputs,numlayers,biasconnect,inputconnect,layerconnect,outputconnect) όπου : numinputs: ϐαθµωτός που δηλώνει τον αριθµό των εισόδων numlayers: ϐαθµωτός που δηλώνει τον αριθµό των επιπέδων biasconnect: δυαδικό διάνυσµα που δηλώνει σε ποια επίπεδα ϑα υπάρχει µεροληψία inputconnect: δυαδικό µητρώο που δείχνει µε ποια επίπεδα συνδέονται οι είσοδοι layerconnect: δυαδικό µητρώο που δείχνει συνδέσεις µεταξύ των επιπέδων outputconnect: δυαδικό διάνυσµα που δείχνει τις συνδέδεις των νευρώνων µε το επίπεδο εξόδου Με την εντολή Παράδεγµα χρήσης της εντολής network net = network(2,3,[1; 1; 1],[1 1;0 0;0 0],[0 0 0; 1 0 0;0 1 0],[0 0 1]); δηµιουργείται ένα δίκτυο (Σχήµα 3.1) τριών επιπέδων µε δύο εισόδους. Οι είσοδοι τροφοδοτούν µόνο το πρώτο επίπεδο εξόδου και δεν υπάρχουν αναδράσεις. Παρατηρούµε ότι σε κάθε Πίνακας 3.1: Αναπαράσταση δικτύου net νευρώνα υπάρχει, ως προεπιλογή, η γραµµική συνάρτηση ενεργοποίησης και ο αριθµός των νευρώνων είναι 0. Για παράδειγµα (Σχήµα 3.2), ϑα ϐάλουµε την σιγµοειδή συνάρτηση στο πρώτο και δεύτερο κρυφό επίπεδο και ϑα ϑέσουµε και τον αριθµό των νευρώνων ανά επίπεδο ως 10 και 7 αντίστοιχα. Οι εντολές που χρησιµοποιήσαµε είναι : net.layers{1}.transferfcn = logsig ; net.layers{2}.transferfcn = logsig ; net.layers{1}.size = 10; net.layers{2}.size = 7; Ο αριθµός των νευρώνων στο τελευταίο επίπεδο εξαρτάται από των αριθµό των εξόδων που ϑέλουµε να έχει το δίκτυο και προσαρµόζεται µέσω της εντολής net = configure(net,inputs,outputs);. inputs = {[1:3];[4:6]} outputs = [4 5 6] Σχήµα 3.3 inputs = {[1:3];[4:6]} outputs = [7 8] Σχήµα 3.4
105 86 Προγραµµατιστικά περιβάλλοντα Πίνακας 3.2: ίκτυο net µε νευρώνες και συνάρτηση ενεργοποίησης Πίνακας 3.3: ίκτυο net µε τρεις νευρώνες εξόδου Πίνακας 3.4: ίκτυο net µε δύο νευρώνες εξόδου Εκπαίδευση ΤΝ Αλγόριθµοι εκπαίδευσης Ο αλγόριθµος εκπαίδευσης είναι ο τρόπος µε τον οποίο ένα ΤΝ εκπαιδεύεται προκει- µένου να µπορεί να ϕέρει εις πέρας µια συγκεκριµένη λειτουργία. Η καταλληλότητά του εξαρτάται από τη ϕύση του προβλήµατος καθώς και από τις απαιτήσεις και τους περιορισµούς που έχει ϑέσει ο χρήστης. Το Neural Network Toolbox περιέχει αρκετούς αλγορίθµους εκπαίδευσης που µπορούν να επιτελέσουν είτε επιβλεπόµενη, είτε µη επιβλεπόµενη µάθηση και περιγράφονται περιληπτικά στη συνέχεια. 1. Ο αλγόριθµος perceptron υλοποιείται µέσω της συνάρτησης learnp και η περιγραφή του γίνεται στην Ενότητα Ο αλγόριθµος back propagation ανήκει στους προσφερόµενους µέσω του Neural Network Toolbox και περιγράφηκε αναλυτικά στην Ενότητα Αλγόριθµος (learnwh) Ο αλγόριθµος των Widrow-Hoff ή αλλιώς LMS [258] ϐασίζεται στη µέθοδο απότοµης καθόδου και προσεγγίζει σε κάθε επανάληψη το µέσο τετραγωνικό σφάλµα µέσω του
106 3.1 MATLAB: Προσφερόµενες επιλογές 87 τετραγωνικού σφάλµατος. Οι αναπροσαρµογές στα ϐάρη και τις µεροληψίες γίνονται σε κάθε επανάληψη µέσω των παρακάτω σχέσεων : w(k + 1) = w(k) + 2αe(k)p(k) T (3.3) b(k + 1) = b(k) + 2αe(k) (3.4) όπου e το προκύπτον σφάλµα ανά επανάληψη, α ο ϱυθµός µάθησης και p(k) το διάνυσµα εισόδου. 4. Αλγόριθµοι απότοµης καθόδου (traingd, traingdm) Ο αλγόριθµος traingd [203] αποτελεί έναν αλγόριθµο µαζικής µάθησης που για την ενηµέρωση των τιµών των ϐαρών και της µεροληψίας χρησιµοποιεί την αντίθετη κατεύθυνση του διανύσµατος της κλίσης της συνάρτησης σφάλµατος. Ιδιαίτερο ϱόλο διαδραµατίζει ο ϱυθµός µάθησης αφού καθορίζει το µέγεθος ϐήµατος και κατ επέκταση την ευστάθεια του αλγορίθµου. Οι µεταβολές που προκαλεί στα ϐάρη γίνονται σύµφωνα µε το παρακάτω επαναληπτικό σχήµα w k+1 = w k + η E(w k ) (3.5) όπου η ο ϱυθµός µάθησης. Ο αλγόριθµος traingdm αποτελεί µια ϐελτίωση του traingd αφού προσφέρει ταχύτερη σύγκλιση µέσω της εισαγωγής όρου µοµέντουµ [54]. Οι µεταβολές που προκαλεί στα ϐάρη γίνονται σύµφωνα µε το παρακάτω επαναληπτικό σχήµα w k+1 = w k + d k (3.6) d k = µd k 1 + η(1 µ) E(w k ) (3.7) όπου η ο ϱυθµός µάθησης, µ ο όρος µοµέντουµ και d k η τιµή της ανανέωσης κάθε παραµέτρου. 5. Αλγόριθµοι µεταβλητού ϱυθµού µάθησης (traingda, traingdx) Η απόδοση ενός ΤΝ στο οποίο χρησιµοποιείται κατά την εκπαίδευσή του ο αλγόριθ- µος back propagation είναι ευαίσθητη στο ϱυθµό εκµάθησης και συνεπώς ϑα πρέπει ο ϱυθµός µάθησης να αυτοπροσαρµόζεται κατά τη διάρκεια της εκπαίδευσης ώστε να επιτυγχάνεται καλύτερη απόδοση µετά το πέρας της διαδικασίας εκπαίδευσης. Οι αλγόριθµοι που χρησιµοποιούν µεταβλητό ϱυθµό µάθησης [31], τον µεταβάλλουν εκ- µεταλλευόµενοι τη ϕύση της επιφάνειας σφάλµατος ώστε να επιταχύνουν τη σύγκλιση. Στην αρχή υπολογίζεται η αρχική έξοδος του δικτύου και το προκύπτον σφάλµα. Με το πέρας κάθε εποχής ανανεώνονται τα ϐάρη και οι µεροληψίες χρησιµοποιώντας τον τρέχοντα ϱυθµό εκµάθησης και υπολογίζεται η νέα έξοδος και το σφάλµα. Αν το νέο σφάλµα υπερβεί το παλιό, περισσότερο από µια προκαθορισµένη αναλογία, τα νέα ϐάρη και οι µεροληψίες απορρίπτονται και ταυτόχρονα µειώνεται ο ϱυθµός µάθησης ενώ στην αντίθετη περίπτωση διατηρούνται τα νέα ϐάρη. Ο ϱυθµός µάθησης αυξάνεται µόνο όταν το προκύπτον σφάλµα στο τέλος µιας εποχής είναι µικρότερο από το σφάλµα στην προηγούµενη εποχή [159]. Η παραπάνω διαδικασία επιτελείται µε τον αλγόριθµο traingda ενώ ο αλγόριθµος traingdx πράττει την ίδια λειτουργία µε την προσθήκη όµως ενός όρου µοµέντουµ. Οι µεταβολές που προκαλεί στα ϐάρη γίνονται σύµφωνα µε το παρακάτω επαναληπτικό σχήµα w k+1 = w k + d k (3.8) d k = µd k 1 + ηµ E(w k ) (3.9) όπου η ο ϱυθµός µάθησης, µ ο όρος µοµέντουµ και d k η τιµή της ανανέωσης κάθε παραµέτρου.
107 88 Προγραµµατιστικά περιβάλλοντα 6. Resilient Backpropagation (trainrp) Ενα πρόβληµα που παρατηρήθηκε στα πολυεπίπεδα δίκτυα µε σιγµοειδείς συναρτήσεις µεταφοράς στα κρυφά επίπεδα είναι ότι όταν χρησιµοποιείται η µέθοδος απότο- µης καθόδου για την εκπαίδευση τους, δεδοµένου ότι η κλίση µπορεί να έχει πολύ µικρό µέγεθος, προκαλούνται µικρές αλλαγές στα ϐάρη και τις διασπορές, παρόλο που τα αυτά απέχουν πολύ από τις ϐέλτιστες τιµές τους. Η αιτία για το συγκεκριµένο ϕαινόµενο είναι οι σιγµοειδείς συναρτήσεις συµπιέζουν ένα άπειρο εύρος τιµών εισόδου σε πεπερασµένο εύρος τιµών εξόδου. Ο αλγόριθµος ελαστικής προς τα πίσω διάδοσης (resilient back propagation) [206] αντιµετωπίζει το πρόβληµα που προκύπτει κατά την εκπαίδευση µε το µέγεθος των µερικών παραγώγων, χρησιµοποιώντας µόνο το πρόση- µο της παραγώγου [7] για τον προσδιορισµό της κατεύθυνσης σύµφωνα µε την οποία η τιµή της συνάρτησης σφάλµατος µειώνεται. Το µέγεθος της µεταβολής του ϐάρους εξαρτάται από ξεχωριστή τιµή ενηµέρωσης η οποία αυξάνεται κατά µια σταθερά (έστω q inc ) κάθε ϕορά που η παράγωγος της συνάρτησης σφάλµατος έχει το ίδιο πρόσηµο για δύο διαδοχικές επαναλήψεις, ενώ µειώνεται κατά µια σταθερά (έστω q dec ) κάθε ϕορά που το πρόσηµο διαφέρει από την προηγούµενη επανάληψη. Οι προσαρµογές στα ϐάρη γίνονται σύµφωνα µε τη Σχέση Εάν η παράγωγος είναι µηδέν, τότε η τιµή ενηµέρωσης παραµένει η ίδια. Οταν τα ϐάρη ταλαντώνονται, η παράµετρος ενηµέρωσης ϑα µειωθεί ενώ αν το ϐάρος συνεχίσει να αλλάζει στην ίδια κατεύθυνση για αρκετές επαναλήψεις, τότε το µέγεθος της παραµέτρου ενηµέρωσης του ϐάρους ϑα αυξηθεί. 7. Μέθοδοι Conjugate Gradient Οι µέθοδοι συζυγών κλίσεων (conjugate gradient) [39] ανήκουν στην οµάδα των µε- ϑόδων ελαχιστοποίησης, δηλαδή παράγουν µια ακολουθία w k η οποία τείνει να προσεγγίσει έναν τοπικό ελαχιστοποιητή w e της αντικειµενικής συνάρτησης E(w). Η ϐασική ιδέα των µεθόδων αυτών είναι να µην ξαναχρησιµοποιηθεί κατεύθυνση που έχει ξανασαρωθεί. Οι παρακάτω εξισώσεις περιγράφουν την επαναληπτική µέθοδο. όπου : w k+1 = w k + α k d k, k = 0, 1, 2, d k = { g k E(w k ), k = 0 g k + β X k d k 1, k 1 (3.10) Το διάνυσµα d k εκφράζει την κατεύθυνση ελαχιστοποίησης της αντικειµενικής συνάρτσης E(w). Το διάνυσµα g k E(w k ) εκφράζει την κλίση της E(w). Το α k είναι το µέγεθος ϐήµατος το οποίο επιλέγεται σε κάθε επανάληψη. Το βk X είναι ϐαθµωτός. Ο δείκτης X καθορίζει την επιλεγµένη µέθοδο συζυγών κλίσεων. Οι επαναλήψεις ξεκινούν µε µια αρχική προσέγγιση του ελαχιστοποιητή w 0 και µε µια αρχική κατεύθυνση αναζήτησης d 0 = g 0 E(w 0 ) και διεξάγουν µια ανα- Ϲήτηση κατά µήκος της κατεύθυνσης συζυγούς κλίσης για να προσδιοριστεί το µέγεθος ϐήµατος, το οποίο ελαχιστοποιεί τη συνάρτηση σφάλµατος κατά µήκος αυτής της κατεύθυνσης. Το µήκος ϐήµατος προσδιορίζεται από τον τύπο : α k = gt k d k d T k Ad k (3.11) Ο παράγοντας βk X είναι αυτός που καθορίζει ποια µέθοδο εφαρµόζουµε, κάθε µία διακρίνεται από το αντίστοιχο πρώτο γράµµα του δηµιουργού της στη ϑέση του X.
108 3.1 MATLAB: Προσφερόµενες επιλογές 89 Fletcher-Reeves Update (traincgf) Polak-Ribiére Update (traincgp) β F R k = g k 2 g k 1 2 (3.12) β P R k = < g k, y k 1 > g k 1 2 (3.13) Powell-Beale Restarts (traincgb) Σύµφωνα µε τη µέθοδο [202] αυτή, ο εκ νέου ορισµός της κατεύθυνσης αναζήτησης ως το αντίθετο της κλίσης µετά από κάποια ϐήµατα γίνεται εφόσον υπάρχει πολύ µικρή ορθογωνικότητα µεταξύ της τρέχουσας και της προηγούµενης κλίσης. Ειδικότερα, αν ικανοποιείται η συνθήκη (Σχέση 3.14), η κατεύθυνση αναζήτησης επαναφέρεται στο αντίθετο της κλίσης. g k 1 T g k 0.2 g k 2 (3.14) Scaled Conjugate Gradient (trainscg) Ο αλγόριθµος (scaled conjugate gradient algorithm-scg) [178] σχεδιάστηκε ώστε να αποφευχθεί η χρονοβόρα αναζήτηση κατά γραµµή των µεθόδων conjugate gradient. Η επιλογή της κατεύθυνσης αναζήτησης όσο και του µεγέθους ϐήµατος γίνεται µε τη χρήση πληροφορίας δεύτερης τάξης. Το επαναληπτικό σχήµα που περιγράφει τη µέθοδο είναι εκτενές και για αυτό δεν παρατίθεται στη συνέχεια και η µελέτη του εναποφύεται στον αναγνώστη. Συµβολισµοί Ο συµβολισµός <, > είναι το εσωτερικό γινόµενο. Το διάνυσµα s k 1 w k w k 1 εκφράζει τη διαφορά δύο διαδοχικών προσεγγίσεων του ελαχιστοποιητή. Το διάνυσµα y k 1 g k g k 1 E(w k ) E(w k 1 ) εκφράζει τη διαφορά της κλίσης σε δύο διαδοχικές προσεγγίσεις. 8. Μέθοδοι Quasi Newton BFGS Algorithm (trainbgf) Λόγω της πολυπλοκότητας και του υπολογιστικού κόστους του υπολογισµού του Εσσιανού µητρώου, η παραλλαγή BFGS [57] των µεθόδων quasi-newton δη- µιουργεί, σε κάθε επανάληψη, προσεγγίσεις του Εσσιανού µητρώου ως συνάρτηση της κλίσης. Παρόλο που προϋποθέτει µεγαλύτερο αριθµό επαναλήψεων και αποθηκευτικό χώρο απο τις µεθόδους conjugate gradient, γενικά συγκλίνει σε λιγότερες επαναλήψεις. Το επαναληπτικό σχήµα που περιγράφει τη µέθοδο παρουσιάζεται στις παρακάτω σχέσεις : όπου α k το µέγεθος ϐήµατος. w k+1 = w k + α k p k, p k = H k E wk (3.15) s k = w k+1 w k, y k = E wk+1 E wk (3.16) H k+1 = (1 ρ k s k y T k )H k(1 ρ k y k s T k ) + ρ ks k s T k (3.17) ρ k = 1 y T k s k (3.18)
109 90 Προγραµµατιστικά περιβάλλοντα One Step Secant Algorithm (trainoss) Η µέθοδος µονοβηµατικής τέµνουσας (One Step Secant-OSS) [19] είναι το αποτέλεσµα των προσπαθειών ώστε µια µέθοδος να εκµεταλεύεται τα πλεονεκτήµατα των µεθόδων conjugate gradient και των µεθόδων quasi-newton. Το χαρακτηριστικό της µεθόδου είναι οι µικρές απαιτήσεις σε χώρο αποθήκευσης όσο και σε υπολογισµούς αφού δεν αποθηκεύει το Εσσιανό µητρώο. Ορίζει πως σε κάθε επανάληψη, το Εσσιανό µητρώο είναι το ταυτοτικό, γεγονός που επιτρέπει τον υπολογισµό της νέας κατεύθυνσης αναζήτησης χωρίς να είναι δέσµια του υπολογισµού του αντίστροφου µητρώου. Το επαναληπτικό σχήµα της µεθόδου περιγράφεται από τις παρακάτω σχέσεις : w k+1 = w k + αds (3.19) ds = g c + A c s c + B c y c (3.20) A c = (1 + yt c y c s T c y c ) st c g c s T c y c + yt c g c s T c y c, B c = st c g c s T c y c (3.21) όπου ds η κατεύθυνση αναζήτησης, α µια παράµετρος που ελαχιστοποιεί τη συνάρτηση σφάλµατος κατά την κατεύθυνση αναζήτησης, g c = E(w i ) η κλίση της συνάρτησης σφάλµατος Ε, y c η διαφορά της κλίσης και s c το τελευταίο ϐήµα. 9. Levenberg-Marquardt (trainlm) Ο αλγόριθµος Marquardt Levenberg [91] αποτελεί µια ϐελτιωµένη προσέγγιση της µεθόδου του Newton αφού δεν απαιτεί τον υπολογισµό του Εσσιανού µητρώου. Περιγράφεται από τον τύπο : w k+1 = w k (J T (w)j(w) + µi) 1 J T (w)e(w) (3.22) όπου w k το ϐάρος στην k-ιοστή επανάληψη, I το ταυτοτικό µητρώο, J(w) το Ιακωβιανό µητρώο, e(w) το σφάλµα του δικτύου και µ µια σταθερά. Οταν το µ είναι µηδέν, η µέθοδος Marquardt Levenberg είναι ισοδύναµη µε τη µέθοδο Newton. Επειδή η σύγκλιση της µεθόδου του Newton εξαρτάται από το πόσο κοντά είναι το αρχικό σηµείο στη λύση (ελάχιστο), το µ µειώνεται µετά από κάθε ϐήµα στο οποίο µειώνεται η συνάρτηση σφάλµατος ενώ αυξάνεται όταν µετά από ένα ϐήµα, αυξάνεται η συνάρτηση σφάλµατος. 10. Αλγόριθµος Kohonen (learnk) Ο αλγόριθµος Kohonen χρησιµοποιείται όπως έχουµε ήδη αναφέρει για ανταγωνιστικά δίκτυα και γίνεται λεπτοµερής περιγραφή του στην Ενότητα learnh Αυξάνει τα ϐάρη ανάλογα µε την είσοδο, τα ϐάρη και την έξοδο του νευρώνα. Αυτό επιτρέπει στους νευρώνες να µάθουν τις συσχετίσεις µεταξύ των εισόδων και εξόδων τους. 12. learnhd Η συνάρτηση µάθησης Hebb-with-decay είναι παρόµοια µε τη συνάρτηση Hebb, αλλά προσθέτει έναν όρο που µειώνει εκθετικά τα ϐάρη σε κάθε ϐήµα. Αυτή η µείωση του ϐάρους επιτρέπει στους νευρώνες να ξεχνούν συσχετίσεις που δεν ενισχύονται τακτικά και επιλύει το πρόβληµα που έχει η συνάρτηση Hebb όταν τα ϐάρη αυξάνονται χωρίς όρια. 13. learnis Η συνάρτηση µάθησης ϐάρους instar µετακινεί τον ϕορέα ϐάρους ενός νευρώνα προς το διάνυσµα εισόδου του νευρώνα µε ϐήµατα ανάλογα µε την έξοδο του νευρώνα. Αυτή η συνάρτηση επιτρέπει στους νευρώνες να µάθουν τη σχέση µεταξύ των διανυσµάτων εισόδου και των εξόδων τους.
110 3.2 R: Προσφερόµενες επιλογές learnos Η συνάρτηση µάθησης outstar ενεργεί µε τον αντίθετο τρόπο της συνάρτησης µάθησης instar. Μετακινεί το διάνυσµα ϐάρους που προέρχεται από µια είσοδο προς το διάνυσµα εξόδου ενός επιπέδου νευρώνων µε µεγέθη ϐήµατος αναλογικά προς την τι- µή εισόδου επιτρέποντας έτσι στις εισόδους να µπορούν να ανακαλούν τα διανύσµατα όταν διεγείρονται από παρόµοια πρότυπα εισόδου. Συναρτήσεις ενεργοποίησης Ολες οι συναρτήσεις µεταφοράς που περιέχονται στο toolbox (Πίνακας 2.3), µπορούν να υλοποιηθούν καλώντας µια συνάρτηση µε το ίδιο όνοµα. Επιπλέον δεν πρέπει να παραλείψουµε τις : 1. satlin Αυτή η συνάρτηση µεταφοράς είναι παρόµοια µε τη ϐηµατική, αλλά έχει µια γραµµική περιοχή που κυµαίνεται από 0 έως softmax Είναι µια πιο ήπια έκδοση της ανταγωνιστικής συνάρτησης µεταφοράς compet. Ο νευρώνας µε τη µεγαλύτερη είσοδο αποκτά ως έξοδο µια τιµή κοντά στο ένα, ενώ οι άλλοι νευρώνες λαµβάνουν τιµές εξόδου κοντά στο µηδέν. 3. tribas Η λειτουργία µεταφοράς τριγωνικής ϐάσης είναι παρόµοια µε τη συνάρτηση µεταφοράς ακτινικής ϐάσης radbas αλλά έχει ένα απλούστερο σχήµα. Συναρτήσεις αρχικοποίησης 1. randnc Αυτή η συνάρτηση αρχικοποίησης ϐάρους δηµιουργεί τυχαία µητρώα που περιέχουν τα ϐάρη ενός ΤΝ των οποίων οι στήλες κανονικοποιούνται ώστε να έχουν µήκος randnr Αυτή η συνάρτηση αρχικοποίησης ϐάρους δηµιουργεί τυχαία µητρώα που περιέχουν τα ϐάρη ενός ΤΝ των οποίων οι σειρές κανονικοποιούνται ώστε να έχουν µήκος 1. ηµιουργία συναρτήσεων από το χρήστη Το toolbox επιτρέπει τη δηµιουργία προσαρµοσµένων συναρτήσεων από το χρήστη, δίνοντας µεγάλη ευελιξία στους αλγόριθµους που χρησιµοποιούνται για την αρχικοποίηση, την προσοµοίωση και την εκπαίδευση των δικτύων. Για να γίνει αυτό, το µόνο που χρειάζεται είναι η αντιγραφή των διαθέσιµων προτύπων συναρτήσεων, η µετονοµασία και η προσαρµογή στις ανάγκες του χρήστη. Η λίστα µε τα διαθέσιµα πρότυπα συναρτήσεων εµφανίζεται πληκτρολογώντας help nncustom στο Command Window. 3.2 R: Προσφερόµενες επιλογές Ταξινόµηση πακέτων ανά τύπο δικτύου ίκτυα πρόσθιας τροφοδότησης Υπάρχουν στο προγραµµατιστικό περιβάλλον της R αρκετά πακέτα που µπορούµε να χρησιµοποιήσουµε πολυεπίπεδα δίκτυα αισθητήρων, το κάθε ένα µε τα πλεονεκτήµατα και τα µειονεκτήµατά του δίνει έµφαση σε συγκεκριµένα προβλήµατα. Επιπλέον, µπορεί κανείς
111 92 Προγραµµατιστικά περιβάλλοντα να δηµιουργήσει ΤΝ για το πρόβληµα της παλινδρόµησης και δίκτυα ευέλικτης συνάρτησης ακτινικής ϐάσης. nnet Το πακέτο nnet [208] χρησιµοποιείται για τη δηµιουργία πολυεπίπεδων δικτύων µε ένα κρυφό επίπεδο. Η προσαρµογή των συναπτικών ϐαρών του γίνεται µε τη χρήση των µεθόδων quasi-newton και ειδικότερα του αλγορίθµου BFGS. AMORE Το πακέτο AMORE [154] χρησιµοποιεί τον αλγόριθµο µάθησης TAO-robust backpropagation [197], ο οποίος είναι µια ανθεκτική παραλλαγή στα δεδοµένα µε outliers, του αλγο- ϱίθµου backpropagation. Επιπλέον είναι διαθέσιµοι αλγόριθµοι µε προσαρµοστικό ϱυθµό µάθησης και όρο µοµέντουµ τόσο για µάθηση ανά εποχή όσο και για µάθηση ανά πρότυπο. Ολοι οι αλγόριθµοι χρησιµοποιούν διαθορετικό ϱυθµό µάθησης για κάθε νευρώνα. neuralnet Το πακέτο του neuralnet [88] υλοποιεί την τυπική backpropagation και δύο τύπους resilient backpropagation. Επιπλέον, επιτρέπει ευέλικτες ϱυθµίσεις όσον αφορά τον τύπο της συνάτησης σφάλµατος και της συνάρτησης µεταφοράς που χρησιµοποιούν οι νευρώνες. monmlp Το πακέτο monmlp [34] χρησιµοποιείται για πολυεπίπεδα δίκτυα που αντιµετοπίζουν δεδοµένα στα οποία έχουν ορισθεί κάποιοι περιορισµοί µονοτονικότητας [270]. Σε περίπτωση που δεν έχουν ορισθεί τέτοιοι περιορισµοί, οι αλγόριθµοι συµπεριφέρονται όπως οι συνήθεις εκδοχές τους χωρίς περιορισµούς. Η µάθηση πραγµατοποιείται µέσω του τυπικού αλγορίθ- µου µάθησης backpropagation χρησιµοποιώντας ένα µη γραµµικό ϐελτιστοποιητή ελάχιστων τετραγώνων και οι διαθέσιµες αρχιτεκτονικές επιτρέπουν ένα ή δύο κρυφά επίπεδα. Τέλος, αξίζει να αναφερθεί ότι µπορούµε να χρησιµοποιήσουµε ένα κριτήριο τερµατισµού της διαδικασίας της µάθησης, χρησιµοποιώντας µια διαδικασία εκκίνησης (bootstrap). qrnn Το πακέτο qrnn [35] υλοποιεί ένα νευρωνικό δίκτυο ποσοστιαίας παλινδρόµησης quantile regression που είναι το ανάλογο της ποσοστιαίας γραµµικής παλινδρόµησης για ΤΝ. Μπο- ϱεί να χρησιµοποιηθεί για την παραγωγή προβλέψεων πυκνότητας πιθανότητας, ειδικά σε περιβάλλοντα µε συνεχείς και διακριτές µεταβλητές εισόδου. Μέσω µιας διαφορίσιµης προσέγγισης της συνάρτησης κόστους της ποσοστιαίας παλινδρόµησης, µπορεί να χρησιµοποιη- ϑεί µια απλοποιηµένη µορφή του αλγορίθµου πεπερασµένης εξοµάλυνσης (finite smoothing algorithm ) [42] για τον ορισµό των παραµέτρων του µοντέλου µετά την εκπαίδευση. frbf Το πακέτο frbf [65] υλοποιεί έναν αλγόριθµο για ευέλικτες συναρτήσεις ακτινικής ϐάσης και ο τρόπος λειτουργίας του έχει ήδη περιγραφεί στην ενότητα
112 3.2 R: Προσφερόµενες επιλογές 93 Αυτοοργανωµένοι χάρτες class Το πακέτο class [208] υλοποιεί αυτοοργανωµένους χάρτες µε ορθογώνιο ή εξαγωνικό πλέγ- µα καθώς επίσης και τους αλγορίθµους µάθησης κβαντισµού διανυσµάτων (learning vector quantization) LVQ1, LVQ2.1, LVQ3 και OLVQ. Το LVQ1 προσαρµόζει µόνο το νικητή νευ- ϱώνα, ενώ τα LVQ2.1 και LVQ3 προσαρµόζουν επίσης το δεύτερο καλύτερο νευρώνα. Το OLVQ χρησιµοποιεί διαφορετικό ϱυθµό µάθησης για κάθε νευρώνα. som Το πακέτο som [264] δηµιουργεί αυτοοργανοµένους χάρτες που ειδικεύονται σε προβλήµατα οµαδοποίησης γονιδίων. Επιτρέπουν εξαγωνικές και ορθογώνιες τοπολογίες, καθώς και πολλές επιλογές γραφικής απεικόνισης των αποτελεσµάτων. kohonen Το πακέτο kohonen [252] υλοποιεί αυτοοργανωµένους χάρτες µε επιβλεπόµενη ή µη ε- πιβλεπόµενη µάθηση και ϐασίζεται στο πακέτο class. ίνει τη δυνατότητα για χρήση τόσο εξαγωνικών όσο και ορθογώνιων σχηµάτων γειτνίασης αλλά και τοροειδών χαρτών. Το πακέτο προσφέρει επίσης διάφορες δυνατότητες απεικόνισης για τους χάρτες. wccsom Το πακέτο ωςςσοµ [250] επίσης δηµιουργεί αυτοοργανωµένους χάρτες όµως αυτό που το κάνει να διαφέρει από τα υπόλοιπα πακέτα είναι η χρήση της µετρικής απόστασης που ονο- µάζεται σταθµισµένη διασυσχέτιση (Weighted Cross Correlation-WCC). Επιπλέον, υλοποιεί χάρτες που ξεκινούν µε λίγους νευρώνες και προσθέτουν επιπλέον κατά τη διάρκεια της εκπαίδευσης. Μηχανές διανυσµατικής υποστήριξης e1071 Η συνάρτηση svm() στο πακέτο e1071 [174] παρέχει µια διασύνδεση µε το libsvm µαζί µε τις µεθόδους οπτικοποίησης και ϱύθµισης παραµέτρων. Το libsvm [38] είναι ένα ϐραβευµένο λογισµικό, γραµµένο στη γλώσσα προγραµµατισµού C και C ++, το οποίο συνδυάζει ισχυ- ϱή και γρήγορη υλοποίηση SVM µαζί µε καλή ποιότητα αποτελεσµάτων στα περισσότερα προβλήµατα ταξινόµησης και παλινδρόµησης. kernlab Το πακέτο kernlab [106] προσφέρει µια ευρεία γκάµα µεθόδων µε ϐάση τον πυρήνα και περιλαµβάνει µια µέθοδο SVM που ϐασίζεται στους ϐελτιστοποιητές που χρησιµοποιούνται στα libsvm και bsvm. klar Το πακέτο klar [209] περιλαµβάνει µια διασύνδεση µε το SVMlight [125], µια δηµοφιλής εφαρµογή SVM που επιπλέον προσφέρει εργαλεία ταξινόµησης όπως η Regularized Discriminant Analysis. svmpath Τέλος, το πακέτο svmpath [93] παρέχει έναν αλγόριθµο που προσεγγίζει ολόκληρη τη διαδροµή της λύσης SVM, για οποιαδήποτε τιµή της παραµέτρου κόστους. Στον Πίνακα 3.5 παρουσιάζονται συγκεντρωτικά οι δυνατότητες και οι ιδιαιτερότητες των διαφόρων πακέτων διαµέσου των οποίων υλοποιούνται µηχανές διανυσµατικής υποστήριξης [129] στο προγραµµατιστικό περιββάλλον R.
113 94 Προγραµµατιστικά περιβάλλοντα Package kernlab e1071 klar svmpath Formulations C-SVC, v-svc, C-SVC, v- C-SVC, e-svr binary C-SVC C-BSVC, spoc- SVC, one-svc, SVC, one-svc, e-svr, v-svr e-svr, v-svr, e-bsvr Kernels Gaussian, polynomial, Gaussian, polynomial, Gaussian, polynomial, Gaussian, polynomial linear, sigmoid, linear, sigmoid linear, sigmoid Laplace, Bessel, Anova, Spline Optimizer SMO, TRON SMO chunking NA Model Selectioparameter hyper- grid-search function NA NA estimation for Gaussian kernels Data formula, matritrix, formula, ma- formula, ma- matrix sparse trix matrix Interfaces.Call.C temporary files.c Class System S4 S3 none S3 Extensibility custom kernel functions NA NA custom kernel functions Add-ons plot function plot functions, NA plot function accuracy License GPL GPL noncommercial GPL Πίνακας 3.5: Συγκεντρωτική παρουσίση των υλοποιήσεων SVM στο περιβάλλον R Παρουσίαση δυνατοτήτων κάθε πακέτου Πακέτο AMORE Το πακέτο AMORE χρησιµοποιείται για να υλοποιήσουµε ΤΝ πρόσθιας τροφοδότητσης και παρέχει στο χρήστη επιλογές ως προς τη συνάρτηση µεταφοράς που χρησιµοποιείται στους νευρώνες, τον τύπο της συνάρτησης σφάλµατος καθώς και τον αλγόριθµο εκπαίδευσης. Οι διαθέσιµοι τύποι συνάρτησης µεταφοράς τόσο για τους νευρώνες στο κρυφό επίπεδο όσο και για αυτούς στο επίπεδο εξόδου είναι οι : 1. purelin 2. tansig 3. sigmoid 4. hardlim 5. custom (ο χρήστης καθορίζει µία της επιλογής του) Για τον τύπο της συνάρτησης σφάλµατος υπάρχουν οι παρακάτω επιλογές :
114 3.2 R: Προσφερόµενες επιλογές LMS 2. LMLS 3. TAO [198] Οι διαθέσιµοι αλγόριθµοι εκπαίδευσης του ΤΝ είναι : 1. ADAPTgd: Adaptative gradient descend. 2. ADAPTgdwm: Adaptative gradient descend with momentum. 3. BATCHgd: BATCH gradient descend. 4. BATCHgdwm: BATCH gradient descend with momentum. Τέλος πρέπει να σηµειώσουµε ότι τα ϐάρη αρχικοποιούνται µε τυχαίες τιµές. Πακέτο kohonen Μέσω της συνάρτησης bdk µας δίνεται η ευκαιρία να χρησιµοποιήσουµε αυτοοργανω- µένους χάρτες µε επιβλεπόµενη µάθηση. Κατά την εκπαίδευση του X-χώρου εισόδου και του Y-χώρου εξόδου του χάρτη, δίνεται µεγαλύτερο ϐάρος στα χαρακτηριστικά του Y όταν πρόκειται να γίνει ενηµέρωση των ϐαρών για τον X-χώρο και αντιστρόφως [37]. Τα ϐάρη αρχικοποιούνται στο διάστηµα (0,75, 0,25) και κατά τη διάρκεια της εκπαίδευσης λαµβάνουν τιµές στο διάστηµα (0,5, 0,5). Η συνάρτηση supersom αποτελεί µια επέκταση των xyf χαρτών σε πολλαπλά στρώµατα δεδοµένων, πιθανώς µε διαφορετικό αριθµό µεταβλητών. Υπολογίζεται µια σταθµισµένη απόσταση σε όλα τα επίπεδα για να καθορίσει τους νικητές νευρώνες κατά τη διάρκεια της εκπαίδευσης [252]. Μια άλλη έκδοση των αυτοοργανωµένων χαρτών µε επιβλεπόµενη µάθηση γίνεται διαθέσιµη µέσω της συνάρτησης xyf. ηµιουργείται ένα διάνυσµα µε τη σύζευξη των χώρων εισόδου (X) και εξόδου (Y) και εκπαιδεύεται µε τον συνήθη τρόπο, µε τη διαφορά ότι η απόσταση ενός διανύσµατος από ένα νευρώνα είναι το άθροισµα ξεχωριστών αποστάσεων για τους χώρους X και Y [170]. Για συνεχή Y-χώρο, χρησιµοποιείται η ευκλείδεια απόσταση, ενώ όταν είναι κατηγορικός, η απόσταση Tanimoto [37]. Πακέτο nnet Το πακέτο nnet δίνει την ικανότητα να εκπαιδεύσουµε ΤΝ πρόσθιας τροφοδότησης µε ένα κρυφό επίπεδο καθώς επίσης και multinomial log-linear µοντέλα. ίνεται µεγάλη ελευθερία στην αρχικοποίηση των ϐαρών αφού µπορούν αρχικοποιηθούν τυχαία, είτε να αρχικοποιηθούν σε ένα διάστηµα που καθορίζει ο χρήστης, είτε να τους ανατεθούν οι τιµές που επιθυµεί ο χρήστης. Από την άλλη µεριά έχουµε λίγες επιλογές στον τύπο της συνάρτησης µεταφοράς των νευρώνων του κρυφού επιπέδου αφού µπορούµε είτε να χρησιµοποιήσουµε γραµµική είτε σιγµοειδή. Πακέτο neuralnet Το πακέτο neuralnet χρησιµοποιείται για να υλοποιήσουµε ΤΝ πρόσθιας τροφοδότητσης και παρέχει στο χρήστη επιλογές ως προς τη συνάρτηση µεταφοράς που χρησιµοποιείται στους νευρώνες, τον τύπο της συνάρτησης σφάλµατος καθώς και τον αλγόριθµο εκπαίδευσης. Ο αλγόριθµος εκπαίδευσης καθορίζεται χρησιµοποιώντας µια συµβολοσειρά που καθορίζει ως εξής τον αλγόριθµο εκπαίδευσης : 1. το backprop αντιστοιχεί στον τυπικό αλγόριθµο backpropagation, 2. τα rprop+, rprop- αντιστοιχούν στον αλγόριθµο resilient backpropagation µε και χωρίς αναστροφή ϐάρους (weight backtracking).
115 96 Προγραµµατιστικά περιβάλλοντα 3. τα sag, sir αντιστοιχούν στον τροποποιηµένο αλγόριθµο ολικής σύγκλισης, ο οποίος ϐασίζεται στον αλγόριθµο resilient backpropagation χωρίς αναστροφή ϐάρους και τροποποιεί είτε τον ϱυθµό µάθησης που σχετίζεται µε τη µικρότερη απόλυτη κλίση (sag), είτε τον ίδιο τον ελάχιστο ϱυθµό µάθησης (slr). Η συνάρτηση µεταφοράς που χρησιµοποιείται στους νευρώνες του κρυφού στρώµατος είναι διαφορίσιµη και καθορίζεται και αυτή µέσω µιας συµβολοσειράς ως : 1. logistic για σιγµοειδείς συναρτήσεις 2. tanh για τη συνάρτηση υπερβολικής εφαπτοµένης Για τους νευρώνες του κρυφού επιπέδου είναι διαθέσιµη και η γραµµική συνάρτηση µεταφο- ϱάς. Σε αυτό το πακέτο έχουµε µόνο δύο επιλογές για τη µορφή της συνάρτησης σφάλµατος. Αυτές είναι : 1. SSE που αντιστοιχεί στο άθροισµα τετραγώνων 2. CE που αντιστοιχεί στην cross-entropy Επίσης πρέπει να σηµειωθεί το γεγονός ότι έχουµε τη δυνατότητα είτε να αρχικοποιήσουµε τα ϐάρη τυχαία είτε να τους αναθέσουµε εµείς τιµές. Μια ενδιαφέρουσα προσφερόµενη συνάρτηση του πακέτου είναι η confidence.interval. Η συνάρτηση αυτή υπολογίζει τα διαστήµατα εµπιστοσύνης των ϐαρών και τα κριτήρια πλη- ϱοφορίας NIC [182] του δικτύου όταν η συνάρτηση σφάλµατος ισούται µε την αρνητική λογαριθµική συνάρτηση πιθανότητας [255] και το δίκτυο έχει προσδιοριστεί πλήρως. Αυτό συµβαίνει όταν το δίκτυο δεν περιλαµβάνει νευρώνες στα κρυφά επίπεδα και το επίπεδο εξόδου, που δεν επιφέρουν καµία αλλαγή στο δίκτυο. Επιπλέον µας δίνεται η δυνατότητα να παράξουµε δύο γραφήµατα µε τις συναρτήσεις gwplot και plot. Η πρώτη απεικονίζει, σε διαφορετικά γραφήµατα, τη σχέση µεταξύ της µεταβλητής εξόδου µε κάθε µεταβλητή εισόδου και η δεύτερη την τοπολογική διάταξη του δικτύου τοποθετώντας σε κάθε σύναψη το ϐάρος που έχει προκύψει µετά την εκπαίδευση. Επίσης παρέχονται πληροφορίες όπως το συνολικό σφάλµα και ο αριθµός των ϐηµάτων που πραγµατοποιήθηκαν κατά την εκπαίδευση. Πακέτο e1071 Το κύριο συστατικό του πακέτου e1071 είναι µια συνάρτηση εκπαίδευσης που περιλαµβάνει τους πιο συνηθισµένους πυρήνες (γραµµικό, πολυωνυµικό, ακτινικής ϐάσης και σιγµοειδή), επιπλέον τον υπολογισµό των τιµών αποφάσεων και πιθανότητας για προβλέψεις, τη συρρίκνωση των ευριστικών στοιχείων κατά την εκπαίδευση, τη ϐαθµονόµηση των κλάσεων κατά την ταξινόµηση, τον χειρισµό αραιών δεδοµένων και τον υπολογισµό του σφάλµατος εκπαίδευσης [174]. Επιπλέον, η συνάρτηση plot() απεικονίζει τα δεδοµένα, τα διανύσµατα υποστήριξης και τα όρια απόφασης, εφόσον παρέχονται. Η ϱύθµιση υπερπαραµέτρων πραγµατοποιείται µε τη χρήση της συνάρτησης tune(), η οποίο πραγµατοποιεί αναζήτηση σε συγκεκριµένο εύρος τιµών των παραµέτρων. Οταν έχουµε να αντιµετωπίσουµε κάποιο πρόβληµα ταξινόµησης, η καλύτερη επιλογή που έχουµε να κάνουµε είναι η χρήση του c-classification µε συνάρτηση ακτινικής ϐάσης στον πυρήνα, γιατί έχει καλή απόδοση και µόνο δύο παραµέτρους. Αυτό το µοντέλο ε- πιτρέπει τον µεγαλύτερο έλεγχο του αριθµού των διανυσµάτων υποστήριξης καθορίζοντας µια πρόσθετη παράµετρο v που αντιπροσωπεύει το ποσοστό των διανυσµάτων υποστήριξης προς τον αριθµό των συνολικών προτύπων εκπαίδευσης [220]. Η χρήση του µοντέλου e- regression συνίσταται όταν τα διανύσµατα δεδοµένων ϐρίσκονται µεταξύ των δύο ορίων του περιθωρίου. Τέλος, το µοντέλο v-regression είναι ανάλογο µε το µοντέλο c-classification αλλά για παλινδρόµηση.
116 3.2 R: Προσφερόµενες επιλογές 97 Πακέτο RSNNS Το πακέτο RSNNS, εν αντιθέσει µε τα προηγούµενα, παρέχει τη δυνατότητα δηµιουργίας και διαχείρισης παραπάνω από ενός τύπου νευρωνικών δικτύων. Εκτός από τα δίκτυα mlp, rbf και som µπορεί ο χρήστης να δηµιουργήσει : 1. ίκτυα προσαρµοστικής ϑεωρίας συντονισµού (Adaptive Resonance Theory-ART) ηµιουργούνται µέσω της συνάρτησης art1, πραγµατοποιούν οµαδοποίηση ϐρίσκοντας πρωτότυπα και σχεδιάζονται κυρίως για να επιλύσουν το δίληµµα σταθερότηταςπλαστικότητας [86]. Τα art1 είναι µόνο για δυαδικές εισόδους, ενώ όταν έχουµε πραγ- µατικές τιµές, πρέπει να χρησιµοποιήσουµε τη συνάρτηση art2. 2. ίκτυα αυτοσυσχετιστικής µνήµης (autoassociative memory) ηµιουργούνται µέσω της συνάρτησης assoz και εκτελούν οµαδοποίηση ϐρίσκοντας ένα πρωτότυπο στη δεδοµένη είσοδο [190]. Η υλοποίηση προϋποθέτει δισδιάστατες εισόδους και εξόδους. 3. υναµικά δίκτυα µάθησης κβαντικού διανύσµατος (Dynamic Learning Vector Quantization- DLVQ) ηµιουργούνται µέσω της συνάρτησης dlvq, είναι παρόµοια µε τους αυτοοργανωµένους χάρτες αλλά εκτελούν εποπτευόµενη µάθηση [137]. 4. ίκτυα elman ηµιουργούνται µέσω της συνάρτησης elman, είναι µερικώς αναδροµικά δίκτυα [63] και παρόµοια µε τα δίκτυα Jordan. 5. ίκτυα jordan ηµιουργούνται µέσω της συνάρτησης jordan, είναι µερικώς αναδροµικά δίκτυα [126] και είναι χρήσιµα όταν επεξεργαζόµαστε δεδοµένα χρονοσειρών. 6. ίκτυα ακτινικής ϐάσης µε τον αλγόριθµο δυναµικής προσαρµογής αποσύνθεσης (Radial Basis Function with Dynamic Decay Adjustment-rbfDDA) ηµιουργούνται µέσω της συνάρτησης rbfdda και χρησιµοποιούνται µόνο για ταξινόµηση. Αρχικά το δίκτυο αποτελείται µόνο από νευρώνες εισόδου και εξόδου και κατά τη διάρκεια της εκπαίδευσης προστίθονται νέοι νευρώνες [24]. Εκτός από την πληθώρα των τύπων ΤΝ που γίνονται διαθέσιµα µέσω του συγκεκριµένου πακέτου, µπορεί κανείς να χρησιµοποιήσει κάποιες συναρτήσεις που ϐοηθούν στην προεπεξεργασία των δεδοµένων πριν την εκπαίδευση όσο και στην εξαγωγή συµπερασµάτων µετά το πέρας της. Η συνάρτηση analyzeclassification µετατρέπει τις συνεχείς εξόδους σε δυαδικές ώστε να µπορούν να χρησιµοποιηθούν ευκολότερα στην ταξινόµηση, η συνάρτηση splitfor- TrainingAndTest διαχωρίζει το σύνολο δεδοµένων στο σύνολο εκπαίδευσης και στο σύνολο ελέγχου, η συνάρτηση normtrainingandtestset κανονικοποεί τα σύνολα που προκύπτουν από τη συνάρτηση splitfortrainingandtest και η συνάρτηση confusionmatrix δηµιουργεί ένα µητρώο που αναπαριστά τον αριθµό των σωστά και λάθος ταξινοµηµένων προτύπων ανά κλάση. Τέλος πρέπει να προσθέσουµε και τις γραφικές παραστάσεις που µπορούν να αναπτυχθούν µέσω των συναρτήσεων του συγκεκριµένου πακέτου. Η συνάρτηση plotactmap δηµιουργεί το χάρτη ενεργοποίησης, η συνάρτηση plotiterativeerror αναπαριστά το σφάλ- µα εκπαίδευσης και ελέγχου, η συνάρτηση plotregressionerror παρουσιάζει το σφάλµα παλινδρόµησης και η συνάρτηση plotroc οριοθετεί µια καµπύλη χαρακτηριστικών δέκτη (ROC). Κλείνοντας, προτείνουµε στον αναγνώστη που επιθυµεί να ασχοληθεί µε την υλοποίηση ΤΝ στο συγκεκριµένο πακέτο, να ανατρέξει στο SNNS User Manual 4.2 όπου µπορεί να ϐρει αναλυτικές πληροφορίες για τους αλγορίθµους εκπαίδευσης, τις συναρτήσεις µεταφοράς και τους τρόπους αρχικοποίησης των ϐαρών που είναι διαθέσιµοι.
117 98 Προγραµµατιστικά περιβάλλοντα
118 Κ Ε Φ Α Λ Α Ι Ο 4 Εφαρµογές ΤΝ 4.1 Ταξινόµηση προτύπων Θα εφαρµόσω διάφορα είδη ΤΝ στο πρόβληµα ταξινόµησης 2 classes - 9 groups που αναφέρεται στο ϐιβλίο [240]. Το σύνολο εκπαίδευσης αποτελείται από δισδιάστατα πρότυπα που ανήκουν σε δύο διακριτές κατηγορίες µε ετικέτες 1 και 2 που παρήχθησαν από τέσσερις και πέντε αντίστοιχα Gaussian κατανοµές µε µέσες τιµές m 1 = [ 1.0, 0; 0, 1; 1.0, 0; 0, 1.0] T m 2 = [ 1.0, 1.0; 0, 0; 1.0, 1.0; 1.0, 1.0; 1.0, 1.0] T. Το µητρώο συνδιακύµανσης για κάθε κατανοµή είναι ίσο µε σ 2 I, όπου σ 2 = 0.04 και I είναι το ταυτοτικό µητρώο. Τα σηµεία που δηµιουργήθηκαν για το σύνολο εκπαίδευσης απεικονίζονται στο Σχήµα 4.1. Σχήµα 4.1: εδοµένα εκπαίδευσης για το πρόβληµα 2 classes - 9 groups
119 100 Εφαρµογές ΤΝ Εφαρµογή στο προγραµµατιστικό περιβάλλον MATLAB MLP ίκτυα Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση τριών αρχιτεκτονικών δικτύου και τριών αλγορίθµων εκπαίδευσης. Πιο συγκεκριµένα, δηµιουργήθηκαν δεκαπέντε δίκτυα MLP µε τις παραµέτρους που τα διαφοροποιούν να είναι : Η αρχιτεκτονική του δικτύου. Χρησιµοποιήθηκε η 2-6-1, η και η Ειδικότερα, χρησιµοποιήθηκαν δύο νευρώνες στο επίπεδο εισόδου µε συνάρτηση ε- νεργοποίησης την tansig, έξι, δέκα και δεκαπέντε νευρώνες στο επίπεδο εισόδου µε συνάρτηση ενεργοποίησης την tansig και ένα νευρώνα στο επίπεδο εξόδου µε συνάρτηση ενεργοποίησης την purelin. Ο αλγόριθµος εκπαίδευσης του δικτύου. Χρησιµοποιήθηκε ο trainlm, ο trainbfg και ο traingda. Ο ϱυθµός µάθησης που χρησιµοποιήθηκε κατά την εκπαίδευση του δικτύου. Οι τιµές που απέδωσα ήταν 0.1, 0.2 και 0.9. Στον Πίνακα 4.1 παρουσιάζονται συγκεντρωτικά οι συνιστώσες κάθε δικτύου. Οι παράµετροι ίκτυο Αρχιτεκονική Αλγόριθµος Ρυθµός µάθησης mlp261lm trainlm mlp2101lm trainlm mlp2151lm trainlm mlp261bfg trainbfg mlp2101bfg trainbfg mlp2151bfg trainbfg mlp261gdalr traingda 0.1 mlp261gdalr traingda 0.2 mlp261gdalr traingda 0.9 mlp2101gdalr traingda 0.1 mlp2101gdalr traingda 0.2 mlp2101gdalr traingda 0.9 mlp2151gdalr traingda 0.1 mlp2151gdalr traingda 0.2 mlp2151gdalr traingda 0.9 Πίνακας 4.1: ίκτυα MLP για το πρόβληµα ταξινόµησης 2 classes - 9 groups τερµατισµού της εκπαίδευσης που χρησιµοποιήθηκαν για όλα τα δίκτυα παρουσιάζονται στον Πίνακα 4.2. Παράµετρος Τιµή Στόχος 0.01 Εποχές Ελάχιστη κλίση 1e 10 Αποτυχηµένες επικυρώσεις 6 Πίνακας 4.2: Παράµετροι τερµατισµού εκπαίδευσης για το πρόβληµα ταξινόµησης 2 classes - 9 groups
120 4.1 Ταξινόµηση προτύπων 101 Κάθε δίκτυο εκπαιδεύτηκε µε τυχαία αρχικοποίηση και διαφορετικά σύνολα εκπαίδευσης και ελέγχου, εκατό ϕορές. Το σύνολο εκπαίδευσης αποτελείται κάθε ϕορά από 180 πρότυπα, ενώ το σύνολο ελέγχου από 20. Στη συνέχεια, Σχήµα 4.2, 4.3 και 4.4, ακολου- ϑούν γραφικές αναπαραστάσεις για το µέσο ποσοστό επιτυχίας (MPE) και το µέσο χρόνο εκπαίδευσης (MX). Το SY αντιστοιχεί στον αριθµό των συγκλίσεων για κάθε ΤΝ. Σχήµα 4.2: Μέσο ποσοστό επιτυχίας για τα MLP δίκτυα (µόνο για όσα συνέκλιναν). Τα ποσοστά επιτυχίας υπολογίστηκαν µόνο για όσα δίκτυα παρουσίασαν απόδοση (performance) µικρότερη ή ίση του 0.01 και η απόκριση του δικτύου ϑεωρείται επιτυχήµενη για το εκάστοτε πρότυπο αν ισχύει έξοδος στόχος 0.2 (4.1) RBF ίκτυα Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση των δικτύων RBF σε σχέση µε το κατώφλι για το στόχο και την τιµή της διασποράς. Πιο συγκεκριµένα, δηµιουργήθηκαν είκοσι οχτώ δίκτυα RBF µε τις παραµέτρους που τα διαφοροποιούν να είναι : Η διασπορά, στην οποία έδωσα τις τιµές 0.001, 0.01, 0.1, 0.25, 0.5, 0.75 και 1. Το κατώφλι για την ακρίβεια των υπολογισµών, στο οποίο έδωσα τις τιµές 0, 0.001, 0.01 και 0.1. Στον Πίνακα 4.3 παρουσιάζονται συγκεντρωτικά οι συνιστώσες κάθε δικτύου. Κάθε δίκτυο εκπαιδεύτηκε µε διαφορετικά σύνολα εκπαίδευσης και ελέγχου, εκατό ϕο- ϱές. Το σύνολο εκπαίδευσης αποτελείται κάθε ϕορά από 180 πρότυπα, ενώ το σύνολο ελέγχου από 20. Η απόκριση του δικτύου ϑεωρείται επιτυχήµενη για το εκάστοτε πρότυπο, αν ισχύει η σχέση 4.1. Στο Σχήµα 4.5 και 4.6, ακολουθούν γραφικές αναπαραστάσεις για το µέσο ποσοστό επιτυχίας (MPE) και το µέσο χρόνο εκπαίδευσης (MX).
121 102 Εφαρµογές ΤΝ Σχήµα 4.3: Μέσο ποσοστό επιτυχίας για τα MLP δίκτυα (ανεξαρτήτως σύγκλισης). Σχήµα 4.4: Μέσος χρόνος εκπαίδευσης για τα MLP δίκτυα. PNN ίκτυα Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση των δικτύων PNN σε σχέση µε την τιµή της διασποράς. Πιο συγκεκριµένα, δηµιουργήθηκαν επτά δίκτυα PNN µε τις
122 4.1 Ταξινόµηση προτύπων 103 ίκτυο ιασπορά Στόχος ίκτυο ιασπορά Στόχος rbfg0s rbfg001s rbfg0s rbfg001s rbfg0s rbfg001s rbfg0s rbfg001s rbfg0s rbfg001s rbfg0s rbfg001s rbfg0s1 1 0 rbfg001s rbfg0001s rbfg01s rbfg0001s rbfg01s rbfg0001s rbfg01s rbfg0001s rbfg01s rbfg0001s rbfg01s rbfg0001s rbfg01s rbfg0001s rbfg01s Πίνακας 4.3: ίκτυα RBF για το πρόβληµα ταξινόµησης 2 classes - 9 groups Σχήµα 4.5: Μέσο ποσοστό επιτυχίας για τα RBF δίκτυα. τιµές για τη διασπορά να είναι 1, 0.1, 0.01, 0.001, 0.25, 0.5 και Στον Πίνακα 4.4 παρουσιάζονται συγκεντρωτικά οι συνιστώσες κάθε δικτύου. Οπως και στις προηγούµενες υποενότητες έτσι και σε αυτή κάθε δίκτυο εκπαιδεύτηκε εκατό ϕορές µε διαφορετικα σύνολα εκπαίδευσης και ελέγχου. Το σύνολο εκπαίδευσης αποτελείται κάθε ϕορά από 180 πρότυπα, ενώ το σύνολο ελέγχου από 20. Η απόκριση του δικτύου ϑεωρείται επιτυχήµενη για το εκάστοτε πρότυπο αν ισχύει η σχέση 4.1. Στο Σχήµα 4.7 και 4.8, ακολουθούν γραφικές αναπαραστάσεις για το µέσο ποσοστό επιτυχίας (MPE)
123 104 Εφαρµογές ΤΝ Σχήµα 4.6: Μέσος χρόνος εκπαίδευσης για τα RBF δίκτυα. ίκτυο ιασπορά pnns pnns pnns pnns pnns pnns pnns1 1 Πίνακας 4.4: ίκτυα PNN για το πρόβληµα ταξινόµησης 2 classes - 9 groups και το µέσο χρόνο εκπαίδευσης (MX). Μηχανές ιανυσµάτων Υποστήριξης Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση των Μηχανών ιανυσµάτων Υποστήριξης (SVM s) σε σχέση µε τη συνάρτηση πυρήνα. Πιο συγκεκριµένα, δηµιουργήθηκαν τέσσερις SVM s µε συναρτήσεις πυρήνα rbf, quadratic, linear και polynomial ϐαθµού 3. Οπως ϕαίνεται από το Σχήµα 4.9, καλύτερα αποτελέσµατα για το συγκεκριµένο πρόβλη- µα έχουµε όταν η συνάρτηση πυρήνα είναι rbf. Στη συνέχεια δηµιούργησα άλλες τρεις SVM s µε συνάρτηση πυρήνα την rbf µε σκοπό να ελέγξω την επιρροή της τιµής της διασποράς στη δηµιουργία του συνόρου απόφασης. Οι τιµές που χρησιµοποίησα για τη διασπορά είναι το 1, το 0.5, το 0.25 και το 0.1 και τα αποτελέσµατα ϕαίνονται στο Σχήµα Τέλος, δηµιουργήσα έξι µηχανές διανυσµάτων υποστήριξης προκειµένου να συγκριθούν οι αποδόσεις τους συναρτήσει του τύπου πυρήνα που χρησιµοποιείται και του γεγονότος αν
124 4.1 Ταξινόµηση προτύπων 105 Σχήµα 4.7: Μέσο ποσοστό επιτυχίας για τα PNN δίκτυα. Σχήµα 4.8: Μέσος χρόνος εκπαίδευσης για τα PNN δίκτυα. ϑα κανονικοποιηθούν ή όχι τα δεδοµένα. Στον Πίνακα 4.5 παρουσιάζονται συγκεντρωτικά οι συνιστώσες κάθε µηχανής.
125 106 Εφαρµογές ΤΝ Σχήµα 4.9: ιαγράµµατα συνόρου απόφασης για διαφορετικά είδη συναρτήσεων πυρήνα. Σχήµα 4.10: ιαγράµµατα συνόρου απόφασης για διαφορετικές τιµές της διασποράς της συνάρτησης πυρήνα rbf. Η εκπαίδευση κάθε µηχανής έγινε εκατό ϕορές για διαφορετικά δίκτυα εκπαίδευσης και ελέγχου µε την απόκριση της µηχανής να ϑεωρείται επιτυχήµενη για το εκάστοτε πρότυπο αν ισχύει η σχέση 4.1. Το σύνολο εκπαίδευσης αποτελείται κάθε ϕορά από 180 πρότυπα ενώ το σύνολο ελέγχου από 20. Στο Σχήµα 4.11 και 4.12, ακολουθούν γραφικές αναπαραστάσεις για το µέσο ποσοστό επιτυχίας (MPE) και το µέσο χρόνο εκπαίδευσης (MX).
126 4.1 Ταξινόµηση προτύπων 107 ίκτυο πυρήνας κανονικοποίηση CVSVMModel1 ακτινικής ϐάσης όχι CVSVMModel2 γραµµικός όχι CVSVMModel3 πολυωνυµικός όχι CVSVMModelb1 ακτινικής ϐάσης ναι CVSVMModelb2 γραµµικός ναι CVSVMModelb3 πολυωνυµικός ναι Πίνακας 4.5: Μηχανές SVM για το πρόβληµα ταξινόµησης 2 classes - 9 groups Σχήµα 4.11: Μέσο ποσοστό επιτυχίας για τα SVM δίκτυα Εφαρµογή στο προγραµµατιστικό περιβάλλον R Πακέτο nnet Με το πακέτο nnet δηµιούργησα τρία δίκτυα πρόσθιας τροφοδότησης που παρουσιάζονται αναλυτικά στον Πίνακα 4.6. Κάθε νευρωνικό δίκτυο εκπαιδεύτηκε για εποχές µε συνάρτηση ενεργοποίησης των νευρώνων του κρυφού επιπέδου την logistic και συνάρτηση ενεργοποίησης στο νευρώνα του επιπέδου εξόδου την purelin. Η συνάρτηση σφάλµατος είχε τη µορφή ελαχίστων τετραγώνων (least-squares) και η αρχικοποίση όλων των ϐαρών και των πολώσεων του δικτύου έγινε στο διάστηµα [-0.5, 0.5]. Κάθε δίκτυο εκπαιδεύτηκε εκατό ϕορές µε το σύνολο εκπαίδευσης να αποτελείται από 180 πρότυπα που επιλέχθηκαν τυχαία από όλο το διαθέσιµο σύνολο προτύπων, ενώ το σύνολο ελέγχου να αποτελείται από 20 πρότυπα. Το µέσο ποσοστό επιτυχίας για κάθε δίκτυο παρουσιάζεται στο Σχήµα 4.13 και στο 4.14 ενώ στον Πίνακα 4.7 απεικονίζεται ο µέσος χρόνος εκπαίδευσης.
127 108 Εφαρµογές ΤΝ Σχήµα 4.12: Μέσος χρόνος εκπαίδευσης για τα SVM δίκτυα. ίκτυο nnet1 nnet2 nnet3 Τοπολογία Πίνακας 4.6: ίκτυα MLP για χρήση µε το πακέτο nnet. nnet1 nnet2 nnet Πίνακας 4.7: Μέσος χρόνος εκπαίδευσης των MLP δικτύων µε το πακέτο nnet. Πακέτο pnn Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση των δικτύων PNN σε σχέση µε την τιµή της διασποράς. ηµιουργήθηκαν έξι δίκτυα που παρουσιάζονται στον Πίνακα 4.8 και κάθε δίκτυο εκπαδεύτηκε εκατό ϕορές, χρησιµοποιώντας ως σύνολο εκπαίδευσης 180 πρότυπα και ως σύνολο ελέγχου 20 πρότυπα. Το µέσο ποσοστό επιτυχίας για κάθε δίκτυο παρουσιάζεται στο Σχήµα 4.15 ενώ στον Πίνακα 4.9 απεικονίζεται ο µέσος χρόνος εκπαίδευσης. ίκτυο pnns001 pnns01 pnns025 ιασπορά ίκτυο pnns05 pnns075 pnns1 ιασπορά Πίνακας 4.8: ίκτυα PNN για το πακέτο pnn.
128 4.1 Ταξινόµηση προτύπων 109 Σχήµα 4.13: Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου nnet (µόνο για όσα συνέκλιναν). Σχήµα 4.14: Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου nnet (ανεξαρτήτως σύγκλισης). Πακέτο e1071 Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση της απόκρισης των µηχανών διανυσµατικής υποστήριξης (SVM) στην περίπτωση που τα πρότυπα εισόδου κανονικοποιού-
129 110 Εφαρµογές ΤΝ Σχήµα 4.15: Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου pnn. ίκτυο Χρόνος ίκτυο Χρόνος ίκτυο Χρόνος pnns pnns pnns025 0 pnns pnns075 0 pnns Πίνακας 4.9: Μέσος χρόνος εκπαίδευσης των PNN δικτύων µε το πακέτο pnn. νται και σε αυτήν που δεν κανονικοποιούνται αλλά επίσης και η σύγκριση της απόκρισης σε σχέση µε την τιµή της διασποράς. ηµιουργήθηκαν 14 δίκτυα που παρουσιάζονται στον Πίνακα 4.10 και 4.11 και εκπαιδεύτηκαν το καθένα από 100 ϕορές µε το σύνολο εκπαίδευσης να αποτελείται από 180 πρότυπα που επιλέχθηκαν τυχαία από όλο το διαθέσιµο σύνολο προτύπων ενώ το σύνολο ελέγχου αποτελείται από 20 πρότυπα. Τα δίκτυα του Πίνακα 4.11 έχουν ως τύπο πυρήνα τον rbf και έχει γίνει κανονικοποίηση των δεδοµένων πριν την εκπαίδευση. Το µέσο ποσοστό επιτυχίας για κάθε δίκτυο παρουσιάζεται στο Σχήµα 4.16 ενώ στο Σχήµα 4.17 γίνεται σύγκριση της απόδοσης των δικτύων µε διαφορετικούς νευρώνες ως προς την κανονικοποίηση (τλρεγ-ψεσ) ή όχι (τλρεγ-νο) των προτύπων πριν την εκπαίδευση. Τέλος στον Πίνακα 4.12 απεικονίζεται ο µέσος χρόνος εκπαίδευσης για όλα τα δίκτυα. Πακέτο neuralnet Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση των δικτύων MLP σε σχέση µε το ϱυθµό µάθησης και τον αριθµό των νευρώνων στο κρυφό επίπεδο. ηµιουργήθηκαν εννιά δίκτυα που περιγράφονται στον Πίνακα Κάθε νευρωνικό δίκτυο εκπαιδεύτηκε εκατό ϕορές µε µέγιστο εριθµό εποχών τις Η συνάρτηση ενεργοποίησης των νευ- ϱώνων του κρυφού επιπέδου ήταν η tanh και η συνάρτηση ενεργοποίησης στο νευρώνα του επιπέδου εξόδου η purelin. Σαν επιπλέον κριτήριο τερµατισµού χρησιµοποίησα την τιµή των
130 4.1 Ταξινόµηση προτύπων 111 ίκτυο svmrbft svmlint svmpolt svmsigt Πυρήνας rbf γραµµικός πολυωνυµικός σιγµοειδής Κανονικοποίηση ΝΑΙ ΝΑΙ ΝΑΙ ΝΑΙ ίκτυο svmrbff svmlinf svmpolf svmsigf Πυρήνας rbf γραµµικός πολυωνυµικός σιγµοειδής Κανονικοποίηση ΟΧΙ ΟΧΙ ΟΧΙ ΟΧΙ Πίνακας 4.10: ίκτυα SVM µε διαφορετικούς πυρήνες για το πακέτο e1071. ίκτυο svmrbf0001t svmrbf001t svmrbf01t ιασπορά ίκτυο svmrbf025t svmrbf075t svmrbf1t ιασπορά Πίνακας 4.11: ίκτυα SVM µε διαφορετικές διασπορές για το πακέτο e1071. Σχήµα 4.16: Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου e1071. µερικών παραγώγων, στις οποίες έθεσα κατώφλι το Το σύνολο εκπαίδευσης αποτελείται από 180 πρότυπα που επιλέχθηκαν τυχαία από όλο το διαθέσιµο σύνολο προτύπων, ενώ το σύνολο ελέγχου αποτελείται από 20 πρότυπα. Τα δύο παραπάνω σύνολα είναι ξένα µεταξύ τους και η ένωσή τους περιέχει όλα τα διαθέσιµα πρότυπα. Το µέσο ποσοστό επιτυχίας για κάθε δίκτυο παρουσιάζεται στο Σχήµα 4.18, ενώ στα Σχήµατα 4.19 και 4.20 παρουσιάζεται πάλι το µέσο ποσοστό επιτυχίας οµαδοποιηµένο ως προς το ϱυθµό µάθησης και την αρχιτεκτονική του δικτύου, ενώ στο Σχήµα 4.18 παρουσιάζεται το µέσο ποσοστό επιτυχίας υπολογισµένο και για τις περιπτώσεις που δεν υπήρξε σύγκλιση. Τέλος στον Πίνακα 4.14 απεικονίζεται ο µέσος χρόνος εκπαίδευσης.
131 112 Εφαρµογές ΤΝ Σχήµα 4.17: Σύγκριση δικτύων του πακέτου e1071 ως προς την κανονικοποίηση. svmrbft svmlint svmpolt svmsigt svmrbff svmlinf svmpolf svmsigf svmrbf0001t svmrbf001t svmrbf01t svmrbf025t svmrbf075t svmrbf1t Πίνακας 4.12: Μέσος χρόνος εκπαίδευσης των SVM για το πακέτο e1071. ίκτυο neu261lr01 neu2101lr01 neu2151lr01 Τοπολογία Ρυθµός µάθησης ίκτυο neu261lr02 neu2101lr02 neu2151lr02 Τοπολογία Ρυθµός µάθησης ίκτυο neu261lr09 neu2101lr09 neu2151lr09 Τοπολογία Ρυθµός µάθησης Πίνακας 4.13: ίκτυα MLP για χρήση µε το πακέτο neuralnet. Πακέτο RSNNS ίκτυα MLP
132 4.1 Ταξινόµηση προτύπων 113 Σχήµα 4.18: Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου neuralnet (µόνο για όσα συνέκλιναν). Σχήµα 4.19: Μέσο ποσοστό επιτυχίας σε σχέση µε το ϱυθµό µάθησης.
133 114 Εφαρµογές ΤΝ Σχήµα 4.20: Μέσο ποσοστό επιτυχίας σε σχέση µε την αρχιτεκτονική. Σχήµα 4.21: Μέσο ποσοστό επιτυχίας για τα δίκτυα του πακέτου neuralnet (ανεξαρτήτως σύγκλισης). Σκοπός των πειραµάτων που επιτελέστηκαν ήταν η σύγκριση τριών αρχιτεκτονικών δικτύου συναρτήσει του ϱυθµού µάθησης και της µορφής εκπαίδευσης. Πιο συγκεκριµένα, δηµιουρ-
134 4.1 Ταξινόµηση προτύπων 115 ίκτυο Χρόνος ίκτυο Χρόνος ίκτυο Χρόνος neu261lr neu261lr neu261lr neu2101lr neu2101lr neu2101lr neu2151lr neu2151lr neu2151lr Πίνακας 4.14: Μέσος χρόνος εκπαίδευσης των MLP δικτύων µε το πακέτο neuralnet. γήθηκαν δεκαοχτώ δίκτυα MLP µε τις παραµέτρους που τα διαφοροποιούν να είναι : Η αρχιτεκτονική του δικτύου. Χρησιµοποιήθηκε η 2-6-1, η και η Ειδικότερα, χρησιµοποιήθηκαν δύο νευρώνες στο επίπεδο εισόδου µε συνάρτηση ε- νεργοποίησης την Act_Logistic, έξι-δέκα-δεκαπέντε νευρώνες στο επίπεδο εισόδου µε συνάρτηση ενεργοποίησης την Act_Logistic και ένα νευρώνα στο επίπεδο εξόδου µε συνάρτηση ενεργοποίησης την purelin. Ο ϱυθµός µάθησης που χρησιµοποιήθηκε κατά την εκπαίδευσης του δικτύου. Οι τιµές που απέδωσα ήταν 0.1, 0.2 και 0.9. Η µορφές εκπαίδευσης ήταν η µάθηση κατά πρότυπο (pattern) που επιτυγχάνεται µέσω του αλγορίθµου Std_Backpropagation και η µάθηση κατά εποχή (batch) που επιτυγχάνεται µέσω του αλγορίθµου BackpropBatch. Στον Πίνακα 4.15 παρουσιάζονται συγκεντρωτικά οι συνιστώσες κάθε δικτύου. Σε όλα τα δίκτυα του Πίνακα 4.15 η αρχικοποίηση των ϐαρών για την εκπαίδευση έγινε µε τιµές στο δίάστηµα [-0.3, 0.3] και το σύνολο εκπαίδευσης αποτελείται από 180 πρότυπα που επιλέχθηκαν τυχαία από όλο το διαθέσιµο σύνολο προτύπων (200). Στη συνέχεια παρουσιάζονται το µέσο ποσοστό επιτυχίας για κάθε δίκτυο (Σχήµα 4.22) και ο µέσος χρόνος εκπαίδευσης (Πίνακας 4.16) Σύγκριση απόδοσης των δικτύων Προκειµένου να γίνει σύγκριση των αποτελεσµάτων που δηµιουργήθηκαν µέσω του ε- κάστοτε δικτύου, τα δίκτυα χωρίστηκαν σε τέσσερις οµάδες ανάλογα µε τον τύπο δικτύου. Στη συνέχεια πραγµατοποιήθηκε έλεγχος των µέσων τιµών µέσω της One Way ANOVA για κάθε είδος δικτύου, ώστε να µελετηθεί η στατιστική σηµαντικότητα των αποτελεσµάτων µε ϐάση τις παραµέτρους του δικτύου και προέκειψαν υποοµάδες δικτύων των οποίων οι δια- ϕορές στις µέσες τιµές δεν είναι σηµαντικές. Επειτα, για κάθε είδος δικτύου, επιλέχθηκε το δίκτυο µε το µεγαλύτερο µέσο ποσοστό επιτυχίας ως αντιπρόσωπος της υποοµάδας µε την καλύτερη µέση τιµή και µέσω της ίδιας διαδικασίας (One Way ANOVA) µελετήθηκε η στατιστική σηµαντικότητα των αποτελεσµάτων σύµφωνα µε το είδος δικτύου. Ο έλεγχος που πραγµατοποιήθηκε σε κάθε περίπτωση έχει την παρακάτω µορφή : H 0 : µ i = µ (Οι διαφορές στις µέσες τιµές δεν είναι σηµαντικές) H 1 : µ i µ j για κάποιο Ϲευγάρι (i, j) (Οι διαφορές στις µέσες τιµές είναι σηµαντικές) Το µ i αντιπροσωπεύει τη µέση τιµή των ποσοστών επιτυχίας που προκλήθηκε από την εκπαί δευση κάθε δικτύου. Σε όλες τις περιπτώσεις το p value ήταν µικρότερο του 0.05 γεγονός που µας ωθεί στο να απορρίψουµε τη µηδενική υπόθεση (H 0 ) και να συµπεράνουµε ότι υπάρχουν στατιστικά σηµαντικές διαφορές στις µέσες τιµές των ποσοστών επιτυχίας κάθε δικτύου. Προκειµένου να ϐρεθούν ποια δίκτυα έχουν όµοια συµπεριφορά και ποια όχι, εκτελέσθηκαν Post Hoc tests (Tukey, Bonferroni, Scheffe και LSD) µε τα αποτελέσµατα να παρουσιάζονται στους
135 116 Εφαρµογές ΤΝ ίκτυο mlprsnns261lr01 mlprsnns2101lr01 mlprsnns2151lr01 Αρχιτεκτονική Ρυθµός µάθησης Τρόπος µάθησης pattern pattern pattern ίκτυο mlprsnns261lr02 mlprsnns2101lr02 mlprsnns2151lr02 Αρχιτεκτονική Ρυθµός µάθησης Τρόπος µάθησης pattern pattern pattern ίκτυο mlprsnns261lr09 mlprsnns2101lr09 mlprsnns2151lr09 Αρχιτεκτονική Ρυθµός µάθησης Τρόπος µάθησης pattern pattern pattern ίκτυο mlprsnns261lr01b mlprsnns2101lr01b mlprsnns2151lr01b Αρχιτεκτονική Ρυθµός µάθησης Τρόπος µάθησης batch batch batch ίκτυο mlprsnns261lr02b mlprsnns2101lr02b mlprsnns2151lr02b Αρχιτεκτονική Ρυθµός µάθησης Τρόπος µάθησης batch batch batch ίκτυο mlprsnns261lr09b mlprsnns2101lr09b mlprsnns2151lr09b Αρχιτεκτονική Ρυθµός µάθησης Τρόπος µάθησης batch batch batch Πίνακας 4.15: ίκτυα MLP για το πρόβληµα ταξινόµησης 2 classes - 9 groups στην R µε το πακέτο RSNNS mlprsnns261lr01 mlprsnns2101lr01 mlprsnns2151lr mlprsnns261lr02 mlprsnns2101lr02 mlprsnns2151lr mlprsnns261lr09 mlprsnns2101lr09 mlprsnns2151lr mlprsnns261lr01b mlprsnns2101lr01b mlprsnns2151lr01b mlprsnns261lr02b mlprsnns2101lr02b mlprsnns2151lr02b mlprsnns261lr09b mlprsnns2101lr09b mlprsnns2151lr09b Πίνακας 4.16: Μέσος χρόνος εκπαίδευσης των MLP δικτύων µε το πακέτο RSNNS. Πίνακες 4.17 έως Οι στήλες παραθέτουν τις κλάσεις ανά αύξοντα αριθµό, σύµφωνα µε το µέσο ποσοστό επιτυχίας. ηλαδή η πρώτη στήλη περιέχει την κλάση της οποίας τα δίκτυα παρουσιάζουν τα µικρότερα ποσοστά επιτυχίας, ενώ η τελευταία περιέχει την κλάση της οποίας τα δίκτυα παρουσιάζουν τα µεγαλύτερα ποσοστά επιτυχίας.
136 4.1 Ταξινόµηση προτύπων 117 Σχήµα 4.22: Μέσο ποσοστό επιτυχίας για τα δίκτυα MLP του πακέτου RSNNS. Tukey test ίκτυο Κλάση 1 έως 5 mlp261gdalr09 Χ mlp261gdalr01 Χ mlp261gdalr02 Χ mlp2101gdalr09 Χ mlp2101gdalr01 Χ Χ mlp2101gdalr02 Χ Χ mlp2151gdalr09 Χ Χ Χ mlp2151gdalr02 Χ Χ Χ mlp2151gdalr01 Χ Χ mlp261bfg Χ Χ mlp2101bfg Χ mlp261lm Χ mlp2151bfg Χ mlp2101lm Χ mlp2151lm Χ Πίνακας 4.17: Ταξινόµηση δικτύων MLP (MATLAB) ανά απόδοση. Στα δίκτυα MLP που δηµιουργήθηκαν και εκτελέστηκαν οι επαναλήψεις τους στο MA- TLAB, παρατηρούµε σύµφωνα µε τον Πίνακα 4.17, ότι ανεξαρτήτως της αρχιτεκτονικής που χρησιµοποιήθηκε, τα δίκτυα που εκπαιδεύτηκαν µέσω των αλγορίθµων trainlm και trainbfg είχαν καλύτερη απόδοση από αυτά που εκπαιδεύτηκαν µέσω του αλγορίθµου traingda. Επίσης, τα δίκτυα µε αρχιτεκτονική και αλγόριθµο εκπαίδευσης τον traingda, ανε-
137 118 Εφαρµογές ΤΝ ξαρτήτως της αρχικής τιµής του ϱυθµού µάθησης, παρουσιάζουν καλύτερα αποτελέσµατα από τα υπόλοιπα δίκτυα που εκπαιδεύτηκαν επίσης µέσω του αλγορίθµου traingda. Tukey test ίκτυο Κλάση 1 έως 7 rbfg01s1 Χ rbfg01s075 Χ rbfg01s5 Χ rbfg01s025 Χ rbfg01s01 Χ rbfg01s0001 Χ rbfg01s001 Χ rbfg001s075 Χ rbfg001s025 Χ Χ rbfg001s05 Χ Χ rbfg001s1 Χ Χ rbfg001s01 Χ Χ rbfg0s0001 Χ rbfg0s001 Χ rbfg0s01 Χ rbfg0s025 Χ rbfg0s05 Χ rbfg0s075 Χ rbfg0s1 Χ rbfg0001s0001 Χ rbfg0001s001 Χ rbfg0001s01 Χ rbfg0001s025 Χ rbfg0001s05 Χ rbfg0001s075 Χ rbfg0001s1 Χ rbfg001s0001 Χ rbfg001s001 Χ Πίνακας 4.18: Ταξινόµηση δικτύων RBF (MATLAB) ανά απόδοση. Για τα δίκτυα RBF που δηµιουργήθηκαν στο MATLAB παρατηρούµε ότι (Πίνακας 4.18) αυτά στα οποία το κατώφλι για το στόχο ήταν 0 και 0.001, παρουσίασαν γενικά καλύτερες επιδόσεις από αυτά µε τιµές 0.01 και 0 για το κατώφλι του στόχου. Στα PNN δίκτυα που δηµιουργήθηκαν στο MATLAB (Πίνακας 4.19), παρατηρήθηκαν τα χαµηλότερα ποσοστά επιτυχίας στα δίκτυα που η διασπορά ήταν 1 και 0.75 ενώ οι διαφορές στα µέσα ποσοστά επιτυχίας για τα δίκτυα µε διασπορές 0.1, 0.01, 0.001, 0.5 και 0.25 ήταν πολύ µικρές. Οι µηχανές διανυσµατικής υποστήριξης παρουσιάζουν (Πίνακας 4.20) σηµαντικές δια- ϕορές στις επιδόσεις τους ανάλογα µε το είδος του πυρήνα. Οι SVM µε γραµµικούς και πολυωνυµικούς πυρήνες είναι πολύ πιο αναποτελεσµατικές στην ταξινόµηση του συγκεκρι- µένου συνόλου δεδοµένων, σε σχέση µε αυτές που έχουν πυρήνες ακτινικής ϐάσης. Οταν χρησιµοποιείται κανονικοποίηση των δεδοµένων παρουσιάζονται οριακά καλύτερα αποτελέσµατα σε σχέση µε τη µη χρησιµοποίησή της. Για τα δίκτυα του πακέτου RSNNS (Πίνακας 4.21) δε µπορούµε να ϐγάλουµε ασφαλή
138 4.1 Ταξινόµηση προτύπων 119 Tukey test ίκτυο Κλάση 1 έως 3 pnns1 pnns075 pnns05 pnns0001 pnns001 pnns01 pnns025 Χ Χ Χ Χ Χ Χ Χ Πίνακας 4.19: Ταξινόµηση δικτύων PNN (MATLAB) ανά απόδοση. Tukey test ίκτυο Κλάση 1 έως 3 CVSVMModel2 CVSVMModelb2 CVSVMModelb3 CVSVMModel3 CVSVMModel1 CVSVMModelb1 Χ Χ Χ Χ Χ Χ Πίνακας 4.20: Ταξινόµηση δικτύων SVM (MATLAB) ανά απόδοση. Tukey test ίκτυο Κλάση 1 έως 6 mlprsnns261lr01b Χ mlprsnns2101lr01b Χ mlprsnns2151lr01b Χ Χ mlprsnns2151lr09 Χ mlprsnns261lr02b Χ mlprsnns2101lr09 Χ mlprsnns261lr09 Χ mlprsnns2101lr02b Χ mlprsnns2151lr02b Χ mlprsnns2151lr09b Χ mlprsnns2151lr02 Χ mlprsnns2101lr02 Χ Χ mlprsnns261lr01 Χ Χ mlprsnns261lr02 Χ mlprsnns2151lr01 Χ mlprsnns261lr09b Χ mlprsnns2101lr09b Χ mlprsnns2101lr01 Χ Πίνακας 4.21: Ταξινόµηση δικτύων πακέτου RSNNS ανά απόδοση. συµπεράσµατα ως προς την καλύτερη αρχιτεκτονική ή την καλύτερη τιµή του ϱυθµού µάθησης αφού στην κλάση µε τα καλύτερα µέσα ποσοστά επιτυχίας ανήκουν δίκτυα όλων των
139 120 Εφαρµογές ΤΝ ελεγχόµενων αρχιτεκτονικών και τιµών ϱυθµού µάθησης. Επίσης δε µπορούµε να συµπε- ϱάνουµε αν ο καλύτερος τρόπος µάθησης είναι ανά εποχή ή ανά πρότυπο. Tukey test ίκτυο Κλάση 1 έως 4 neu2151lr01 Χ neu2151lr09 Χ Χ neu2151lr02 Χ Χ Χ neu2101lr01 Χ Χ Χ Χ neu2101lr02 Χ Χ Χ Χ neu261lr01 Χ Χ Χ neu2101lr09 Χ Χ neu261lr02 Χ neu261lr09 Χ Πίνακας 4.22: Ταξινόµηση δικτύων πακέτου neuralnet ανά απόδοση. Τα αποτελέσµατα για τα δίκτυα του πακέτου neuralnet (Πίνακας 4.22) δείχνουν πως δεν υπάρχουν σηµαντικές διαφορές µεταξύ τους. Η παρατήρηση αυτή ενισχύεται από το γεγονός ότι υπάρχουν πολλά δίκτυα που ανήκουν σε δύο ή παραπάνω κλάσεις ισοδύναµης απόδοσης. Επίσης η χρήση τους παρουσιάζει την ιδιαιτερότητα, ότι όταν συγκλίνουν στο ϐέλτιστο, παρουσιάζουν πάρα πολύ καλά ποσοστά επιτυχίας στο σύνολο ελέγχου, ενώ όταν δεν επιτυγχάνεται σύγκλιση έχουν κάκιστα ποσοστά επιτυχίας στην ταξινόµηση των δεδοµένων. Το ϕαινόµενο αυτό δεν παρατηρήθηκε στα δίκτυα MLP που εκπαιδεύτηκαν στο MATLAB. Ακόµα και σε περιπτώσεις που δεν συνέκλιναν στο ϐέλτιστο, τα ποσοστά επιτυχούς ταξινόµησης του συνόλου ελέγχου ήταν εξίσου καλά µε τις περιπτώσεις όπου τα δίκτυα συνέκλιναν. Tukey test ίκτυο Κλάση 1 και 2 nnet2101 nnet261 nnet2151 Χ Χ Χ Πίνακας 4.23: Ταξινόµηση δικτύων πακέτου nnet ανά απόδοση. Σύµφωνα µε τον Πίνακα 4.23, τα δίκτυα του πακέτου nnet παρουσίασαν τα καλύτερα αποτελέσµατα όταν η αρχιτεκτονική ήταν Tukey test ίκτυο Κλάση 1 έως 3 Rpnns1 Rpnns075 Rpnns05 Rpnns01 Rpnns001 Rpnns025 Χ Χ Χ Χ Χ Χ Πίνακας 4.24: Ταξινόµηση δικτύων πακέτου pnn ανά απόδοση. Τα δίκτυα PNN (Πίνακας 4.24) που δηµιουργήθηκαν µέσω του πακέτου pnn και είχαν
140 4.1 Ταξινόµηση προτύπων 121 διασπορά 0.1, 0.01, 0.25 και 0.5 παρουσιάζουν καλύτερα ποσοστά επιτυχίας σε σχέση µε τα δίκτυα που η διασπορά ήταν 0.75 και 1. Τα κακά αποτελέσµατα ταξινόµησης όταν η διασπορά είναι 1 οφείλονται στη ϕύση του προβλήµατος διότι τα πρότυπα από διαφορετικές κλάσεις, σε πολλές περιπτώσεις, είναι πολύ κοντά µεταξύ τους. Tukey test ίκτυο Κλάση 1 έως 9 svmlint Χ svmlinf Χ svmrbf025t Χ svmrbf0001t Χ Χ svmsigt Χ svmsigf Χ svmpolt Χ Χ svmpolf Χ svmrbf001t svmrbf01t svmrbff svmrbft svmrbf1t svmrbf075t Χ Χ Χ Χ Χ Χ Πίνακας 4.25: Ταξινόµηση δικτύων πακέτου e1071 ανά απόδοση. Πρέπει να επισηµάνουµε ότι όταν χρησιµοποιήσαµε το πακέτο e1071 (Πίνακας 4.25), παρατηρήθηκε, όπως και στις µηχανές διανυσµατικής υποστήριξης που υλοποιήθηκαν στο MATLAB, ότι ο πιο ενδεδειγµένος τύπος πυρήνα για την ταξινόµηση του συγκεκριµένου συνόλου δεδοµένων ήταν ο πυρήνας ακτινικής ϐάσης. Επιπλέον παρατηρούµε πως οι τιµές κοντά στο 1 για την παράµετρο gamma 4.2, που χρησιµοποειείται στον πυρήνα ακτινικής ϐάσης, παρουσιάζουν καλύτερα ποσοστά επιτυχούς ταξινόµησης απ όταν οι τιµές είναι κοντά στο 0. K(u, v) = exp( gamma u v 2 ) (4.2) Οπου u, v δύο διανύσµατα χαρακτηριστικών που αντιστοιχούν στα πρότυπα εισόδου. Τέλος για να ϐρούµε το καλύτερο δίκτυο από άποψη ποσοστού επιτυχούς ταξινόµησης, επιλέξαµε από κάθε οµάδα έναν αντιπρόσωπο από την κλάση που παρουσίασε τα µεγαλύτερα µέσα ποσοστά επιτυχίας προκειµένου να συγκριθούν µεταξύ τους. ιαπιστώθηκε ότι έχουν διαφορές µεταξύ τους και η ταξινόµηση τους ανά κλάση παρουσιάζεται στον Πίνακα Οι αντιπρόσωποι που επιλέχθηκαν είναι οι ακόλουθοι και στο Σχήµα 4.23 παρουσιάζεται το µέσο ποσοστό επιτυχίας τους. 1. mlp2151lm: δίκτυο MLP που υλοποιήθηκε στο περιβάλλον MATLAB (Πίνακας 4.17) 2. pnns025: δίκτυο PNN που υλοποιήθηκε στο περιβάλλον MATLAB (Πίνακας 4.19) 3. rbfg001s001: δίκτυο RBF που υλοποιήθηκε στο περιβάλλον MATLAB (Πίνακας 4.18) 4. CSVMModelb1: µηχανή SVM που υλοποιήθηκε στο περιβάλλον MATLAB (Πίνακας 4.20) 5. mlprsnns2101lr01: δίκτυο MLP που υλοποιήθηκε µέσω του πακέτου RSNNS στο περιβάλλον Rstudio (Πίνακας 4.21)
141 122 Εφαρµογές ΤΝ 6. neu261lr09: δίκτυο MLP που υλοποιήθηκε µέσω του πακέτου neuralnet στο περιβάλλον Rstudio (Πίνακας 4.22) 7. nnet2151: δίκτυο MLP που υλοποιήθηκε µέσω του πακέτου nnet στο περιβάλλον Rstudio (Πίνακας 4.23) 8. Rpnns025: δίκτυο PNN που υλοποιήθηκε µέσω του πακέτου pnn στο περιβάλλον Rstudio (Πίνακας 4.24) 9. svmrbf075t: µηχανή SVM που υλοποιήθηκε µέσω του πακέτου e1071 στο περιβάλλον Rstudio (Πίνακας 4.25) Tukey test ίκτυο Κλάση 1 έως 3 neu261lr09 mlrsnns2101lr01 nnet2151 Rpnns025 CSVMModelb1 mlp2151lm svmrbf075t rbfg001s001 pnns025 Χ Χ Χ Χ Χ Χ Χ Χ Χ Πίνακας 4.26: Ταξινόµηση των αντιπροσώπων κάθε οµάδας δικτύου ανά απόδοση. Σχήµα 4.23: Μέσο ποσοστό επιτυχίας αντιπροσώπων Σαν γενικό συµπέρασµα, µπορούµε να καταλήξουµε πως ο πιο ενδεδειγµένος τύπος νευρωνικού δικτύου για το συγκεκριµένο πρόβληµα είναι τα δίκτυα PNN και αυτό διότι
Τεχνητά Νευρωνικά Δίκτυα. Τσιριγώτης Γεώργιος Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Ανατολικής Μακεδονίας & Θράκης
Τεχνητά Τσιριγώτης Γεώργιος Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Ανατολικής Μακεδονίας & Θράκης Ο Βιολογικός Νευρώνας Δενδρίτες Συνάψεις Πυρήνας (Σώμα) Άξονας 2 Ο Βιολογικός Νευρώνας 3 Βασικά Χαρακτηριστικά
Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων
Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron Βιολογικός Νευρώνας Δενδρίτες, που αποτελούν τις γραμμές εισόδου των ερεθισμάτων (βιολογικών σημάτων) Σώμα, στο οποίο γίνεται η συσσώρευση των ερεθισμάτων και
ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ
ΤΕΙ Δυτικής Μακεδονίας ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ 2015-2016 Τεχνητή Νοημοσύνη Νευρώνας Perceptron Διδάσκων: Τσίπουρας Μάρκος Εκπαιδευτικό Υλικό: Τσίπουρας Μάρκος Τζώρτζης Γρηγόρης Περιεχόμενα Εισαγωγή
Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων
Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων Εισηγητής: ρ Ηλίας Ζαφειρόπουλος Εισαγωγή Ιατρικά δεδοµένα: Συλλογή Οργάνωση Αξιοποίηση Data Mining ιαχείριση εδοµένων Εκπαίδευση
Τεχνητή Νοημοσύνη. TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ. Εξάμηνο 5ο Οικονόμου Παναγιώτης & Ελπινίκη Παπαγεωργίου. Νευρωνικά Δίκτυα.
Τεχνητή Νοημοσύνη. TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ Εξάμηνο 5ο Οικονόμου Παναγιώτης & Ελπινίκη Παπαγεωργίου. Νευρωνικά Δίκτυα. 1 ΤΕΧΝΗΤΑ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Χαρακτηριστικά Είδη εκπαίδευσης Δίκτυα
4.3. Γραµµικοί ταξινοµητές
Γραµµικοί ταξινοµητές Γραµµικός ταξινοµητής είναι ένα σύστηµα ταξινόµησης που χρησιµοποιεί γραµµικές διακριτικές συναρτήσεις Οι ταξινοµητές αυτοί αναπαρίστανται συχνά µε οµάδες κόµβων εντός των οποίων
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 26 Ιανουαρίου 2004 ιάρκεια: 2 ώρες (9:00-:00) Στην παρακάτω
Το μοντέλο Perceptron
Το μοντέλο Perceptron Αποτελείται από έναν μόνο νευρώνα McCulloch-Pitts w j x x 1, x2,..., w x T 1 1 x 2 w 2 Σ u x n f(u) Άνυσμα Εισόδου s i x j x n w n -θ w w 1, w2,..., w n T Άνυσμα Βαρών 1 Το μοντέλο
Το Πολυεπίπεδο Perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων
Το Πολυ Perceptron Δίκτυα Πρόσθιας Τροφοδότησης (feedforward) Tο αντίστοιχο γράφημα του δικτύου δεν περιλαμβάνει κύκλους: δεν υπάρχει δηλαδή ανατροφοδότηση της εξόδου ενός νευρώνα προς τους νευρώνες από
4. Ο αισθητήρας (perceptron)
4. Ο αισθητήρας (perceptron) Σκοπός: Προσδοκώµενα αποτελέσµατα: Λέξεις Κλειδιά: To µοντέλο του αισθητήρα (perceptron) είναι από τα πρώτα µοντέλα νευρωνικών δικτύων που αναπτύχθηκαν, και έδωσαν µεγάλη ώθηση
ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ. Καραγιώργου Σοφία
ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Καραγιώργου Σοφία Εισαγωγή Προσομοιώνει βιολογικές διεργασίες (π.χ. λειτουργία του εγκεφάλου, διαδικασία
Μοντέλο Perceptron πολλών στρωμάτων Multi Layer Perceptron (MLP)
Μοντέλο Perceptron πολλών στρωμάτων Multi Layer Perceptron (MLP) x -0,5 a x x 2 0 0 0 0 - -0,5 y y 0 0 x 2 -,5 a 2 θ η τιμή κατωφλίου Μία λύση του προβλήματος XOR Multi Layer Perceptron (MLP) x -0,5 Μία
οµή δικτύου ΣΧΗΜΑ 8.1
8. ίκτυα Kohonen Το µοντέλο αυτό των δικτύων προτάθηκε το 1984 από τον Kοhonen, και αφορά διαδικασία εκµάθησης χωρίς επίβλεψη, δηλαδή δεν δίδεται καµία εξωτερική επέµβαση σχετικά µε τους στόχους που πρέπει
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο 2.5 µονάδες ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 2 Οκτωβρίου 23 ιάρκεια: 2 ώρες Έστω το παρακάτω γραµµικώς
ΕΡΩΤΗΜΑΤΑ σε ΝΕΥΡΩΝΙΚΑ
ηµήτρης Ψούνης ΠΛΗ3, Απαντήσεις Quiz σε ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΕΡΩΤΗΜΑΤΑ σε ΝΕΥΡΩΝΙΚΑ Μάθηµα 3. ΕΡΩΤΗΜΑ Ένας αισθητήρας µπορεί να µάθει: a. εδοµένα που ανήκουν σε 5 διαφορετικές κλάσεις. b. εδοµένα που ανήκουν
Πληροφοριακά Συστήματα & Περιβάλλον
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Πληροφοριακά Συστήματα & Περιβάλλον Ενότητα 8: Τεχνητά Νευρωνικά Δίκτυα Παναγιώτης Λεφάκης Δασολογίας & Φυσικού Περιβάλλοντος Άδειες Χρήσης
Μη Συµβολικές Μέθοδοι
Μη Συµβολικές Μέθοδοι! Η Συµβολική (symbolic AI): # Προσοµοιώνει τον τρόπο σκέψης του ανθρώπου, χρησιµοποιώντας ως δοµικές µονάδες τα σύµβολα. # Ένα σύµβολο µπορεί να αναπαριστά µία έννοια ή µία σχέση
ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #12: Εισαγωγή στα Nευρωνικά Δίκτυα. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε.
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ Ενότητα #12: Εισαγωγή στα Nευρωνικά Δίκτυα Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες Χρήσης Το
Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο
Πρόβλημα ο Ασκήσεις Φροντιστηρίου 5 o Φροντιστήριο Δίνεται το παρακάτω σύνολο εκπαίδευσης: # Είσοδος Κατηγορία 0 0 0 Α 2 0 0 Α 0 Β 4 0 0 Α 5 0 Β 6 0 0 Α 7 0 Β 8 Β α) Στον παρακάτω κύβο τοποθετείστε τα
Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή
Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΜΥ 795: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ Ακαδηµαϊκό έτος 2010-11 Χειµερινό Εξάµηνο Τελική εξέταση Τρίτη, 21 εκεµβρίου 2010,
Α. ΤΕΙ ΚΡΗΤΗΣ Τµήµα Εφαρµοσµένης Πληροφορικής και Πολυµέσων Εργαστήριο Νευρωνικών Δικτύων
Α. ΤΕΙ ΚΡΗΤΗΣ Τµήµα Εφαρµοσµένης Πληροφορικής και Πολυµέσων Εργαστήριο Νευρωνικών Δικτύων 5 BACKPROPAGATION MULTILAYER FEEDFORWARD ΔΙΚΤΥΑ Α. ΕΙΣΑΓΩΓΗ Τα νευρωνικά δίκτυα που εξετάσαµε µέχρι τώρα είχαν
ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ
ΘΕΜΑ ο (.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις Πέµπτη 7 Ιανουαρίου 8 5:-8: Σχεδιάστε έναν αισθητήρα (perceptron)
J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου
J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΜΣΕ ΣΤΗΝ ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΚΑΙ ΕΞΕΛΙΚΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΜΣΕ ΣΤΗΝ ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΚΑΙ ΕΞΕΛΙΚΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΟΜΑ Α ΑΣΚΗΣΕΩΝ ΑΣΚΗΣΗ Στην εικόνα παρακάτω φαίνεται ένα νευρωνικό
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις Παρασκευή 9 Ιανουαρίου 2007 5:00-8:00 εδοµένου ότι η
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο 2.5 µονάδες ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 2 Σεπτεµβρίου 2005 5:00-8:00 Σχεδιάστε έναν αισθητήρα ercetro
Τεχνητή Νοημοσύνη. 19η διάλεξη ( ) Ίων Ανδρουτσόπουλος.
Τεχνητή Νοημοσύνη 19η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτές βασίζονται σε ύλη των βιβλίων: Artificia Inteigence A Modern Approach των S. Russe και P.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ 1 ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 21 Σεπτεµβρίου 2004 ιάρκεια: 3 ώρες Το παρακάτω σύνολο
ΔΙΚΤΥO RBF. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων
ΔΙΚΤΥO RBF Αρχιτεκτονική δικτύου RBF Δίκτυα RBF: δίκτυα συναρτήσεων πυρήνα (radial basis function networks). Πρόσθιας τροφοδότησης (feedforward) για προβλήματα μάθησης με επίβλεψη. Εναλλακτικό του MLP.
Κεφάλαιο 1 ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΝΕΥΡΟΦΥΣΙΟΛΟΓΙΑΣ
Κεφάλαιο 1 ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΝΕΥΡΟΦΥΣΙΟΛΟΓΙΑΣ 1.1. Εισαγωγή Ο ζωντανός οργανισµός έχει την ικανότητα να αντιδρά σε µεταβολές που συµβαίνουν στο περιβάλλον και στο εσωτερικό του. Οι µεταβολές αυτές ονοµάζονται
Εκπαίδευση Τεχνητών Νευρωνικών ικτύων ανά Πρότυπο Εισόδου
Εκπαίδευση Τεχνητών Νευρωνικών ικτύων ανά Πρότυπο Εισόδου ΑΜΑΛΙΑ ΠΑΠΑΝΙΚΟΛΑΟΥ Υπεύθυνος Πλαγιανάκος Βασίλειος Επίκουρος Καθηγητής Λαµία, 2008 Ευχαριστίες Θα ήθελα καταρχήν να ευχαριστήσω τον καθηγητή
Κεφάλαιο 10 ο Υποπρογράµµατα
Κεφάλαιο 10 ο Υποπρογράµµατα Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Η αντιµετώπιση των σύνθετων προβληµάτων και η ανάπτυξη των αντίστοιχων προγραµµάτων µπορεί να γίνει µε την ιεραρχική σχεδίαση,
ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση
ΚΕΦΑΛΑΙΟ 18 18 Μηχανική Μάθηση Ένα φυσικό ή τεχνητό σύστηµα επεξεργασίας πληροφορίας συµπεριλαµβανοµένων εκείνων µε δυνατότητες αντίληψης, µάθησης, συλλογισµού, λήψης απόφασης, επικοινωνίας και δράσης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο 2.5 µονάδες ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 7 Ιανουαρίου 2005 ιάρκεια εξέτασης: 5:00-8:00 Έστω ότι
Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 15/1/2008
Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 5//008 Πρόβληµα ο Στα παρακάτω ερωτήµατα επισηµαίνουµε ότι perceptron είναι ένας νευρώνας και υποθέτουµε, όπου χρειάζεται, τη χρήση δικτύων
Μάθηση και Γενίκευση. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων
Μάθηση και Γενίκευση Το Πολυεπίπεδο Perceptron (MultiLayer Perceptron (MLP)) Έστω σύνολο εκπαίδευσης D={(x n,t n )}, n=1,,n. x n =(x n1,, x nd ) T, t n =(t n1,, t np ) T Θα πρέπει το MLP να έχει d νευρώνες
Εισαγωγή στα Τεχνητά Νευρωνικά Δίκτυα. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων
Εισαγωγή στα Τεχνητά Νευρωνικά Δίκτυα Τεχνητή Νοημοσύνη (Artificial Intelligence) Ανάπτυξη μεθόδων και τεχνολογιών για την επίλυση προβλημάτων στα οποία ο άνθρωπος υπερέχει (?) του υπολογιστή Συλλογισμοί
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ 1 ο (2,5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις Πέµπτη 19 Ιουνίου 2008 11:00-14:00 Έστω το παρακάτω
PROJECT ΣΤΟ ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟ ΟΥΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ PROJECT ΣΤΟ ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟ ΟΥΣ ΜΕΡΟΣ ΤΡΙΤΟ Πολίτη Όλγα Α.Μ. 4528 Εξάµηνο 8ο Υπεύθυνος Καθηγητής Λυκοθανάσης
Τεχνητή Νοημοσύνη. 18η διάλεξη ( ) Ίων Ανδρουτσόπουλος.
Τεχνητή Νοημοσύνη 18η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται: στο βιβλίο Machine Learning του T. Mitchell, McGraw- Hill, 1997,
Νευρωνικά ίκτυα και Εξελικτικός. Σηµερινό Μάθηµα. επανάληψη Γενετικών Αλγορίθµων 1 η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές
Νευρωνικά ίκτυα και Εξελικτικός Προγραµµατισµός Σηµερινό Μάθηµα επανάληψη Γενετικών Αλγορίθµων η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές Κωδικοποίηση Αντικειµενική Συνάρτ Αρχικοποίηση Αξιολόγηση
3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPTRON
3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPRON 3. ΕΙΣΑΓΩΓΗ: Το Perceptron είναι η απλούστερη μορφή Νευρωνικού δικτύου, το οποίο χρησιμοποιείται για την ταξινόμηση ενός ειδικού τύπου προτύπων, που είναι γραμμικά διαχωριζόμενα.
Πληροφορική 2. Τεχνητή νοημοσύνη
Πληροφορική 2 Τεχνητή νοημοσύνη 1 2 Τι είναι τεχνητή νοημοσύνη; Τεχνητή νοημοσύνη (AI=Artificial Intelligence) είναι η μελέτη προγραμματισμένων συστημάτων τα οποία μπορούν να προσομοιώνουν μέχρι κάποιο
Μη γραµµικοί ταξινοµητές Νευρωνικά ίκτυα
KEΣ 3 Αναγνώριση Προτύπων και Ανάλυση Εικόνας Μη γραµµικοί ταξινοµητές Νευρωνικά ίκτυα ΤµήµαΕπιστήµης και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου Εισαγωγή Πολυεπίπεδες Perceptron Οαλγόριθµος
Α.Τ.ΕΙ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΟΛΥΜΕΣΩΝ. ΕΡΓΑΣΤΗΡΙΟ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ
Α.Τ.ΕΙ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΟΛΥΜΕΣΩΝ. ΕΡΓΑΣΤΗΡΙΟ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΕΚΜΑΘΗΣΗ ΤΑ ΔΙΚΤΥΑ KOHONEN A. ΕΙΣΑΓΩΓΗ Στα προβλήματα που έχουμε αντιμετωπίσει μέχρι τώρα
ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΜΑΘΗΣΗ ΔΙΚΤΥA LVQ και SOM. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων
ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΜΑΘΗΣΗ ΔΙΚΤΥA LVQ και SOM Μάθηση χωρίς επίβλεψη (unsupervised learning) Σύνολο εκπαίδευσης D={(x n )}, n=1,,n. x n =(x n1,, x nd ) T, δεν υπάρχουν τιμές-στόχοι t n. Προβλήματα μάθησης χωρίς
PROJECT ΣΤΟ ΜΑΘΗΜΑ "ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟΔΟΥΣ"
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ PROJECT ΣΤΟ ΜΑΘΗΜΑ "ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟΔΟΥΣ" ΜΕΡΟΣ ΤΡΙΤΟ Υπεύθυνος Καθηγητής Λυκοθανάσης Σπυρίδων Ακαδημαικό Έτος: 2011-2012
Ανδρέας Παπαζώης. Τμ. Διοίκησης Επιχειρήσεων
Ανδρέας Παπαζώης Τμ. Διοίκησης Επιχειρήσεων Περιεχόμενα Εργ. Μαθήματος Εκπαίδευση (μάθηση) Νευρωνικών Δικτύων Απλός αισθητήρας Παράδειγμα εκπαίδευσης Θέματα υλοποίησης Νευρωνικών Δικτύων 2/17 Διαδικασία
Υπολογιστική Νοημοσύνη. Μάθημα 4: Μάθηση στον απλό τεχνητό νευρώνα (2)
Υπολογιστική Νοημοσύνη Μάθημα 4: Μάθηση στον απλό τεχνητό νευρώνα (2) Ο κανόνας Δέλτα για συνεχείς συναρτήσεις ενεργοποίησης (1/2) Για συνεχείς συναρτήσεις ενεργοποίησης, θα θέλαμε να αλλάξουμε περισσότερο
Γραµµικοί Ταξινοµητές
ΚΕΣ 3: Αναγνώριση Προτύπων και Ανάλυση Εικόνας KEΣ 3 Αναγνώριση Προτύπων και Ανάλυση Εικόνας Γραµµικοί Ταξινοµητές ΤµήµαΕπιστήµης και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου 7 Ncolas sapatsouls
Υπολογιστικό Πρόβληµα
Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις
Υπολογιστική Νοημοσύνη. Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks
Υπολογιστική Νοημοσύνη Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks Γενικά Ένα νευρωνικό δίκτυο λέγεται αναδρομικό, εάν υπάρχει έστω και μια σύνδεση από έναν νευρώνα επιπέδου i προς έναν νευρώνα επιπέδου
Ανδρέας Παπαζώης. Τμ. Διοίκησης Επιχειρήσεων
Ανδρέας Παπαζώης Τμ. Διοίκησης Επιχειρήσεων Περιεχόμενα Εργ. Μαθήματος Βιολογικά Νευρωνικά Δίκτυα Η έννοια των Τεχνητών Νευρωνικών Δικτύων Η δομή ενός νευρώνα Διαδικασία εκπαίδευσης Παραδείγματα απλών
HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 15-16
HMY 795: Αναγνώριση Προτύπων Διαλέξεις 15-16 Νευρωνικά Δίκτυα(Neural Networks) Fisher s linear discriminant: Μείωση διαστάσεων (dimensionality reduction) y Τ =w x s + s =w S w 2 2 Τ 1 2 W ( ) 2 2 ( ) m2
ιπλωµατική εργασία ΤΕΧΝΗΤΑ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΣΤΟΝ ΠΑΡΑΜΕΤΡΙΚΟ ΣΧΕ ΙΑΣΜΟ TAGUCHI
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Εφαρµοσµένων Μαθηµατικών Και Φυσικών Επιστηµών ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών «Μαθηµατική προτυποποίηση στις Σύγχρονες Τεχνολογίες και την Οικονοµία» ιπλωµατική
Πληροφοριακά Συστήματα Διοίκησης
Πληροφοριακά Συστήματα Διοίκησης Τρεις αλγόριθμοι μηχανικής μάθησης ΠΜΣ Λογιστική Χρηματοοικονομική και Διοικητική Επιστήμη ΤΕΙ Ηπείρου @ 2018 Μηχανική μάθηση αναγνώριση προτύπων Η αναγνώριση προτύπων
Ασκήσεις μελέτης της 19 ης διάλεξης
Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 19 ης διάλεξης 19.1. Δείξτε ότι το Perceptron με (α) συνάρτηση ενεργοποίησης
Αναγνώριση Προτύπων Ι
Αναγνώριση Προτύπων Ι Ενότητα 1: Μέθοδοι Αναγνώρισης Προτύπων Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο (.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις Τετάρτη Ιουνίου 7 :-4: Κατασκευάστε έναν αισθητήρα (perceptron)
Α. Ερωτήσεις Ανάπτυξης
οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;
Εισαγωγικά για την αναγνώριση έκφρασης προσώπου (Facial Expression Recognition)
Ο στόχος της διπλωματικής είναι η αναγνώριση του συναισθήματος ενός συγκεκριμένου ανθρώπου από μια αλληλουχία εικόνων στις οποίες παίρνει διάφορες εκφράσεις. Αυτό θα γίνει κάνοντας χρήση τεχνικών βαθιάς
Περίληψη ιπλωµατικής Εργασίας
Περίληψη ιπλωµατικής Εργασίας Θέµα: Εναλλακτικές Τεχνικές Εντοπισµού Θέσης Όνοµα: Κατερίνα Σπόντου Επιβλέπων: Ιωάννης Βασιλείου Συν-επιβλέπων: Σπύρος Αθανασίου 1. Αντικείµενο της διπλωµατικής Ο εντοπισµός
Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 4 o Φροντιστήριο
Ασκήσεις Φροντιστηρίου 4 o Φροντιστήριο Πρόβλημα 1 ο Ο πίνακας συσχέτισης R x του διανύσματος εισόδου x( στον LMS αλγόριθμο 1 0.5 R x = ορίζεται ως: 0.5 1. Ορίστε το διάστημα των τιμών της παραμέτρου μάθησης
Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν.
Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης Ελαχιστοποίηση συνάρτησης σφάλματος Εκπαίδευση ΤΝΔ: μπορεί να διατυπωθεί ως πρόβλημα ελαχιστοποίησης μιας συνάρτησης σφάλματος E(w)
Τεχνητή Νοημοσύνη. 17η διάλεξη ( ) Ίων Ανδρουτσόπουλος.
Τεχνητή Νοημοσύνη 17η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται: στο βιβλίο Artificia Inteigence A Modern Approach των S. Russe και
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ
Θ.Ε. ΠΛΗ31 (2004-5) ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ #3 Στόχος Στόχος αυτής της εργασίας είναι η απόκτηση δεξιοτήτων σε θέματα που αφορούν τα Τεχνητά Νευρωνικά Δίκτυα και ποιο συγκεκριμένα θέματα εκπαίδευσης και υλοποίησης.
Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2
Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Version 2 1 Άλλοι τύποι νευρωνικών δικτύων Αυτοοργανούμενοι χάρτες (Self-organizing maps - SOMs) Αναδρομικά νευρωνικά δίκτυα (Recurrent Neural Networks): γενικής
Μάθηση σε νέα τεχνολογικά περιβάλλοντα
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Μάθηση σε νέα τεχνολογικά περιβάλλοντα Ενότητα 10: Θεωρία Συνδεσιασμού Βασιλική Μητροπούλου-Μούρκα Άδειες Χρήσης Το παρόν εκπαιδευτικό
Το άθροισµα των εισερχόµενων σηµάτων είναι:
7. ίκτυα Hopfeld Σε µία πολύ γνωστή εργασία το 982 ο Hopfeld παρουσίασε µια νέα κατηγορία δικτύων, τα οποία έχουν µεγάλες υπολογιστικές ικανότητες και είναι χρήσιµα σε δύο κατηγορίες προβληµάτων. Πρώτα,
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ
ΘΕΜΑ ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 25 Αυγούστου 26 :-4: Κατασκευάστε έναν αισθητήρα (perceptron)
94 Η χρήση των νευρωνικών µοντέλων για την κατανόηση της δοµής και λειτουργίας τού εγκεφάλου. = l b. K + + I b. K - = α n
Nευροφυσιολογία Η μονάδα λειτουργίας του εγκεφάλου είναι ένας εξειδικευμένος τύπος κυττάρου που στη γλώσσα της Νευροφυσιολογίας ονομάζεται νευρώνας. Το ηλεκτρονικό μικροσκόπιο αποκαλύπτει ότι ο ειδικός
Εργασία στο µάθηµα Ανάλυση εδοµένων
Μεταπτυχιακό Υπολογιστικής Φυσικής Εργασία στο µάθηµα Ανάλυση εδοµένων ηµήτρης Κουγιουµτζής E-mail: dkugiu@auth.gr 30 Ιανουαρίου 2018 Οδηγίες : Σχετικά µε την παράδοση της εργασίας ϑα πρέπει : Το κείµενο
Μεθοδολογίες παρεµβολής σε DTM.
Μάθηµα : Αλγοριθµικές Βάσεις στη Γεωπληροφορική ιδάσκων : Συµεών Κατσουγιαννόπουλος Μεθοδολογίες παρεµβολής σε DTM.. Μέθοδοι παρεµβολής. Η παρεµβολή σε ψηφιακό µοντέλο εδάφους (DTM) είναι η διαδικασία
Ανάπτυξη και δηµιουργία µοντέλων προσοµοίωσης ροής και µεταφοράς µάζας υπογείων υδάτων σε καρστικούς υδροφορείς µε χρήση θεωρίας νευρωνικών δικτύων
Ανάπτυξη και δηµιουργία µοντέλων προσοµοίωσης ροής και µεταφοράς µάζας υπογείων υδάτων σε καρστικούς υδροφορείς µε χρήση θεωρίας νευρωνικών δικτύων Περίληψη ιδακτορικής ιατριβής Τριχακης Ιωάννης Εργαστήριο
Neural Networks: Neural Model
Neural Networks: Neural Model M.Sc in Bioinformatics and Neuroinformatics Recording and Processing of Brain Signal 2 nd Lecture Part 2 Antonia Plerou Φυσικός Νευρώνας Κυτταρικό σώμα: Περιλαμβάνει τον πυρήνα
Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη
Επιλογή και επανάληψη Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως, ότι στο
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ
ΘΕΜΑ 1 ο (2,5 μονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Τελικές εξετάσεις Πέμπτη 21 Ιουνίου 2012 16:30-19:30 Υποθέστε ότι θέλουμε
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 10 ΟΥ ΚΕΦΑΛΑΙΟΥ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ 1. Πως ορίζεται ο τμηματικός προγραμματισμός; Τμηματικός προγραμματισμός
Ο Βρόχος Ρύθµισης µε Ανατροφοδότηση
Ο Βρόχος Ρύθµισης µε Ανατροφοδότηση Ο Βρόχος Ανατροφοδότησης Στοιχεία ιεργασίας και Όργανα Μέτρησης ιατάξεις ιαγραµµάτων Βαθµίδας Μέτρα Απόδοσης Ρύθµισης Επιλογή Μεταβλητών Ρύθµισης 1 Ο βρόχος ανατροφοδότησης!
Α.Τ.Ε.Ι ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΕΡΓΑΣΤΗΡΙΟ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ. Σχήμα 1 Η λειτουργία του νευρώνα
Α.Τ.Ε.Ι ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΕΡΓΑΣΤΗΡΙΟ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ 1 Ο Νευρώνας Τα τεχνικά νευρωνικά δίκτυα αποτελούν μια προσπάθεια μαθηματικής προσομοίωσης της λειτουργίας του ανθρώπινου
Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο
Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Σύνοψη Στο κεφάλαιο αυτό παρουσιάζεται η ιδέα του συμπτωτικού πολυωνύμου, του πολυωνύμου, δηλαδή, που είναι του μικρότερου δυνατού βαθμού και που, για συγκεκριμένες,
Α. Έστω δύο σύνολα Α και Β. Ποιά διαδικασία ονομάζεται συνάρτηση με πεδίο ορισμού το Α και πεδίο τιμών το Β;
σελ 1 από 5 ΚΕΦΑΛΑΙΟ 1 Ο Α. Έστω δύο σύνολα Α και Β. Ποιά διαδικασία ονομάζεται συνάρτηση με πεδίο ορισμού το Α και πεδίο τιμών το Β; 1. Σ-Λ Η σχέση με:, είναι συνάρτηση. 2. Σ-Λ Η σχέση είναι συνάρτηση.
Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης
Μάθημα 4 ο Δρ. Ανέστης Γ. Χατζημιχαηλίδης Τμήμα Μηχανικών Πληροφορικής Τ.Ε. ΤΕΙ Ανατολικής Μακεδονίας και Θράκης 2016-2017 Διευρυμένη Υπολογιστική Νοημοσύνη (ΥΝ) Επεκτάσεις της Κλασικής ΥΝ. Μεθοδολογίες
Υπολογιστική Νοημοσύνη. Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning
Υπολογιστική Νοημοσύνη Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning Κεντρική ιδέα Τα παραδείγματα μάθησης παρουσιάζονται στο μηεκπαιδευμένο δίκτυο και υπολογίζονται οι έξοδοι. Για
Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων. Δρ. Ε. Χάρου
Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων Δρ. Ε. Χάρου Πρόγραμμα υπολογιστικής ευφυίας Ινστιτούτο Πληροφορικής & Τηλεπικοινωνιών ΕΚΕΦΕ ΔΗΜΟΚΡΙΤΟΣ exarou@iit.demokritos.gr Μηχανική
Νευρωνικά Δίκτυα στο Matlab
Νευρωνικά Δίκτυα στο Matlab Ρ202 Μηχανική Ευφυΐα (Machine Intelligence) Ευστάθιος Αντωνίου Τμήμα Μηχανικών Πληροφορικής Αλεξάνδρειο ΤΕΙ Θεσσαλονίκης E-mail: antoniou@itteithegr Πρόγραμμα Μεταπτυχιακών
Αναγνώριση Προτύπων Ι
Αναγνώριση Προτύπων Ι Ενότητα 3: Στοχαστικά Συστήματα Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
ΠΡΟΣΕΓΓΙΣΗ ΚΑΙ ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ ΜΙΑΣ ΔΙΑΣΤΑΣΗΣ ΜΕ ΣΥΝΔΥΑΣΜΟ MLP ΚΑΙ RBF ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ Η ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΞΕΙΔΙΚΕΥΣΗΣ.
ΠΡΟΣΕΓΓΙΣΗ ΚΑΙ ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ ΜΙΑΣ ΔΙΑΣΤΑΣΗΣ ΜΕ ΣΥΝΔΥΑΣΜΟ MLP ΚΑΙ RBF ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ Η ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΞΕΙΔΙΚΕΥΣΗΣ Υποβάλλεται στην ορισθείσα από την Γενική Συνέλευση Ειδικής Σύνθεσης
ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή
ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων 1.1. Εισαγωγή Γενικότερα δεν υπάρχει κάποια ταξινόμηση των πιθανών δικτύων κάτω από την οποία να ταιριάζουν όλα τα δίκτυα. Παρόλα αυτά η ταξινόμηση τους είθισται να γίνεται
Q 12. c 3 Q 23. h 12 + h 23 + h 31 = 0 (6)
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Πολιτικών Μηχανικών Τοµέας Υδατικών Πόρων Μάθηµα: Τυπικά Υδραυλικά Έργα Μέρος 2: ίκτυα διανοµής Άσκηση E0: Μαθηµατική διατύπωση µοντέλου επίλυσης απλού δικτύου διανοµής
ΜΑΘΗΜΑΤΙΚΑ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ
ΜΑΘΗΜΑΤΙΚΑ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ o Κεφάλαιο ΑΝΑΛΥΣΗ Ερωτήσεις του τύπου «Σωστό - Λάθος». * Η διαδικασία, µε την οποία κάθε στοιχείο ενός συνόλου Α αντιστοιχίζεται σ ένα ακριβώς στοιχείο
1. Η διαδικασία, με την οποία κάθε στοιχείο ενός συνόλου Α αντιστοιχίζεται σ ένα ακριβώς στοιχείο ενός άλλου συνόλου Β είναι συνάρτηση.
Μαθηματικά Γενικής Παιδείας Ανάλυση o Κεφάλαιο ΑΝΑΛΥΣΗ Ερωτήσεις του τύπου «Σωστό - Λάθος». Η διαδικασία, με την οποία κάθε στοιχείο ενός συνόλου Α αντιστοιχίζεται σ ένα ακριβώς στοιχείο ενός άλλου συνόλου
ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. 5 Μαίου 2012
ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική 5 Μαίου 2012 Συµπληρώστε τα στοιχεία σας στο παρακάτω πίνακα τώρα Ονοµατεπώνυµο Αρ. Ταυτότητας Username Password Δηµιουργήστε ένα φάκελο στο home directory σας µε
ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων
ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο
Επιµέλεια Θοδωρής Πιερράτος
Η έννοια πρόβληµα Ανάλυση προβλήµατος Με τον όρο πρόβληµα εννοούµε µια κατάσταση η οποία χρήζει αντιµετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή ούτε προφανής. Μερικά προβλήµατα είναι τα εξής:
7.3 Πρωτόκολλο TCP. 1. Το TCP πρωτόκολλο παρέχει υπηρεσίες προσανατολισµένες σε σύνδεση. Σ Λ
Ερωτήσεις 7.3 Πρωτόκολλο TCP 1. Τι είναι το τµήµα (segment) στο πρωτόκολλο TCP; Από ποια µέρη αποτελείται; 2. Για ποιο σκοπό χρησιµοποιείται ο Αριθµός ειράς στην επικεφαλίδα ενός segment TCP; 3. την περίπτωση
Στο στάδιο ανάλυσης των αποτελεσµάτων: ανάλυση ευαισθησίας της λύσης, προσδιορισµός της σύγκρουσης των κριτηρίων.
ΠΕΡΙΛΗΨΗ Η τεχνική αυτή έκθεση περιλαµβάνει αναλυτική περιγραφή των εναλλακτικών µεθόδων πολυκριτηριακής ανάλυσης που εξετάσθηκαν µε στόχο να επιλεγεί η µέθοδος εκείνη η οποία είναι η πιο κατάλληλη για
Πανεπιστήµιο Θεσσαλίας
Πανεπιστήµιο Θεσσαλίας Τµήµα Πληροφορικής Ενότητα 8η: Συσκευές Ε/Ε - Αρτηρίες Άσκηση 1: Υπολογίστε το µέσο χρόνο ανάγνωσης ενός τµήµατος των 512 bytes σε µια µονάδα σκληρού δίσκου µε ταχύτητα περιστροφής
Μηχανική Μάθηση. Η έννοια της µάθησης σε ένα γνωστικό σύστηµα µπορεί να συνδεθεί µε δύο βασικές ιδιότητες:
Μηχανική Μάθηση Η έννοια της µάθησης σε ένα γνωστικό σύστηµα µπορεί να συνδεθεί µε δύο βασικές ιδιότητες: Την ικανότητά του στην πρόσκτηση επιπλέον γνώσης κατά την αλληλεπίδρασή του µε το περιβάλλον στο
ΚΕΦΑΛΑΙΟ 6 - ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
ΚΕΦΑΛΑΙΟ 6 - ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Προγραµµατισµός Η/Υ Ο προγραµµατισµός είναι η διατύπωση του αλγορίθµου σε µορφή κατανοητή από τον Η/Υ ώστε να τον εκτελέσει («τρέξει» όπως λέµε στην ορολογία της