ΣΥΝΕΛΙΚΤΙΚΑ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΣΥΝΕΛΙΚΤΙΚΑ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΜΑ ΦΥΣΙΚΗΣ - Δ.Π.Μ.Σ. «Ηλεκτρονική και Επεξεργασία της Πληροφορίας» ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΣΥΝΕΛΙΚΤΙΚΑ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ ΣΤΗΝ ΥΠΟΛΟΓΙΣΤΙΚΗ ΌΡΑΣΗ ΟΝΟΜΑΤΕΠΩΝΥΜΟ : ΠΑΠΑΔΟΠΟΥΛΟΣ ΑΘΑΝΑΣΙΟΣ AM : ΗΜΕΡΟΜΗΝΙΑ ΠΑΡΑΔΟΣΗΣ: 22/04/2016

2 [2]

3 Ευχαριστίες Η εκπόνηση της διπλωματικής εργασίας έγινε με την παρουσία, υποστήριξη και συμπαράσταση ενός συνόλου ανθρώπων τους οποίους θα ήθελα να ευχαριστήσω. Πρώτα απ όλους ευχαριστώ τον επιβλέποντα Δρ. Οικονόμου Γεώργιο για την καθοδήγηση και την υποστήριξη που μου παρείχε καθ όλη την διάρκεια διεκπεραίωσης της παρούσας διπλωματικής εργασίας, καθώς και τους κ. Φωτόπουλο Σπυρίδωνα, κ. Αναστασόπουλο Βασίλειο και κ. Ζυγούρη Ευάγγελο για τη γνώση που μου μετέφεραν κατά τη διάρκεια των Μεταπτυχιακών μου σπουδών. Σε μια πράξη αναγνώρισης της συνεισφοράς του στην περάτωση της διπλωματικής μου, εκφράζω την ευγνωμοσύνη μου στον Καστανιώτη Δημήτριο, Υποψήφιο Διδάκτορα στο τμήμα Φυσικής του Πανεπιστημίου Πατρών. Τέλος, θα ήθελα να ευχαριστήσω την οικογένειά μου για την ανιδιοτελή και ανυπολόγιστη υποστήριξη που μου παρείχε όλα αυτά τα χρόνια. [3]

4 Περίληψη Η παρούσα διπλωματική εργασία ασχολείται με την μελέτη και υλοποίηση Συνελικτικών Νευρωνικών Δικτύων και την χρήση τους στην υπολογιστική όραση και την επεξεργασία εικόνας. Σκοπός της εργασίας είναι η παροχή της απαραίτητης πληροφορίας για την μελέτη τους τόσο σε θεωρητικό όσο και σε πρακτικό επίπεδο, ξεκινώντας με το πρώτο κεφάλαιο, όπου γίνεται μια σύντομη ανασκόπηση της προέλευσης τους από τα Βιολογικά Νευρωνικά Δίκτυα που απαντώνται σε όλους τους έμβιους οργανισμούς. Στο δεύτερο κεφάλαιο παρουσιάζεται η θεωρία της μηχανικής μάθησης και αναλύονται οι κατηγορίες στις οποίες αυτή χωρίζεται, οι τεχνικές παλινδρόμησης καθώς και μια σύντομη αναφορά στην ταξινόμηση εικόνων. Στο τρίτο κεφάλαιο της εργασίας, παρουσιάζεται η θεωρία που διέπει τα Συνελικτικά Νευρωνικά Δίκτυα, την εξαγωγή χαρακτηριστικών για την περίπτωση των εικόνων, τα είδη των Συνελικτικών Νευρωνικών Δικτύων, οι μονάδες που τα αποτελούν και οι συνδεσμολογίες τους. Στο τέταρτο κεφάλαιο παρουσιάζονται αποτελέσματα εκτέλεσης αλγορίθμων επιβλεπόμενης μάθησης με χρήση αβαθούς αλλά και βαθιάς εκμάθησης για την βάση δεδομένων MNIST και CiFAR-10, με ποσοστά επιτυχίας 97.68% και 99.87% αντίστοιχα για αβαθή και βαθειά επιβλεπόμενη μάθηση στην MNIST και 71.84% βαθειάς εκμάθησης για την CiFAR- 10. Τέλος, παρέχεται κώδικας σε MatLab, μια παραλλαγή του κώδικα παρεχόμενου από το Stanford University που υλοποιεί Συνελικτικά Νευρωνικά Δίκτυα με όνομα Programming exercises for the Stanford Unsupervised Feature Learning and Deep Learning Tutorial, για την εκτέλεση εκπαίδευσης ενός Αβαθούς Συνελικτικού Νευρωνικού Δικτύου επιβλεπόμενης εκμάθησης ενός επιπέδου συνέλιξης και την επιβεβαίωση των αποτελεσμάτων. [4]

5 Abstract The current Msc. Thesis is dealing with the study and implementation of Convolutional Neural Networks and their usage on computer vision and image processing. Purpose of this work is to provide necessary information about studying Convolutional Neural Networks on theoretical and practical level, beginning from the first chapter with a brief review of their provenance from Biological Neural Networks, found in all living organisms. On chapter two, there is a presentation on machine learning and the categories it is divided, the regression techniques and image classification. On the third chapter the theory of Convolutional Neural Networks is presented followed by feature extraction on images, the kinds of Conulutional Neural Networks structured by different kinds of units and their architectures. Finally, at the fourth chapter the results of running supervised algorithms on Shallow and Deep architectures on MNIST and CiFAR-10 datasets are presented, with the success rates of 97.68% and 99.87% respectively and success rate at 71.84% running a supervised Deep architecture on CiFAR-10 database. At the end of this Thesis, the code for the implementation and verification of our results is given, by using a Shallow Convolutional Neural Network on supervised learning and constitutes of a variation of the code given by Stanford University which can be found as Programming exercises for the Stanford Unsupervised Feature Learning and Deep Learning Tutorial. [5]

6 Περιεχόμενα Περίληψη... 4 Πίνακας Εικόνων... 9 Λίστα Πινάκων Κεφάλαιο 1 Εισαγωγή Τεχνητή νοημοσύνη Μηχανική μάθηση Γενικά Νευρωνικά Δίκτυα Γενικά Ανθρώπινος Εγκέφαλος Βιολογικοί Νευρώνες Τεχνητά Νευρωνικά Δίκτυα Κεφάλαιο 2 Εκμάθηση Μηχανών Τεχνικές παλινδρόμησης Γραμμική παλινδρόμηση Ελαχιστοποίηση Συνάρτησης Λογιστική Παλινδρόμηση Εντοπισμός Σφαλμάτων και έλεγχος κλίσης Softmax Παλινδρόμηση Συνάρτηση κόστους Ιδιότητες της Softmax Σχέση με την Logistic Παλινδρόμηση Επιβλεπόμενη μάθηση Μοντέλο Νευρωνικών Δικτύων Πολύ-επίπεδα Νευρωνικά Δίκτυα Αλγόριθμος οπισθοδιάδοσης σφάλματος Βελτιστοποίηση: Stochastic Gradient Descent Ορμή - Momentum Αρχιτεκτονική των CNN Οπισθοδιάδοση σε πολύ-επίπεδα CNN Μάθηση χωρίς επίβλεψη Autoencoders Σύγκριση PCA με Autoencoders Οπτικοποίηση αποτελεσμάτων [6]

7 2.3.4 Οπτικοποίηση ενός εκπαιδευμένου Autoencoder Γενικά συμπεράσματα για τα CNN Ταξινόμηση εικόνων Επιβλεπόμενη ταξινόμηση Μέγιστη πιθανοφάνεια Αλγόριθμος του Παραλληλεπιπέδου Αλγόριθμος της ελάχιστης απόστασης Απόσταση Mahalanobis Μη επιβλεπόμενη ταξινόμηση Απλός αλγόριθμος ταξινόμησης Αλγόριθμος ISODATA Ο αλγόριθμος k-means Υβριδική ταξινόμηση εικόνων Κεφάλαιο 3 Συνελικτικά Νευρωνικά Δίκτυα (CNN) Shallow vs. deep architectures Παραδοσιακή Προσέγγιση Αναγνώρισης Εξαγωγή χαρακτηριστικών με συνέλιξη Πλήρως συνδεδεμένα δίκτυα Τοπικά συνδεδεμένα δίκτυα Συνελίξεις Συγκέντρωση (Pooling) Μη γραμμικότητα Dropout Κανονικοποίηση Προ-εκπαίδευση Κεφάλαιο 4 Εφαρμογή CNN σε προβλήματα αναγνώρισης εικόνων MNIST MNIST - Stanford_dl_ex-master MatConvNet CiFAR Συμπεράσματα CNNs, RBMs και Autoencoders [7]

8 Η σημασία του βάθους στα CNNs Υλοποίηση CNN με χρήση κάρτας γραφικών (GPU) Παράρτημα cnntrain.m minfuncsgd.m cnncost.m cnninitparams.m Ακρωνύμια Βιβλιογραφία [8]

9 Πίνακας Εικόνων Εικόνα 1 Βιολογικός νευρώνας Εικόνα 2 Δενδρίτες και συνάψεις στον βιολογικό νευρώνα Εικόνα 3 Πλήρης αντιστοίχιση τεχνητού - βιολογικού νευρώνα Εικόνα 4 Τεχνητός νευρώνας ως ένα σύνολο εισόδων, αθροιστή και εισαγωγή μηγραμμικότητας Εικόνα 5 Πρόβλεψη της τιμής των σπιτιών Εικόνα 6 Ταξινόμηση στην περίπτωση δυαδικών δεδομένων και threshold στο Εικόνα 7 Σιγμοειδής συνάρτηση στην περίπτωση δυαδικών δεδομένων Εικόνα 8 Τεχνητό Νευρωνικό Δίκτυο, ως συνδυασμός ενός συνόλου τεχνητών νευρώνων Εικόνα 9 Νευρώνας, κομμάτι ενός ευρύτερου νευρωνικού δικτύου Εικόνα 10 Κοινό διάγραμμα των συναρτήσεων tahn, sigmoid και ReLU Εικόνα 11 Οπισθοδιάδοση σφάλματος στην περίπτωση του απλού perceptron Εικόνα 12 Η gradient descent σχηματικά σε μια διάσταση Εικόνα 13 Δύο περιπτώσεις υπολογισμού της SGD για διαφορετικά σημεία εκκίνησης Εικόνα 14 Αριστερά: μεγάλο learning rate (overshoting), δεξιά: μικρό learning rate, πολλές επαναλήψεις μέχρι τη σύγκλιση και εγκλοβισμός σε τοπικό ελάχιστο Εικόνα 15 Το πρώτο layer από ένα CNN με pooling. Τα units με το ίδιο χρώμα έχουν tied weights και units με διαφορετικό χρώμα παριστάνουν διαφορετικά φίλτρα Εικόνα 16 Τυπική τοπολογία ενός Autoencoder Εικόνα 17 Αριστερά δεδομένα που απλώνονται σε ευθεία, Δεξιά δεδομένα που απλώνονται σε καμπύλη Εικόνα 18 Δύο κύριοι άξονες (PCA) Εικόνα 19 Γενική μορφή ενός Autoencoder Εικόνα 20 Μέση ενεργοποίηση των hidden units, έναντι της KL απόκλισης Εικόνα 21 Φίλτρα τα οποία έχουν υπολογιστεί από ένα ΝΝ ή έναν Autoencoder και χρησιμεύουν στην ανίχνευση χαρακτηριστικών Εικόνα 22 Διάγραμμα επιβλεπόμενης ταξινόμησης Εικόνα 23 Διαχωρισμός των κλάσεων με χρήση του κανόνα παραλληλογράμμου, και τα όρια αυτών Εικόνα 24 Διάγραμμα ανεπίβλεπτης ταξινόμησης Εικόνα 25 Shallow Neural Network 3 επιπέδων Εικόνα 26 Deep Neural Network Ν επιπέδων Εικόνα 27 Αριστερά η αρχική εικόνα και το φίλτρο, δεξιά αποτέλεσμα συνέλιξης του φίλτρου με την εικόνα Εικόνα 28 Η διαδικασία της συνέλιξης Εικόνα 29 Αποτέλεσμα εφαρμογής max pooling και sum pooling πάνω σε εικόνα.. 64 [9]

10 Εικόνα 30 Η διαδικασία του pooling Εικόνα 31 Συναρτήσεις εισαγωγής μη γραμμικότητας. Με κόκκινη συμβολίζεται η tanh, με πράσσινο η sigmoid και με μπλε η ReLU Εικόνα 32 Εφαρμογή κανονικοποίησης σε convolved εικόνα Εικόνα 33 Αποτελέσματα της Shallow αρχιτεκτονικής στην βάση MNIST Εικόνα 34 Εξαγωγή χαρακτηριστικών από την MNIST με βάση την προτεινόμενη, πολύ απλή αρχιτεκτονική του Stanford University Εικόνα 35 Softmax Layer, υπολογισμός σφαμλάτων ταξινόμισης για backpropagation Εικόνα 36 Η τοπολογία του ΝΝ που χρησιμοποιήσαμε για την επίλυση του προβλήματος MNIST Εικόνα 37 Εικόνα - είσοδος στο ΝΝ και πρόβλεψη αυτού Εικόνα 38 Activations ή αλλιώς αποκρίσεις στην έξοδο του ΝΝ Εικόνα 39 Εικόνα εισόδου και activations στην περίπτωση που η είσοδος είναι ευδιάκριτη Εικόνα 40 Εικόνα εισόδου και activations στην περίπτωση που η είσοδος δεν είναι πολύ ευδιάκριτη. Ακόμα και από τον άνθρωπο θα μπορούσε να επέλθει σύγχυση. 80 Εικόνα 41 Εικόνα εισόδου στην περίπτωση που η είσοδος δεν είναι ευδιάκριτη. Ακόμα και από τον άνθρωπο θα μπορούσε να επέλθει σύγχυση Εικόνα 42 Εικόνα - είσοδος στο ΝΝ Εικόνα 43 Φίλτρα πρώτου επιπέδου NN, κανάλι Εικόνα 44 Αποκρίσεις που υπολογίστηκαν στο πρώτο επίπεδο το οποίο είναι convolutional Εικόνα 45 Έξοδος του δεύτερου επιπέδου, max pooling Εικόνα 46 Φίλτρα 3ου επιπέδου, convolutional Εικόνα 47 Αποκρίσεις που έλαβαν μέρος στο 3ο convolutional επιπέδου Εικόνα 48 Έξοδος τέταρτου επιπέδου, max pooling Εικόνα 49 Τα 50 πρώτα φίλτρα που υπολογίστηκαν στον τέταρτο convolutional επιπέδου Εικόνα 50 Διαγράμματα εξέλιξης υπολογισμού της objective και του σφάλματος (error) σε κάθε epoch Εικόνα 51 Παραδείγματα περιεχομένου της βάσης δεδομένων CiFAR Εικόνα 52 Εικόνα εισόδου και πρόβλεψη του ΝΝ Εικόνα 53 Activations στην έξοδο του ΝΔ Εικόνα 54 Φίλτρα που προέκυψαν για το πρώτο επίπεδο του ΝΝ Εικόνα 55 Οι αποκρίσεις του πρώτου επιπέδου Εικόνα 56 Έξοδος δεύτερου επιπέδου, max pooling Εικόνα 57 Έξοδος τρίτου επιπέδου, ReLU Εικόνα 58 Έξοδος τέταρτου επιπέδου, convolution Εικόνα 59 Απόκριση του δικτύου στα φίλτρα τέταρτου επιπέδου convolution Εικόνα 60 5 ο επίπεδο - ReLU [10]

11 Εικόνα 61 Έξοδος έκτου επιπέδου, average pooling Εικόνα 62 Έξοδος έβδομου επιπέδου, convolution Εικόνα 63 Έξοδος όγδοου επιπέδου, ReLU Εικόνα 64 Έξοδος ένατου επιπέδου, softmax Εικόνα 65 Τοπολογία ΝΔ για την επίλυση του προβλήματος της CiFAR Εικόνα 66 Διαγράμματα εξέλιξης υπολογισμού της objective και του σφάλματος (error) σε κάθε epoch Εικόνα 67 Τυπικός Autoencoder 3 επιπέδων Εικόνα 68 Restricted Boltzmann Machine Εικόνα 69 CNN τεσσάρων επιπέδων για αναγνώριση προσώπου Εικόνα 70 Σχηματική αναπαράσταση ενός DNN το οποίο δείχνει πως όλο και πιο περίπλοκα χαρακτηριστικά "συλλαμβάνονται" από τα επίπεδα του Δικτύου Εικόνα 71 Σύγκριση αποτελεσματικότητας υπολογισμών μιας GPU με μια CPU [11]

12 Λίστα Πινάκων Πίνακας 1 Χαρακτηριστικά βάσης δεδομένων ILSVRC Πίνακας 2 Confusion Matrix για την MNIST με CNN 1 επιπέδου συνέλιξης. 74 Πίνακας 3 Αριθμός λανθασμένων ταξινομήσεων ανά κλάση και ποσοστά λάθος εκτίμησης για την MNIST στην περίπτωση αλγορίθμου του Stanford University. 74 Πίνακας 4 Confusion Matrix για την MNIST, αλγόριθμος MatConvNet 84 Πίνακας 5 Πίνακας 6 Πίνακας 7 Πίνακας 8 Αριθμός λανθασμένων ταξινομήσεων ανά κλάση και ποσοστά λάθος εκτίμησης για την MNIST στην περίπτωση αλγορίθμου MatConvNet. 85 Confusion Matrix για την βάση δεδομένων CiFAR-10, αλγόριθμος MatConvNet 94 Αριθμός λανθασμένων ταξινομήσεων ανά κλάση και ποσοστά λάθος εκτίμησης για την MNIST στην περίπτωση αλγορίθμου MatConvNet. 94 Top-1 και Top-5 σφάλματα προσθέτοντας βάθος. Με D+i συμβολίζουμε την προσθήκη i αντίγραφα του τελευταίου επιπέδου συνέλιξης στο τέλος του Δικτύου 99 [12]

13 Κεφάλαιο 1 Εισαγωγή 1.1 Τεχνητή νοημοσύνη Ο όρος τεχνητή νοημοσύνη (TN) ή στα Αγγλικά Artificial Intelligence (AI) σχετίζεται με τον κλάδο της πληροφορικής σχετικό με την σχεδίαση υπολογιστικών συστημάτων τα οποία μιμούνται την ανθρώπινη συμπεριφορά υποδηλώνοντας την παρουσία στοιχειώδους ευφυΐας, καθώς και την υλοποίησή τους. Παραδείγματα αποτελούν η εκμάθηση και προσαρμογή στο περιβάλλον, η εξαγωγή συμπερασμάτων και γενικότερα η επίλυση απλών ή και πολύπλοκων προβλημάτων. Ο Τζον Μακάρθι, μια από τις σημαντικότερες φυσιογνωμίες στον τομέα της θεωρητικής πληροφορικής ορίζει τον συγκεκριμένο κλάδο ως «η επιστήμη και μεθοδολογία της δημιουργίας νοούντων μηχανών». Μεγάλος αριθμός επιστημών συναντάται και συνεισφέρει στην τεχνητή νοημοσύνη, όπως για παράδειγμα η επιστήμη της πληροφορικής, της ψυχολογίας και της φιλοσοφίας, η νευρολογία, η επιστήμη των μηχανών, ακόμη και η επιστήμη της γλωσσολογίας προκειμένου να γίνει εφικτή η σύνθεση ευφυούς συμπεριφοράς, η εκμάθηση και προσαρμογή στο εκάστοτε περιβάλλον μηχανών και υπολογιστών συγκεκριμένου συνήθως σκοπού. Η ΤΝ διαχωρίζεται σε δυο κομμάτια, την συμβολική και την υπο-συμβολική νοημοσύνη. Η πρώτη συνίσταται στην προσπάθεια εξομοίωσης της ανθρώπινης συμπεριφοράς με χρήση ειδικών αλγορίθμων, μέσα από ένα σύνολο συμβόλων και λογικών κανόνων υψηλού επιπέδου ενώ η δεύτερη στόχο έχει την προσέγγιση ή ακόμα και την αναπαραγωγή της ανθρώπινης ευφυΐας μέσα από στοιχειώδη αριθμητικά μοντέλα τα οποία επαγωγικά συνθέτουν συμπεριφορές που υποδηλώνουν ευφυΐα, προσεγγίζοντας πραγματικές βιολογικές συμπεριφορές όπως η διαδικασία της εξέλιξης και η λειτουργία του ανθρώπινου εγκεφάλου. Ανάλογα με τον επιθυμητό στόχο η ΤΝ μπορεί να χωριστεί σε ένα ευρύτερο σύνολο τομέων, παραδείγματος χάριν στην μηχανική εκμάθηση, την επίλυση προβλημάτων, τα συστήματα γνώσης κλπ. Σε μεγάλο αριθμό περιπτώσεων υπάρχει επικάλυψη με συναφή επιστημονικά πεδία, πχ υπολογιστική όραση, σύνθεση και αναγνώριση φυσικής γλώσσας και ρομποτική, οι οποίες μπορούν να θεωρηθούν ανεξάρτητες συνιστώσες-πεδία της σύγχρονης ΤΝ. Ο κινηματογράφος επιστημονικής φαντασίας αλλά και η λογοτεχνία από τις αρχές της δεκαετίας 1920 έχουν ασχοληθεί με την ΤΝ δημιουργώντας αξιόλογα έργα και οπτικοποιώντας μια ιδεατή πραγματικότητα όπου ρομπότ και [13]

14 υπολογιστικά συστήματα συνυπάρχουν με τους ανθρώπους και τους εξυπηρετούν στην καθημερινότητα. Ωστόσο, η λανθασμένη εντύπωση που έχει προκληθεί στο ευρύ κοινό περί κατασκευής μηχανικών ανδροειδών, αυτοσυνείδητων υπολογιστικών συστημάτων με σκοπό ακόμη και την αντικατάσταση του ανθρώπου δεν εκλείπουν, έχοντας επηρεάσει ακόμα και τους πρώτους επιστήμονες σχετικούς με τον τομέα. Στην πραγματικότητα, οι ερευνητές του τομέα της ΤΝ έχουν ως σκοπό την κατασκευή λογισμικού και μηχανών ικανών να επιλύουν πραγματικά προβλήματα διαφόρων τύπων (ασθενής ΤΝ), ενώ αρκετοί αποβλέπουν στην προσομοίωση της πραγματικής ευφυΐας, την λεγόμενη ισχυρή ΤΝ. Στην εποχή μας, η ΤΝ αποτελεί ένα από τα ταχύτερα εξελισσόμενα πεδία της επιστήμης, ενώ με την χρήση εργαλείων των εφαρμοσμένων μαθηματικών και επιστήμες μηχανικών έχει ξεφύγει από τα πλαίσια της θεωρητικής πληροφορικής. Τέλος, μελετάται από την ηλεκτρονική μηχανική ενώ αποτελεί θεμέλιο του διεπιστημονικού πεδίου της γνωσιακής επιστήμης.[25] 1.2 Μηχανική μάθηση Γενικά Η μηχανική μάθηση (machine learning), αποτελεί ένα από τα σημαντικότερα κομμάτια της ΤΝ, η οποία αφορά ανάπτυξη αλγορίθμων κατάλληλων που θα δώσουν τη δυνατότητα της εκμάθησης στους υπολογιστές. Το λογισμικό που χρησιμοποιείται από τους υπολογιστές γίνεται πλέον ευέλικτο και προσαρμόσιμο με βάση την ανάλυση των δεδομένων που λαμβάνουν, αντί της κλασικής πλέον προσαρμογής τους με βάση την διαίσθηση του μηχανικού που προγραμματίζει κάποιο σύστημα. Όλη η ουσία της μηχανικής μάθησης συνοψίζεται στη χρήση αλγορίθμων, ικανών να αναγνωρίζουν μοτίβα στα δεδομένα προκειμένου να λάβουν αποφάσεις, βασιζόμενες στην στατιστική, τη θεωρία των πιθανοτήτων και την βελτιστοποίηση. Χάρις την εκμάθηση μηχανών, απολαμβάνουμε υπηρεσίες όπως φίλτρα ανεπιθύμητης αλληλογραφίας, αναγνώριση κειμένου και φωνής, αξιόπιστες μηχανές αναζήτησης στο διαδίκτυο, προκλητικούς αντιπάλους στο σκάκι και ελπίζουμε σύντομα σε αυτό-οδηγούμενα μέσα μεταφοράς. Ανάλογα με το επιθυμητό αποτέλεσμα, οι αλγόριθμοι ΤΝ χωρίζονται στις εξής κατηγορίες: Επιτηρούμενη μάθηση ή μάθηση υπο επίβλεψη (supervised learning), όπου ο αλγόριθμος κατασκευάζει μια συνάρτηση που απεικονίζει δεδομένες εισόδουςδείγματα (labeled examples) σε γνωστές-επιθυμητές εξόδους (σύνολο εκπαίδευσης), κάνοντας προβλέψεις και διορθώνοντας τις προβλέψεις σε [14]

15 περίπτωση λάθους, με απώτερο στόχο τη γενίκευση της συνάρτησης αυτής για εισόδους με άγνωστη έξοδο (σύνολο ελέγχου). Μη επιτηρούμενη μάθηση ή μάθηση χωρίς επίβλεψη (unsupervised learning), όπου ο αλγόριθμος κατασκευάζει ένα μοντέλο για κάποιο σύνολο εισόδων χωρίς να γνωρίζει επιθυμητές εξόδους-δείγματα (unlabeled examples) για το σύνολο εκπαίδευσης ανακαλύπτοντας δομές, όπως για παράδειγμα εξάγοντας γενικούς κανόνες. Ημι-επιτηρούμενη μάθηση (semi-supervised learning), όπου τα δεδομένα εκπαίδευσης είναι μια μίξη γνωστών και αγνώστων δειγμάτων (mixture of labeles & unlabeled examples), όπου υπάρχει ένα επιθυμητό πρόβλημα πρόβλεψης, αλλά το μοντέλο πρέπει να μάθει δομές για να οργανώσει τα δεδομένα και να κάνει προβλέψεις. Η ανάλυση των δυο πρώτων αλγορίθμων θα γίνει στη συνέχεια, ενώ ο τρίτος αναφέρεται για λόγους πληρότητας.[26] 1.3 Νευρωνικά Δίκτυα Γενικά Τα Νευρωνικά Δίκτυα ή ΝΔ (Neural Networks ή NN), χωρίζονται σε Βιολογικά Νευρωνικά Δίκτυα (ΒΝΔ) ή Biological Neural Networks (BNN) και σε Τεχνητά Νευρωνικά Δίκτυα (ΤΝΔ) ή Artificial Neural Networks (ANN). Τα ΒΝΔ αποτελούν μέρος του κεντρικού νευρικού συστήματος βιολογικών συστημάτων, παραδείγματος χάριν του ανθρώπου, ενώ συνίστανται από βιολογικό ιστό, χημικές ουσίες και ηλεκτρικά σήματα τα οποία τα διαχωρίζουν από τα ΤΝΔ που προσπαθούν να μιμηθούν τα πρώτα μέσα από ένα σύνολο ηλεκτρονικών και μηχανικών συστημάτων συνοδευόμενα από ευφυείς αλγορίθμους Ανθρώπινος Εγκέφαλος Βιολογικοί Νευρώνες Το ανθρώπινο σώμα αποτελείται από ένα τεράστιο αριθμό κυττάρων, περίπου. Κάθε κύτταρο αποτελεί μια στοιχειώδη μονάδα μεταφοράς και επεξεργασίας ηλεκτρικών σημάτων και χημικών διαδικασιών και ονομάζεται νευρώνας. Εκτιμήσεις δείχνουν ότι ένας ανθρώπινος εγκέφαλος περιλαμβάνει περίπου νευρώνες με διάφορα σχήματα και μεγέθη περίπου 100μm. Οι νευρώνες είναι παρόμοιοι με άλλα κύτταρα γιατί: 1. Περιβάλλονται από κυτταρική μεμβράνη 2. Έχουν πυρήνα που περιλαμβάνει γονίδια 3. Περιέχουν κυτταρόπλασμα, μιτοχόνδρια και άλλα οργανίδια 4. Πραγματοποιούν βασικές κυτταρικές διεργασίες όπως πρωτεϊνική σύνθεση και παραγωγή ενέργειας Ωστόσο διαφέρουν από άλλα κύτταρα γιατί: [15]

16 1. Έχουν ειδικευμένα μέρη που ονομάζονται Δενδρίτες ή Dendrites και Άξονες ή Axons. Οι πρώτοι μεταφέρουν ηλεκτρικά σήματα στον νευρώνα και οι δεύτεροι από τον νευρώνα προς κάποιο άλλο μέρος του εγκεφάλου 2. Οι νευρώνες επικοινωνούν μεταξύ τους μέσω ηλεκτροχημικών διεργασιών 3. Περιλαμβάνουν ορισμένες εξειδικευμένες δομές, όπως για παράδειγμα τις Συνάψεις ή Synapses και χημικά όπως για παράδειγμα τους Νευροδιαβιβαστές ή Neurotransmitters Οι συνάψεις ενώνουν τα βιολογικά νευρώνια και δίνουν την δυνατότητα ανταλλαγής του ηλεκτρικού δυναμικού μεταξύ των δενδριτών. Οι ανταλλαγές αυτές λαμβάνουν χώρα σε μεγάλη πυκνότητα με πολύ αργό ρυθμό περίπου 100Hz. Ο μέσος άνθρωπος έχει περίπου συνάψεις και επομένως συμβαίνουν interactions/sec. Εικόνα 1 Βιολογικός νευρώνας. Οι δυνατότητες αυτές βρίσκονται πέρα από τις αντίστοιχες κάθε συστήματος που μπορεί να κατασκευαστεί ή και να σχεδιαστεί. Οι σημερινοί υπολογιστές προσεγγίζουν τις 10 9 interactions/sec. Ένας τρόπος κατηγοριοποίησής τους, είναι ο αριθμός των επεκτάσεων (extensions) από το σώμα του νευρώνα και η κατεύθυνσή τους.[27][28] [16]

17 Εικόνα 2 Δενδρίτες και συνάψεις στον βιολογικό νευρώνα Τεχνητά Νευρωνικά Δίκτυα Τα Τεχνητά Νευρωνικά Δίκτυα (ΤΝΔ) ουσιαστικά προσπαθούν να μιμηθούν τη λειτουργία του ανθρώπινου εγκεφάλου υιοθετώντας την αρχιτεκτονική που τον χαρακτηρίζει, ενώ η εκπαίδευσή τους γίνεται όπως και στα ΒΝΔ, δηλαδή μέσα από ένα σύνολο παραδειγμάτων. Έτσι, τα κοινά χαρακτηριστικά των δυο κατηγοριών νοημοσύνης είναι τα εξής: Η εκπαίδευσή τους γίνεται μέσα από ένα σύνολο παραδειγμάτων, βοηθώντας τα να μάθουν το περιβάλλον τους Τα σημεία συνάψεων των ΒΝΔ, ανάλογα με την ισχύ των δεσμών τους όπως και τα συναπτικά βάρη στα ΤΝΔ, χρησιμοποιούνται για την αποθήκευση της αποκτηθέντος γνώσεως. Συμπερασματικά, τα ΤΝΔ και τα ΒΝΔ αποτελούνται από ένα σύνολο νευρώνων, δηλαδή μιας μονάδας αποθήκευσης και επεξεργασίας πληροφορίας, τα τρία στοιχεία των οποίων είναι ένας αριθμός συνάψεων, ένας αθροιστής και μια συνάρτηση μεταφοράς (ενεργοποίησης) του νευρώνα. Ένας νευρώνας, μπορεί να έχει ένα μεγάλο αριθμό εισόδων αλλά η έξοδός του θα είναι πάντοτε μια, η οποία είναι δυνατό να αποτελεί είσοδο σε κάποιο άλλο νευρώνα, δημιουργώντας έτσι ένα δίκτυο από νευρώνες. Η σημαντικότητα των συνάψεων (βάρη) διαφέρουν σε κάθε νευρώνα, ενώ η συνάρτηση ενεργοποίησης καθορίζει την έξοδο σχετικά με τις σταθμισμένες εισόδους του νευρώνα. Στις εικόνες 3 και 4, παρατηρούμε σχηματικά όσα αναφέρθηκαν πιο πάνω. [17]

18 Εικόνα 3 Πλήρης αντιστοίχιση τεχνητού - βιολογικού νευρώνα. Εικόνα 4 Τεχνητός νευρώνας ως ένα σύνολο εισόδων, αθροιστή και εισαγωγή μη-γραμμικότητας. Επίσης, να σημειώσουμε ότι ένα σύνολο από νευρώνες με κοινά χαρακτηριστικά, ονομάζεται επίπεδο νευρώνων και μεταξύ της εισόδου και της εξόδου ενός ΝΔ μπορεί να έχουμε περισσότερα του ενός επίπεδα, τα λεγόμενα κρυφά επίπεδα υπολογισμού ή αλλιώς hidden layers, αλλά και αναδρομικά στοιχεία (με τουλάχιστον ένα βρόχο ανάδρασης).[8][27][28][29] [18]

19 Κεφάλαιο 2 Μηχανών Εκμάθηση 2.1 Τεχνικές παλινδρόμησης Γραμμική παλινδρόμηση Σκοπός της γραμμικής παλινδρόμησης (linear Regression) είναι η πρόβλεψη της τιμής του y με βάση κάποιο διάνυσμα είσοδο. Για παράδειγμα, έστω ότι θέλουμε να κάνουμε προβλέψεις για την τιμή ενός σπιτιού έτσι ώστε το να αναπαριστά την τιμή του σπιτιού σε δολάρια και τα στοιχεία του να αναπαριστούν τα χαρακτηριστικά του σπιτιού (για παράδειγμα το μέγεθος και τον αριθμό των δωματίων). Υποθέτουμε ότι μας δίνεται μεγάλος αριθμός σπιτιών, όπου τα χαρακτηριστικά του -οστού δείγματος συμβολίζονται ως και η τιμή του. Στόχος μας είναι να βρούμε μια συνάρτηση τέτοια ώστε να ισχύει για κάθε δείγμα εκπαίδευσης. Αν καταφέρουμε και βρούμε μια τέτοια συνάρτηση και το δείγμα που χρησιμοποιούμε στην εκπαίδευση είναι αρκετά μεγάλο, τότε η αποτελεί μια καλή συνάρτηση πρόβλεψης της τιμής σπιτιών, ακόμα και για σπίτια γνωστών χαρακτηριστικών, αλλά άγνωστης τιμής. Εικόνα 5 Πρόβλεψη της τιμής των σπιτιών. Για να βρούμε μια τέτοια συνάρτηση όπου, πρέπει πρώτα να αποφασίσουμε πως θα αναπαραστήσουμε την. Προκειμένου να κάνουμε μια αρχή, υποθέτουμε ότι. Το αναπαριστά μια μεγάλη οικογένεια συναρτήσεων παραμετροποιημένες με βάση την επιλογή του. Καλούμε τον χώρο αυτών των συναρτήσεων συναρτήσεις υπόθεσης ή [19]

20 hypothesis class η οποία αποτελεί ουσιαστικά μια καλή πρόβλεψη των τιμών του y. Με βάση αυτή την αναπαράσταση της, στόχος μας είναι να βρούμε κάποιο, τέτοιο ώστε η να προσεγγίζει όσο το δυνατό καλύτερα την. Συγκεκριμένα, ψάχνομε για την επιλογή του που ελαχιστοποιεί την: (2.1) Αυτή η συνάρτηση καλείται συνάρτηση κόστους (cost function) για το πρόβλημά μας και υπολογίζει το σφάλμα στην πρόβλεψη του αποκαλείται loss, penalty ή objective function Ελαχιστοποίηση Συνάρτησης Έστω ότι θέλουμε να βρούμε το κατάλληλο για συγκεκριμένο. Επίσης,, το οποίο ελαχιστοποιεί την. Ας πάρουμε δεδομένο το γεγονός ότι οι περισσότεροι αλγόριθμοι ελαχιστοποίησης συναρτήσεων απαιτούν δυο πληροφορίες για την : Τον υπολογισμό της και της κλίσης της, δηλαδή της για κάθε. Στη συνέχεια η καλύτερη τιμή του θα επιλεγεί από αλγόριθμο κατάλληλο γι αυτή τη δουλειά. Υπενθυμίζουμε ότι η κλίση μιας διαφορίσιμης συνάρτησης, είναι ένα διάνυσμα στην κατεύθυνση της πιο απότομης αύξησης ως προς. Η έκφραση του δεδομένου συνόλου εκπαίδευσης και είναι εύκολο να υλοποιηθεί με κάποιο υπολογιστικό πακέτο, όπως για παράδειγμα το MatLab, για κάθε. Σε αυτό το σημείο απομένει ο υπολογισμός της κλίσης: (2.2) Διαφορίζοντας την παραπάνω συνάρτηση κόστους παράμετρο παίρνουμε: ως προς συγκεκριμένη (2.3) Λογιστική Παλινδρόμηση Η Γραμμική παλινδρόμηση (linear regression) που χρησιμοποιήθηκε προηγουμένως, μας βοηθούσε να προβλέψουμε τις τιμές συνεχών μεταβλητών, όπως για παράδειγμα την τιμή ενός σπιτιού. Στην περίπτωση που οι μεταβλητές [20]

21 που χρησιμοποιούμε είναι κβαντισμένες, όπως για παράδειγμα ένα πλέγμα από pixel με τιμές ή, το πρόβλημα που έχουμε να αντιμετωπίσουμε τάσσεται στην κατηγορία της ταξινόμησης (classification). Η Λογιστική Παλινδρόμηση είναι ένας απλός αλγόριθμος εκμάθησης για τη λήψη τέτοιων αποφάσεων. Εικόνα 6 Ταξινόμηση στην περίπτωση δυαδικών δεδομένων και threshold στο 0.5. Στη Γραμμική Παλινδρόμηση προσπαθήσαμε να προβλέψουμε την τιμή της από το -οστό δείγμα χρησιμοποιώντας τη γραμμική συνάρτηση. Είναι φανερό ότι η συγκεκριμένη μέθοδος δεν είναι κατάλληλη για την πρόβλεψη δυαδικών (binary) μεταβλητών. Με τη Λογιστική Παλινδρόμηση χρησιμοποιούμε διαφορετική hypothesis class προκειμένου να προβλέψουμε την πιθανότητα κάποιο δείγμα να ανήκει στην κλάση ή την κλάση. Πιο συγκεκριμένα προσπαθούμε να μάθουμε μια συνάρτηση της μορφής: (2.4) Εικόνα 7 Σιγμοειδής συνάρτηση στην περίπτωση δυαδικών δεδομένων. [21]

22 Η συνάρτηση αποκαλείται σιγμοειδής (sigmoid) ή λογιστική (logistic) συνάρτηση λόγω της μορφής της μια συνάρτηση με μορφή η οποία συμπιέζει τις μορφές του στο διάστημα, έτσι ώστε να μπορούμε να αντιμετωπίσουμε την σαν πιθανότητα. Στόχος μας είναι η αναζήτηση της τιμής του, τέτοιας ώστε η πιθανότητα να είναι μεγάλη όταν το ανήκει στην κλάση και μικρή όταν ανήκει στην κλάση (η θα πρέπει να είναι μεγάλη). Για κάποιο σετ από δείγματα εκπαίδευσης με δυαδικές επισημάνσεις (binary labels) της κλάσης στην οποία πραγματικά ανήκουν μέτρο της επιτυχίας της η συνάρτηση κόστους που ακολουθεί, μας δίνει ένα πρόβλεψης: (2.5) Σημειωτέον ότι μόνο ένας από τους δυο όρους στο άθροισμα είναι μη μηδενικός για κάθε παράδειγμα εκπαίδευσης (ανάλογα με την επισήμανση της, αν είναι ή ). Όταν, ελαχιστοποίηση της συνάρτησης κόστους σημαίνει ότι πρέπει να αυξηθεί η και όταν, θέλουμε αύξηση της όπως εξηγήσαμε πιο πάνω. Έχουμε τώρα, λοιπόν, μια συνάρτηση κόστους η οποία μετράει πόσο καλά ταιριάζει η hypothesis στα δεδομένα. Μπορούμε να μάθουμε τώρα να ταξινομούμε τα δεδομένα μέσω της ελαχιστοποίησης της για την εύρεση του καλύτερου. Σαν αποτέλεσμα, μπορούμε πλέον να ταξινομήσουμε ένα νέο τέστδεδομένο σαν ή ελέγχοντας ποία από τις δύο επισημάνσεις κλάσεως είναι πιο πιθανή: Αν, τότε ανήκει στην class, διαφορετικά ανήκει στην class. Αυτό είναι ισοδύναμο με τον έλεγχο αν. Για την ελαχιστοποίηση της μπορούμε να χρησιμοποιήσουμε τα ίδια εργαλεία με την Γραμμική Παλινδρόμηση. Χρειαζόμαστε μια συνάρτηση υπολογισμού της και της για κάθε επιλεγμένη. Η παράγωγος της όπως δίνεται πιο πάνω ως προς κάποιο είναι: (2.6) Γραμμένη σε μορφή διανύσματος, η κλίση μπορεί να εκφραστεί ως: (2.7) [22]

23 Είναι κατ 'ουσίαν ίδια με την κλίση της Γραμμικής Παλινδρόμησης, εκτός από την η οποία είναι τώρα ίση με Εντοπισμός Σφαλμάτων και έλεγχος κλίσης Ο υπολογισμός της κλίσης μιας συνάρτησης (Gradient Checking), είναι περίπλοκος ως προς την υλοποίηση μέσω κώδικα και πρέπει να γίνει προσεκτικά για να λαμβάνουμε σωστά αποτελέσματα. Έτσι, σε μια λανθασμένη υλοποίηση μπορεί να μην είναι καθόλου εμφανές ότι κάτι δεν πάει καλά. Περιγράφουμε λοιπόν σε αυτό το εδάφιο πως μπορεί να πραγματοποιηθεί ο αριθμητικός υπολογισμός της. Ας υποθέσουμε ότι θέλουμε να ελαχιστοποιήσουμε την σαν μια συνάρτηση του. Σε αυτό το παράδειγμα υποθέτουμε ότι, έτσι ώστε. Έστω επίσης ότι μια συνάρτηση που φτιάξαμε, η, υπολογίζει την. Ο μαθηματικός υπολογισμός της κλίσης γίνεται ο υπολογισμός του ορίου: (2.8) Έτσι, για κάθε συγκεκριμένο ως: μπορούμε να προσεγγίσουμε αριθμητικά της κλίση (2.9) Στην πράξη, η παίρνει τιμές κοντά στο. (Υπάρχει μεγάλο πλήθος που μπορούν να δουλέψουν καλά, όμως, δεν θέτουμε στην ακραίες τιμές, ας πούμε, καθώς θα οδηγούμασταν σε αριθμητικά σφάλματα στρογγυλοποίησης.) Έτσι, δεδομένης της συνάρτησης η οποία υποθετικά υπολογίζει την, μπορούμε να επιβεβαιώσουμε αριθμητικά ότι (2.10) Ο βαθμός στον οποίο οι δυο αυτές τιμές συγκλίνουν, εξαρτάται από τις λεπτομέρειες της. Εφόσον όμως έχει επιλεγεί, οι δυο πλευρές της εξίσωσης θα συμφωνούν σε βαθμό τεσσάρων τάξεων μεγέθους. [23]

24 Ας εξετάσουμε τώρα την περίπτωση όπου, δηλαδή ένα διάνυσμα και όχι ένας μόνον πραγματικός αριθμός (έχουμε πλέον παραμέτρους να μάθουμε), ενώ. Γενικεύουμε τώρα τον έλεγχο της κλίσης στην περίπτωση που το είναι ένα διάνυσμα (όπως στη Γραμμική και Λογιστική Παλινδρόμηση). Εάν χρησιμοποιούμε αρκετές μεταβλητές πίνακες, μπορούμε να πακετάρουμε όλες αυτές τις μεταβλητές σε ένα μεγάλο διάνυσμα και να χρησιμοποιήσουμε την ίδια μέθοδο για τον υπολογισμό της κλίσης. Ας υποθέσουμε ότι έχουμε μια συνάρτηση. Θέλουμε να ελέγξουμε αν η εξάγει σωστές τιμές της κλίσης. η οποία υπολογίζει την Έστω,, όπου (2.11) είναι το -οστό διάνυσμα βάσης, ένα διάνυσμα ίδιας διάστασης με το, με στην - οστή θέση και οπουδήποτε αλλού. Το επομένως είναι το ίδιο με το, εκτός του ότι το -οστό στοιχείο του έχει μετατοπιστεί κατά. Έστω, επίσης ότι το ίδιο ισχύει και για το μετατόπιση κατά. με την αντίστοιχη αρνητική Μπορούμε τώρα να επιβεβαιώσουμε αριθμητικά το σωστό υπολογισμό της, ελέγχοντας για κάθε, ότι: (2.12) Softmax Παλινδρόμηση Η softmax Παλινδρόμηση (Softmax Regression ή αλλιώς Πολυωνυμική Λογιστική Παλινδρόμηση) είναι μια γενίκευση της Λογιστικής Παλινδρόμησης κατά την οποία θέλουμε να χειριστούμε πολλές κλάσεις. Στην Λογιστική Παλινδρόμηση υποθέσαμε ότι οι επισημάνσεις είναι δυαδικές:. Η softmax Παλινδρόμηση μας επιτρέπει να χειριστούμε, όπου είναι ο αριθμός των κλάσεων. Υπενθυμίζουμε ότι στην Λογιστική Παλινδρόμηση είχαμε ένα σετ εκπαίδευσης, από δείγματα, όπου τα χαρακτηριστικά εισόδου είναι τα ετικέτες ήταν τα και η hypothesis είχε τη μορφή:. Στην Λογιστική Παλινδρόμηση οι [24]

25 (2.13) και οι παράμετροι κόστους εκπαιδεύονταν για την ελαχιστοποίηση της συνάρτησης (2.14) Στην περίπτωση της softmax Παλινδρόμησης, ενδιαφερόμαστε για πολυωνυμική ταξινόμηση, σε αντίθεση με τη δυαδική ταξινόμηση, κι έτσι η μπορεί να πάρει διαφορετικές τιμές, αντί για δύο. Έτσι, όσον αφορά το σύνολο εκπαίδευσης μας, τώρα έχουμε. Σαν σύμβαση, παίρνουμε τον δείκτη των κλάσεων να ξεκινάει από το αντί για το. Για παράδειγμα, στη βάση MNIST (χειρόγραφα ψηφία από το εως το μεγέθους εικόνας pixels), έχουμε κλάσεις. Δεδομένης μιας εισόδου test, θέλουμε η hypothesis να εκτιμήσει την πιθανότητα για όλες τις τιμές του. Αν για παράδειγμα θέλουμε να εκτιμήσουμε την πιθανότητα της ετικέτας κλάσεων να πάρει καθεμιά από τις πιθανές τιμές, η hypothesis θα εξάγει ένα -διάστατο διάνυσμα, των οποίων τα στοιχεία αθροίζονται στη μονάδα, δίνοντας τις εκτιμώμενες πιθανότητες. Συγκεκριμένα, η hypothesis παίρνει τη μορφή: (2.15) Εδώ τα ότι ο όρος στην μονάδα. είναι οι παράμετροι του μοντέλου μας. Τονίζουμε κανονικοποιεί την κατανομή, έτσι ώστε να αθροίζει Τέλος, για λόγους ευκολίας, γράφουμε το σε μορφή πίνακα ο οποίος περιλαμβάνει τη συνένωση των σε στήλες: (2.16) [25]

26 2.1.6 Συνάρτηση κόστους Περιγράφουμε τώρα τη συνάρτηση κόστους (Cost Function) που θα χρησιμοποιήσουμε στην softmax Παλινδρόμηση. Στην πιο κάτω εξίσωση, είναι η συνάρτηση δείκτης ή indicator function έτσι ώστε και. Για παράδειγμα ισούται με, ενώ είναι ίσο με. Η συνάρτηση κόστους λοιπόν παίρνει τη μορφή: (2.17) Αυτό, γενικεύει την συνάρτηση Λογιστικής Παλινδρόμησης, η οποία μπορεί επίσης να γραφτεί ως: (2.18) Η softmax συνάρτηση κόστους είναι παρόμοια εκτός του ότι τώρα έχουμε άθροισμα πάνω σε διαφορετικές, πιθανές τιμές. Έχουμε, επίσης: (2.19) Δε μπορούμε να λύσουμε για το αναλυτικά, οπότε θα το προσεγγίσουμε με έναν επαναληπτικό αλγόριθμο. Μέσω της κλίσης, βρίσκουμε ότι: (2.20) Η κλίση αυτή είναι ένα διάνυσμα, έτσι ώστε το -οστό στοιχείο της να είναι η μερική παράγωγος της ως προς το -οστό στοιχείο του Ιδιότητες της Softmax Η softmax Παλινδρόμηση έχει μια ασυνήθιστη ιδιότητα, έχει πλεονάζον αριθμό παραμέτρων. Για να εξηγήσουμε τι σημαίνει αυτό, παίρνουμε κάθε παράμετρο-διάνυσμα και αφαιρούμε ένα διάνυσμα, έτσι ώστε να αντικαταστήσουμε το με το για όλα τα. Ο υπολογισμός των πιθανοτήτων τώρα για κάθε κλάση γίνεται ως εξής: [26]

27 (2.21) Με άλλα λόγια, η αφαίρεση του διανύσματος από το δεν επηρεάζει τις προβλέψεις. Αυτό μας δείχνει, ότι η softmax Παλινδρόμηση έχει περιττές μεταβλητές. Περεταίρω, εάν η ελαχιστοποιείται από τις παραμέτρους, τότε ελαχιστοποιείται και από τις για κάθε τιμή του. Ενδιαφέρον είναι το γεγονός ότι η διατηρεί την κύρτωση της, πράγμα το οποίο σημαίνει ότι η κλίση δεν θα συναντήσει προβλήματα τοπικών ακρότατων. Όμως, η Hessian είναι μοναδική/μη αντιστρεπτή, το οποίο μας οδηγεί σε αριθμητικά προβλήματα, σε απλές εφαρμογές της μεθόδου του Newton. Τέλος, σημειώνουμε ότι μπορούμε να θέσουμε και να αντικαταστήσουμε το με το, διάνυσμα με μηδενικά. Έτσι ελαχιστοποιείται σημαντικά ο αριθμός των παραμέτρων Σχέση με την Logistic Παλινδρόμηση Στην ειδική περίπτωση, η softmax Παλινδρόμηση εκφυλίζεται σε Λογιστική Παλινδρόμηση. Πιο συγκεκριμένα: (2.22) Εκμεταλλευόμενοι το γεγονός της υπερ-παραμετροποίησης της hypothesis, και θέτοντας για καθεμία από τις δυο παραμέτρους, παίρνουμε: (2.23) [27]

28 Αντικαθιστώντας το με μια νέα παράμετρο παρατηρούμε ότι η softmax προβλέπει τις πιθανότητες για τη μια κλάση ως και για την άλλη ως, όπως δηλαδή και η Λογιστική Παλινδρόμηση.[11] [16] [34] 2.2 Επιβλεπόμενη μάθηση Όπως συμβαίνει και στον άνθρωπο, προκειμένου να λειτουργήσει ορθά ένα ΝΔ, πρέπει να εκπαιδευτεί. Η εκπαίδευση συνίσταται στον προσδιορισμό των κατάλληλων συντελεστών βάρους μεταξύ των συνάψεων και πραγματοποιείται με τη βοήθεια αλγορίθμων, κατάλληλων για την εκμάθηση του περιβάλλοντος και την βελτίωση της απόδοσής του. Η εκμάθηση ενός ΝΔ, γίνεται σταδιακά και σύμφωνα με καθορισμένους κανόνες. Μια επαναληπτική διαδικασία ρυθμίζει τα βάρη στις συνάψεις μεταξύ των επιπέδων κι έτσι το ΝΔ αποκτά περισσότερη γνώση. Το υποκεφάλαιο 3.1 είναι αφιερωμένο στην επιβλεπόμενη μάθηση (supervised learning), ενώ οι αλγόριθμοι που χρησιμοποιεί αναλύονται στη συνέχεια Μοντέλο Νευρωνικών Δικτύων Ένα νευρωνικό δίκτυο μπορεί να δημιουργηθεί συνενώνοντας πολλούς νευρώνες ή αλλιώς units, έτσι ώστε η έξοδος του ενός να αποτελεί είσοδο σε κάποιον άλλο όπως φαίνεται στην εικόνα 8: Εικόνα 8 Τεχνητό Νευρωνικό Δίκτυο, ως συνδυασμός ενός συνόλου τεχνητών νευρώνων. [28]

29 Στο σχήμα της εικόνας 8, χρησιμοποιούμε κυανόχρωμους κύκλους για να υποδείξουμε τις εισόδους του δικτύου. Οι όροι καλούνται bias units και αντιστοιχούν σε βοηθητικούς όρους στη διαδικασία μετατόπισης της καμπύλης εκμάθησης κατά ένα επιθυμητό ποσό. Αναλυτικότερη επεξήγηση θα δοθεί πιο κάτω. Το επίπεδο (layer) που βρίσκεται αριστερά του δικτύου ονομάζεται επίπεδο εισόδου (input layer) και το layer στα δεξιά ονομάζεται επίπεδο εξόδου (output layer). Τα ενδιάμεσα επίπεδα, σε αυτό το παράδειγμα, ονομάζονται κρυφά επίπεδα (hidden layers) γιατί οι τιμές τους δεν εμφανίζονται στα δεδομένα εκπαίδευσης. Επίσης να τονίσουμε ότι σε αυτό το παράδειγμα έχουμε τρείς νευρώνες-εισόδου (δεν μετράνε τα bias units), τρείς κρυφούς νευρώνες και ένα νευρώνα εξόδου. Έστω ο αριθμός των επιπέδων στο δίκτυό μας στη συγκεκριμένη περίπτωση. Κάθε επίπεδο συμβολίζεται με, έτσι ώστε να είναι το επίπεδο εισόδου και το επίπεδο εξόδου. Το νευρωνικό μας δίκτυο έχει ως παραμέτρους τα, όπου μπορούμε να γράψουμε χαρακτηρίζοντας την παράμετρο (βάρος) σχετιζόμενη με τη σύνδεση μεταξύ του -οστού νευρώνα στο επίπεδο και του -οστού νευρώνα στο επίπεδο. Επίσης με χαρακτηρίζουμε τα bias σχετικά με τον νευρώνα και το επίπεδο. Στο παράδειγμά μας, έχουμε και. Τα bias terms δεν έχουν εισόδους, καθώς πάντα προσθέτουν τη μονάδα. Με συμβολίζουμε τον αριθμό των νευρώνων στο επίπεδο (τα bias terms δεν μετρούνται). Γράφουμε για να χαρακτηρίσουμε τις ενεργοποιήσεις (activations) του νευρώνα στο επίπεδο. Για γράφουμε, επίσης, για το -οστό διάνυσμα εισόδου. Δεδομένων W και b παραμέτρων, το ΝΔ προσδιορίζει την hypothesis function η οποία εξάγει ένα πραγματικό αριθμό. Συγκεκριμένα, οι υπολογισμοί που εκτελεί το ΤΝΔ δίνονται από: (2.24) Στη συνέχεια, συμβολίζουμε με το συνολικό σταθμισμένο άθροισμα εισόδων του νευρώνα στο επίπεδο, συμπεριλαμβανομένων των bias terms, δηλαδή: (2.25) [29]

30 έτσι ώστε. Οδηγούμαστε σε μια συμπαγέστερη παράσταση αναπτύσσοντας την συνάρτηση ενεργοποιήσεων και εφαρμόζοντάς την σε μορφή διανυσμάτων,, οπότε μπορούμε να γράψουμε: (2.26) Αυτό καλείται διάδοση στα επόμενα επίπεδα- προς τα εμπρός διάδοση του σήματος (forward propagation). Δεδομένου ότι συμβολίζουμε ως την είσοδο, τότε δεδομένων των ενεργοποιήσεων του -οστού επιπέδου, μπορούμε να υπολογίσουμε του ως εξής: (2.27) Έτσι, οργανώνοντας δηλαδή σε πίνακες τις παραμέτρους, κάνουμε χρήση ιδιοτήτων της γραμμικής άλγεβρας επιταχύνοντας τους υπολογισμούς. Το γεγονός ότι χρησιμοποιήσαμε στο παράδειγμα αυτό μια fully-connected διάταξη (σύνδεση όλων των νευρώνων ενός επιπέδου με όλους τους νευρώνες του επόμενου επιπέδου), δε σημαίνει ότι είναι και η μοναδική. Υπάρχουν διάφορες αρχιτεκτονικές, βολικές για διαφορετικά προβλήματα, ωστόσο η fully-connected αρχιτεκτονική είναι η πιο συνηθισμένη. Τέλος, αναφέρουμε ότι η έξοδος δεν περιλαμβάνει αναγκαστικά ένα στοιχείο, αλλά μπορεί να εξάγει πολύ περισσότερες από μια τιμές, για παράδειγμα όσος και ο αριθμός των κλάσεων. [16] [34] Πολύ-επίπεδα Νευρωνικά Δίκτυα Ας φανταστούμε ένα πρόβλημα, εκμάθησης υπό επίβλεψη όπου έχουμε πρόσβαση σε επισημασμένα δεδομένα εκπαίδευσης. Τα ΝΔ μας δίνουν έναν τρόπο ορισμού μιας περίπλοκης (complex), μη γραμμικής (non-linear) μορφής της hypothesis, με παραμέτρους που μπορούμε να προσαρμόσουμε στα δεδομένα μας. Για να περιγράψουμε τα νευρωνικά δίκτυα, θα ξεκινήσουμε από το απλούστερο δυνατό ΝΝ, αυτό που περιλαμβάνει έναν μόνο νευρώνα. Θα χρησιμοποιήσουμε το ακόλουθο σχήμα (εικόνα 9) για να δείξουμε έναν νευρώνα: [30]

31 Εικόνα 9 Νευρώνας, κομμάτι ενός ευρύτερου νευρωνικού δικτύου. Αυτός ο νευρώνας είναι μια υπολογιστική μονάδα η οποία δέχεται ως είσοδο τα (και έναν όρο), ενώ στην έξοδο δίνει (2.28) όπου καλείται συνάρτηση ενεργοποιήσεων (activation function). Σε αυτό το σημείο θα χρησιμοποιήσουμε την σαν μια σιγμοειδή συνάρτηση (2.29) Έτσι, ο νευρώνας αντιστοιχεί απόλυτα σε μια χαρτογράφηση εισόδου-εξόδου ορισμένη από τη Λογιστική Παλινδρόμηση. Άλλη μια καλή επιλογή τέτοιας συνάρτησης είναι η υπερβολική εφαπτομένη : (2.30) Πρόσφατα, προέκυψε μια νέα απλή συνάρτηση, η Ανορθωτική Γραμμική Συνάρτηση (Rectified Linear Function), η οποία δουλεύει καλύτερα στην πράξη, ειδικά στα Deep Neural Networks. Αυτή η συνάρτηση είναι διαφορετική από τις και sigmoid γιατί δεν οριοθετείται και δεν είναι συνεχώς διαφορίσιμη. Η μορφή της δίνεται από την (2.31) ενώ ένα διάγραμμα με τις τρείς αυτές συναρτήσεις δίδεται στην εικόνα 10: [31]

32 Εικόνα 10 Κοινό διάγραμμα των συναρτήσεων tahn, sigmoid και ReLU. Η είναι απλά μια sigmoid σε διαφορετική κλίμακα και η έξοδός της είναι αντί του της. Η rectified linear είναι γραμμική ενώ κάθε αρνητική τιμή του αντιστοιχεί αυτόματα σε. Σημειώνουμε, ότι γενικά αντί τις μονάδας ( ) στο πιο πάνω άθροισμα, προτιμούμε να προσθέτουμε κάποια σταθερά, έτσι ώστε η τιμή της να μπορεί να μεταβάλλεται ανάλογα με τις ανάγκες του προβλήματος. Τέλος, κάποιες ταυτότητες που θα χρειαστούμε στη συνέχεια είναι οι εξής: Αν, η sigmoid συνάρτηση, τότε η παράγωγός της είναι. Για την περίπτωση της, ισχύει η. Η rectified linear function έχει κλίση 0 όταν, σε κάθε άλλη περίπτωση. Υπάρχει μια απροσδιοριστία στο, όμως αυτό δεν προκαλεί προβλήματα στην πράξη, επειδή παίρνουμε μέσο όρο από πολλά δείγματα εκπαίδευσης.[3][4] [20][27] Αλγόριθμος οπισθοδιάδοσης σφάλματος Σε αυτή την παράγραφο θα αναλύσουμε τον αλγόριθμο οπισθοδιάδοσης σφάλματος ή αλλιώς Backpropagation Algorithm. Ας υποθέσουμε ότι έχουμε ένα training set δείγματα εκπαίδευσης. Μπορούμε τώρα να εκπαιδεύσουμε το ΝΝ με χρήση της batch gradient descent. Λεπτομερέστερα, για ένα δείγμα εκπαίδευσης, προσδιορίζουμε την συνάρτηση κόστους ως προς ένα τέτοιο δείγμα: από [32]

33 (2.32) Το οποίο είναι το μισό του τετραγωνικού σφάλματος της συνάρτησης κόστους. Δεδομένου ενός σετ εκπαίδευσης από δείγματα, προσδιορίζουμε την ολική συνάρτηση κόστους: (2.33) Ο πρώτος όρος της είναι το μέσο τετραγωνικό σφάλμα. Ο δεύτερος όρος είναι ένας όρος κανονικοποίησης ή αλλιώς weight decay ο οποίος τείνει να ελαττώσει το πλάτος των βαρών και βοηθάει στην αποφυγή υπέρ-προσαρμογής (over-fitting). Εικόνα 11 Οπισθοδιάδοση σφάλματος στην περίπτωση του απλού perceptron. Σημειώνουμε ότι ο όρος κανονικοποίησης δεν εφαρμόζεται στα bias terms και θυμίζει κατά κάποιον τρόπο την Bayesian regularization όπου τοποθετούμε Gaussian prior στις παραμέτρους και εκτελούμε Maximum Likelihood Estimation. Η weight decay παράμετρος, ρυθμίζει τη σημαντικότητα των δυο όρων, ενώ η γραφή χαρακτηρίζει το τετραγωνικό σφάλμα για ένα συγκεκριμένο δείγμα. Η συγκεκριμένη συνάρτηση κόστους χρησιμοποιείται τόσο για προβλήματα ταξινόμησης (classification) όσο και για προβλήματα παλινδρόμησης. Για το πρόβλημα ταξινόμησης, ας ορίσουμε ως ή τις δυο κλάσεις (θυμίζουμε ότι η sigmoid εξάγει τιμές στο διάστημα και η στο ). Για τα προβλήματα παλινδρόμησης κανονικοποιούμε έτσι ώστε η έξοδος να βρίσκεται στο διάστημα ή ανάλογα με την περίπτωση της συνάρτησης ενεργοποίησης. Στόχος μας είναι να ελαχιστοποιήσουμε την σαν συνάρτηση [33]

34 των και. Προκειμένου να εκπαιδεύσουμε το ΝΝ, θα αρχικοποιήσουμε τα βάρη και τα bias terms σε μικρές τιμές κοντά στο μηδέν (σύμφωνα με την κανονική κατανομή για κάποιο μικρό, ας πούμε 0.01) και στη συνέχεια εφαρμόζουμε τον αλγόριθμο βελτιστοποίησης όπως για παράδειγμα την batch gradient descent. Εικόνα 12 Η gradient descent σχηματικά σε μια διάσταση. Εάν η είναι μη-κυρτή συνάρτηση, η gradient descent είναι ευαίσθητη σε τοπικά ακρότατα στην πράξη η gradient descent δουλεύει συνήθως πολύ καλά. Τέλος, σημειώνουμε ότι είναι σημαντικό η αρχικοποίηση των παραμέτρων να γίνει τυχαία και να μη θέσουμε όλα τα στοιχεία ίσα με. Αν αρχικοποιήσουμε όλα τα βάρη με τον ίδιο αριθμό τότε κατά το τέλος της εκπαίδευσης, το ΝΝ, σε όλα του τα επίπεδα θα έχει μάθει την ίδια συνάρτηση με την είσοδο (πιο συγκεκριμένα τα βάρη θα είναι όλα ίσα για όλες τις τιμές του, έτσι ώστε για κάθε είσοδο ). Η τυχαία αρχικοποίηση επομένως, εξυπηρετεί στο σπάσιμο της συμμετρίας (symmetry breaking). Μια επανάληψη της gradient descent ενημερώνει τις παραμέτρους φαίνεται παρακάτω: και όπως (2.34) όπου είναι ο ρυθμός εκμάθησης. Το κλειδί βρίσκεται στον υπολογισμό των μερικών παραγώγων πιο πάνω. Θα περιγράψουμε τώρα πως ο αλγόριθμος backpropagation μπορεί να χρησιμοποιηθεί για να υπολογιστούν οι και, οι μερικές παράγωγοι της συνάρτησης κόστους ως προς ένα δείγμα [34]

35 της. Όταν υπολογιστούν αυτές οι μερικές παράγωγοι, προκύπτει ότι για την κλίση λαμβάνουμε: (2.35) Οι δυο παραστάσεις πιο πάνω διαφέρουν ελάχιστα γιατί ο όρος κανονικοποίησης εφαρμόζεται μόνο στα και όχι στα. Δεδομένου ενός δείγματος θα τρέξουμε πρώτα μια εκπαίδευση προς τα εμπρός ( forward pass ) για να υπολογίστούν όλες οι ενεργοποιήσεις διαμέσου του δικτύου, συμπεριλαμβανομένης της hypothesis. Τότε για κάθε ενεργοποίηση σε κάθε επίπεδο, θα υπολογίσουμε έναν όρο σφάλματος το οποίο μετράει πόσο κάθε στοιχειώδης νευρώνας είναι υπεύθυνος για κάθε σφάλμα της εξόδου. Για κάποιο νευρώνα, μπορούμε να υπολογίσουμε απευθείας τη διαφορά μεταξύ των ενεργοποιήσεων του δικτύου και της πραγματικής τιμής-στόχου και να τη χρησιμοποιήσουμε για να προσδιορίσουμε το (όπου το επίπεδο είναι το επίπεδο εξόδου). Για τα ενδιάμεσα, κρυφά επίπεδα, υπολογίζουμε τα σταθμικό άθροισμα των σφαλμάτων των νευρώνων που χρησιμοποιεί ένα είσοδο. Λεπτομερέστερα, δίνουμε τον αλγόριθμο backpropagation: με ένα 1. Εκτελούμε ένα feedforward pass, υπολογίζοντας τις ενεργοποιήσεις για τα επίπεδα, μέχρι και το. Για κάθε μονάδα εξόδου στο επίπεδο (output layer), θέτουμε: σαν 2. Για για κάθε νευρώνα στο επίπεδο, θέτουμε 3. Υπολογίζουμε τις ζητούμενες μερικές παραγώγους ως εξής: (2.36) [35]

36 Τελικά, ξαναγράφουμε τον αλγόριθμο χρησιμοποιώντας πίνακες διανύσματα. Θα χρησιμοποιήσουμε το σύμβολο για να συμβολίσουμε το εσωτερικό γινόμενο έτσι ώστε αν, τότε. Ο αλγόριθμος τότε γράφεται: 1. Εκτελούμε ένα feedforward πέρασμα, υπολογίζοντας τις ενεργοποιήσεις για τα επίπεδα και ως το επίπεδο εξόδου με χρήση των εξισώσεων για forward propagation 2. Για το layer εξόδου θέτουμε 3. Για θέτουμε 4. Υπολογίζουμε τις ζητούμενες παραγώγους (2.37) Για διευκόλυνση να σημειώσουμε ότι μπορούμε να κάνουμε χρήση των ταυτοτήτων που αναφέρθηκαν νωρίτερα, όπως για παράδειγμα για την sigmoid όπου έχουμε (2.38) Κάνοντας εφαρμογή για μια επανάληψη: 1. Θέτουμε για όλα τα. 2. Για μέχρι, Υπολογίζουμε με back propagation τα: θέτουμε ενώ και, 3. Ενημέρωση των παραμέτρων (2.39) [36]

37 Για να εκπαιδεύσουμε τώρα το ΝΝ, εκτελούμε επανειλημμένα την gradient descent για να μειώσουμε τη συνάρτηση. [16][30] [34] Βελτιστοποίηση: Stochastic Gradient Descent Οι μέθοδοι υπολογισμού σε πακέτα (batch methods), όπως αυτή της ελάχιστης απαίτησης σε μνήμη BFGS, χρησιμοποιούν ολόκληρο το σετ εκπαίδευσης για τον υπολογισμό με επαναληπτικές μεθόδους, οι οποίες συγκλίνουν σε κάποιο τοπικό ακρότατο. Χρησιμοποιούν ελάχιστες παραμέτρους (όπως πχ η minfunc) ωστόσο αν τα δεδομένα είναι πολλά η διαδικασία μπορεί να γίνει εξαιρετικά αργή. Ένα ακόμη πρόβλημα της βελτιστοποίησης κατά πακέτα (batch optimization) είναι ότι δε δίνεται η δυνατότητα της ενημέρωσης των δεδομένων online. Η Stochastic Gradient Descent (SGD) αντιμετωπίζει τα δυο αυτά ζητήματα ακολουθώντας την αρνητική κλίση με βάση ένα η περισσότερα δείγματα. Η χρήση της SGD από το ΝΝ δικαιολογείται από το υψηλό κόστος του back propagation τρέχοντάς το σε όλο το σετ. Η SGD ξεπερνάει αυτό το κόστος και μπορεί να οδηγήσει σε ταχεία σύγκλιση. Εικόνα 13 Δύο περιπτώσεις υπολογισμού της SGD για διαφορετικά σημεία εκκίνησης. Η standard gradient descent ενημερώνει τις παραμέτρους αντικειμενικής συνάρτησης (objective function) ως εξής: της (2.40) το οποίο κόστος προσεγγίζεται αξιολογώντας το κόστος και την κλίση σε όλο το σετ εκπαίδευσης. Η stochastic gradient descent (SGD) καταργεί αυτούς τους υπολογισμούς και υπολογίζει την κλίση για όλες τις παραμέτρους χρησιμοποιώντας μόνο ένα ή λίγα δείγματα. Η ενημέρωση πλέον γίνεται ως εξής: (2.41) με ένα ζευγάρι από το σετ εκπαίδευσης. [37]

38 Γενικά η ενημέρωση της SGD υπολογίζεται ως προς μερικά δείγματα ή ένα μικρό σετ (minibatch) από δεδομένα εκπαίδευσης αντί για ένα μόνο. Αυτό γίνεται γιατί πρώτον μειώνει την διακύμανση και οδηγεί σε μεγαλύτερη σταθερότητα και δεύτερον επιτρέπει στους υπολογισμούς να εκμεταλλευτούν βελτιστοποιημένες λειτουργίες πινάκων και την επιτάχυνση των διαδικασιών. Τυπικά το μέγεθος του minibatch είναι 256, αλλά μπορεί να ποικίλει ανάλογα με τις ανάγκες του προβλήματος και την αρχιτεκτονική του συστήματος. Στην SGD η παράμετρος εκμάθησης (learning rate) είναι συχνά πολύ μικρότερη απ την περίπτωση της batch gradient descent γιατί υπάρχει μεγαλύτερη διακύμανση στις ενημερώσεις. Η επιλογή του κατάλληλου ρυθμού εκμάθησης (learning rate) και σχεδίασης (πχ η προσαρμογή του ρυθμού εκμάθησης κατά τη διάρκεια εκτέλεσης του αλγορίθμου) μπορεί να αποδειχθεί δύσκολη. Μια σίγουρη μέθοδος είναι η επιλογή αρκετά μικρού, έτσι η εκμάθηση να γίνει μεν αργά, αλλά σταθερά και στη συνέχεια μείωση του στο μισό καθώς η σύγκλιση γίνεται με μικρότερο ρυθμό. Μια άλλη καλή μέθοδος είναι η αξιολόγηση ενός σετ μετά από κάθε epoch και η προσαρμογή του ρυθμού εκμάθησης όταν η αλλαγή στην objective είναι κάτω από ένα κατώφλι. Αυτό δίνει καλή σύγκλιση σε τοπικά ακρότατα. Εικόνα 14 Αριστερά: μεγάλο learning rate (overshoting), δεξιά: μικρό learning rate, πολλές επαναλήψεις μέχρι τη σύγκλιση και εγκλοβισμός σε τοπικό ελάχιστο. Τέλος, αναφέρουμε ότι καλό είναι τα δεδομένα να δίνονται τυχαία στον αλγόριθμο για να υπάρχει καλή σύγκλιση Ορμή - Momentum Εάν η objective έχει μακριές ρηχές χαράδρες οδηγώντας σε τοπικό μέγιστο και απότομα τοιχώματα στα πλάγια, η SGD θα αρχίσει να ταλαντώνεται καθώς η αρνητική κλίση θα δείχνει συνέχεια προς το ελάχιστο. Προκειμένου να αντιμετωπισθεί αυτό το πρόβλημα χρησιμοποιείται η momentum η οποία ορίζει τις ενημερώσεις ως εξής: [38]

39 (2.42) Στην πιο πάνω εξίσωση είναι η τρέχουσα ταχύτητα-διάνυσμα ίδιας διάστασης με το διάνυσμα-παράμετρο. Η παράμετρος είναι μικρότερη από άλλες περιπτώσεις αφού το μέτρο της κλίσης θα είναι μεγαλύτερο. Τελικά το προσδιορίζει πόσες επαναλήψεις οι προηγούμενες κλίσεις συσσωματώνουν στην παρούσα ενημέρωση. Τυπικά το τίθεται 0.5 μέχρι να σταθεροποιηθεί η αρχική εκμάθηση και στη συνέχεια αυξάνει στο 0.9 ή και μεγαλύτερο. [30] [34] Αρχιτεκτονική των CNN Όπως αναφέραμε και προηγουμένως, ένα CNN αποτελείται από ένα ή περισσότερα επίπεδα συνέλιξης (convolutional layers) συχνά μαζί με ένα επίπεδο υποδειγματοληψίας (πχ pooling) ακολουθούμενο από ένα ή περισσότερα fully connected επίπεδα όπως συμβαίνει και σε ένα κλασικό πολύ-επίπεδο ΝΔ. Η αρχιτεκτονική του CNN σχεδιάζεται έτσι ώστε να εκμεταλλεύεται την 2D δομή των εικόνων εισόδου ή άλλα 2D σήματα όπως σήματα ήχου. Αυτό επιτυγχάνεται με τοπικές συνδέσεις και κατάλληλα βάρη ακολουθούμενα από pooling προκειμένου να δημιουργηθούν ανεξάρτητα μετατοπίσεων (translation invariant) χαρακτηριστικά. Άλλο ένα προσόν των CNNs είναι ότι είναι ευκολότερα στην εκπαίδευση και έχουν πολύ λιγότερες παραμέτρους από τα fully connected NΔ με τον ίδιο αριθμό κρυφών επιπέδων. Η είσοδος σε ένα επίπεδο συνέλιξης είναι μια εικόνα όπου το είναι το ύψος και το πλάτος της εικόνας ενώ το ο αριθμός των καναλιών πχ για RGB. Ο Το επίπεδο συνέλιξης έχει φίλτρα (kernels) μεγέθους όπου είναι μικρότερο από τη διάσταση της εικόνας και μπορεί να είναι ίδιου μεγέθους με τα κανάλια ή μικρότερου και μπορεί να ποικίλει για κάθε kernel. Το μέγεθος των φίλτρων προκαλεί τοπικά συνδεδεμένη δομή όπου καθένα συνελίσσεται με κάθε εικόνα για να παράγουν χάρτες χαρακτηριστικών (feature maps) μεγέθους. Κάθε χαρακτηριστικό υποδειγματοληπτείται τυπικά με mean ή max pooling σε συνεχείς περιοχές όπου το παίρνει τυπικά τιμές μεταξύ 2 και κοντά στο 5 για μεγάλες εικόνες εισόδου. Πριν ή μετά το pooling layer ακολουθεί μια προσθήκη bias και sigmoidal μη γραμμικότητα σε κάθε χάρτη χαρακτηριστικών. Το σχήμα της εικόνας 15 παρουσιάζει ένα πλήρη layer από CNN αποτελούμενο από επίπεδα συνέλιξης και pooling. Οι νευρώνες με το ίδιο χρώμα έχουν παρόμοια βάρη. [39]

40 Εικόνα 15 Το πρώτο layer από ένα CNN με pooling. Τα units με το ίδιο χρώμα έχουν tied weights και units με διαφορετικό χρώμα παριστάνουν διαφορετικά φίλτρα. Μετά από κάποιο επίπεδο συνέλιξης μπορεί να υπάρχει οποιοσδήποτε αριθμός από fully connected επίπεδα.[18][19][20] Οπισθοδιάδοση σε πολύ-επίπεδα CNN Ας υποθέσουμε ότι είναι ο όρος σφάλματος για το επίπεδο στο δίκτυο με συνάρτηση κόστους όπου είναι οι παράμετροι και είναι τα δεδομένα εκπαίδευσης και οι επισημάνσεις. Αν το -οστό επίπεδο είναι πυκνά συνδεδεμένο με το -οστό επίπεδο, τότε το σφάλμα για το -οστό επίπεδο υπολογίζεται ως εξής: (2.43) και οι κλίσεις είναι: (2.44) Εάν το -οστό επίπεδο είναι συνελικτικό και υπο-δειγματοληπτικό τότε το σφάλμα διαδίδεται σαν: (2.45) Ο αριθμός δείχνει τον αριθμό του φίλτρου και είναι η παράγωγος της συνάρτησης ενεργοποίησης. Το σφάλμα πρέπει να διαδοθεί μέσω του επιπέδου [40]

41 pooling υπολογίζοντας το σφάλμα ως προς κάθε νευρώνα εισερχόμενων στο επίπεδο pooling. (2.46) Όπου είναι η είσοδος στο -οστό επίπεδο και λειτουργία είναι η εικόνα εισόδου. Η είναι η valid συνέλιξη μεταξύ της -οστής εισόδου στο - οστό επίπεδο και του σφάλματος ως προς το -οστό φίλτρο. [15] [34] 2.3 Μάθηση χωρίς επίβλεψη Στην περίπτωση της μάθησης χωρίς επίβλεψη (unsupervised learning), στο δίκτυο δε δίνονται οι επιθυμητοί στόχοι-επισημάνσεις (labels) όπως γινόταν στην επιβλεπόμενη μάθηση κι επομένως η διαδικασία εκμάθησης χρησιμοποιεί άλλες τεχνικές για να καταλήξει σε κάποιο εκπαιδευμένο μοντέλο γνώσης. Έτσι, στην περίπτωση της μάθησης χωρίς επίβλεψη το δίκτυο ψάχνει για τάσεις ή κανονικότητες στα σήματα εισόδου με σκοπό οι έξοδοι να έχουν τα ίδια χαρακτηριστικά με τις εισόδους. Το παράδειγμα των Autoencoders που ακολουθεί, αποτελεί κλασικό παράδειγμα μάθησης χωρίς επίβλεψη και θα χρησιμοποιηθεί για την περεταίρω ανάπτυξη του θέματος Autoencoders Μέχρι στιγμής περιγράψαμε εφαρμογές των ΝΔ σε εκπαίδευση υπό επίβλεψη, όπου έχουμε προσθέσει ετικέτες. Τώρα ας υποθέσουμε ότι έχουμε μόνο ένα σετ από δεδομένα εκπαίδευσης χωρίς επισημάνσεις (unlabeled training examples), όπου. Ένας Autoencoder NN είναι ένας χωρίς επίβλεψη αλγόριθμος που εφαρμόζει backpropagation, θέτοντας τις τιμές στόχου (target values) να είναι ίσες με τις εισόδους. Για παράδειγμα,. Πιο κάτω στην εικόνα 16 φαίνεται ένας Autoencoder: [41]

42 Εικόνα 16 Τυπική τοπολογία ενός Autoencoder. Ο Autoencoder, προσπαθεί να μάθει τη συνάρτηση. Με άλλα λόγια μαθαίνει μια προσέγγιση της ταυτοτικής συνάρτησης, έτσι ώστε η έξοδος να είναι όμοια με την είσοδο. Η εκμάθηση της ταυτοτικής συνάρτησης μπορεί να φαίνεται τετριμμένη, όμως περιορίζοντας τα hidden units στο δίκτυο μπορούμε να ανακαλύψουμε πολύ ενδιαφέρουσες δομές στα δεδομένα. Σαν παράδειγμα, ας σκεφτούμε ότι η είσοδος είναι οι τιμές πυκνότητας pixels από μια εικόνα, οπότε και υπάρχουν κρυφοί νευρώνες στο. Έχουμε επίσης. Εφόσον υπάρχουν μόνο 50 κρυφοί νευρώνες το δίκτυο μαθαίνει μια συμπιεσμένη αναπαράσταση της εισόδου. Σκοπός του είναι να μπορεί να ανακατασκευάσει την εικόνα από αυτές τις 50 τιμές των κρυφών νευρώνων με την αρχική μορφή των 100 pixels. Εάν η είσοδος ήταν τελείως τυχαία πχ κάθε προέρχεται από μια ανεξάρτητη και όμοια κατανεμημένη Gaussian άλλων χαρακτηριστικών τότε αυτή η συμπίεση θα ήταν πιο δύσκολη. Εάν όμως υπάρχει κάποιο μοτίβο στα δεδομένα, για παράδειγμα κάποιες από τις εισόδους χαρακτηριστικών είναι συσχετισμένες, τότε ο αλγόριθμος θα ανακαλύψει αυτή τη συσχέτιση. Στην πραγματικότητα, αυτός ο αλγόριθμος συνήθως μαθαίνει μια αναπαράσταση μειωμένων διαστάσεων των δεδομένων, όπως ακριβώς συμβαίνει και με την PCA. [18] [34] Σύγκριση PCA με Autoencoders Η ιδέα στην οποία βασίζεται η PCA, είναι ότι τα δεδομένα υψηλών διαστάσεων μπορούν να αναπαρασταθούν συνήθως με λιγότερες διαστάσεις χωρίς να χαθεί πολύτιμη πληροφορία. Αυτό συμβαίνει γιατί οι άξονες που επιλέγονται είναι ορθογώνιοι κι έτσι δεν υπάρχει μεγάλη διακύμανση στα δεδομένα. Η διαδικασία της προβολής, λοιπόν, μπορεί να γίνει είτε με τις κλασικές μεθόδους της PCA, είτε με χρήση ενός ΝΔ με ένα κρυφό επίπεδο όπου όμως οι κρυφοί νευρώνες αλλά και οι νευρώνες εξόδου είναι γραμμικοί. Το πλεονέκτημα που έχει η τελευταία [42]

43 τεχνική είναι ότι μπορούμε να γενικεύσουμε την τεχνική χρησιμοποιώντας ένα Deep NN όπου η αναπαράσταση με χαρακτηριστικά είναι μη γραμμική συνάρτηση της εισόδου. Έτσι, ο ανασχηματισμός των δεδομένων από τα χαρακτηριστικά είναι επίσης μη γραμμική συνάρτηση των χαρακτηριστικών. Αυτό μας δίνει τη δυνατότητα να χειριζόμαστε δεδομένα εισόδου που απλώνονται πάνω σε καμπύλη πχ σε μια παραβολή αντί για ευθεία, όπως φαίνεται και στην εικόνα 17. Εικόνα 17 Αριστερά δεδομένα που απλώνονται σε ευθεία, Δεξιά δεδομένα που απλώνονται σε καμπύλη. Αναπαριστούμε τα δεδομένα με βάση την προβολή τους στην καμπύλη, κάτι το οποίο καθιστά την μέθοδο πολύ αποτελεσματική. Έστω ότι έχουμε ένα σετ δεδομένων με Ν διαστάσεις και θέλουμε να το αναπαραστήσουμε με λιγότερες από Ν διαστάσεις. Βρίσκουμε λοιπόν Μ ορθογώνιες διευθύνσεις στις οποίες τα δεδομένα έχουν τη μεγαλύτερη διακύμανση αγνοώντας τις υπόλοιπες, μικρής διακύμανσης διαστάσεις. Οι Μ ορθογώνιες διαστάσεις σχηματίζουν έναν υπο-χώρο του αρχικού Ν διαστάσεων και κάθε σημείο δεδομένων Ν διαστάσεων αναπαρίσταται στον νέο υπο-χώρο από τις προβολές του πάνω στις Μ νέες διαστάσεις. Χάνουμε λοιπόν την πληροφορία που σχετίζεται με τις υπόλοιπες Ν-Μ διαστάσεις, αλλά εφόσον η διακύμανση σε αυτές είναι μικρή η πληροφορία που χάνεται είναι άνευ σημασίας. Ανακατασκευάζουμε χρησιμοποιώντας την μέση τιμή των Ν-Μ διαστάσεων που έχουν χαθεί, δηλαδή πάνω σε όλα τα δεδομένα. Το σφάλμα ανακατασκευής (reconstruction error) είναι το άθροισμα, πάνω σε όλες τις διαστάσεις που έχουν χαθεί, των τετραγωνικών διαφορών του σημείου δεδομένων από την μέση τιμή. [43]

44 Εικόνα 18 Δύο κύριοι άξονες (PCA). Έστω ότι έχουμε δεδομένα δυο διαστάσεων, κατανεμημένων σε μια επιμηκυμένη Gaussian κατανομή όπως στο σχήμα πιο πάνω. Τα δυο βέλη δείχνουν την διακύμανση των δεδομένων στους δυο κάθετους άξονες. Αν ένα σημείο στο (4,0) θέλουμε να το προβάλουμε πάνω σε έναν άξονα, ο άξονας που θα χρησιμοποιήσουμε θα έχει την κατεύθυνση της συνιστώσας με τη μεγαλύτερη διακύμανση, δηλαδή την προβολή του πάνω στον άξονα με τη μεγαλύτερη διακύμανση των δεδομένων. Για να μιμηθούμε αυτή την ελάττωση διαστάσεων της PCA, κατασκευάζουμε έναν Autoencoder η έξοδος του οποίου είναι τα ανακατασκευασμένα δεδομένα, προσπαθώντας να ελαχιστοποιήσουμε το σφάλμα ανακατασκευής. Το δίκτυο του Autoencoder, θα έχει στο κέντρο του ένα επίπεδο με Μ κρυφούς νευρώνες, οι οποίοι αντιστοιχούν στις κύριες (ορθογώνιες) συνιστώσες της PCA. Στο πιο κάτω σχήμα παρουσιάζεται η γενική μορφή ενός τέτοιου Autoencoder. [44]

45 Εικόνα 19 Γενική μορφή ενός Autoencoder. Στο πιο πάνω σχήμα (εικόνα 19) παρατηρούμε ότι έχουμε ένα διάνυσμα εισόδου (input vector), τα χαρακτηριστικά διανύσματα που προκύπτουν ή αλλιώς κώδικας (code) και το διάνυσμα εξόδου (output vector). Αρχικά έχουμε ένα διάνυσμα εισόδου, το οποίο προβάλλουμε πάνω στα χαρακτηριστικά διανύσματα και από εκείνα αναδημιουργούμε το διάνυσμα εξόδου. Σκοπός αυτού είναι το διάνυσμα εξόδου να είναι όσο το δυνατό όμοιο με το διάνυσμα εισόδου. Καταλαβαίνουμε σε αυτό το σημείο γιατί τα χαρακτηριστικά διανύσματα αποτελούν μια συμπιεσμένη μορφή του διανύσματος εισόδου. Εάν οι κρυφοί νευρώνες και οι νευρώνες εξόδου είναι γραμμικοί, τότε το ΝΔ μαθαίνει μια γραμμική συνάρτηση των δεδομένων και το τετραγωνικό σφάλμα ανακατασκευής ελαχιστοποιείται. Αυτός ακριβώς είναι και ο σκοπός της PCA, θα λάβουμε ακριβώς το ίδιο σφάλμα ανακατασκευής που θα λαμβάναμε στην περίπτωση της PCA. Οι κρυφοί νευρώνες ωστόσο, δεν θα είναι ακριβώς ίδιοι με τις κύριες συνιστώσες. Θα αναπαριστούν τον ίδιο χώρο με τις Μ κύριες συνιστώσες αλλά μπορεί να υπάρχει περιστροφή ή και στρέβλωση των αξόνων, ενώ οι άξονες που προκύπτουν δεν είναι απαραίτητα ορθογώνιοι. Αντίθετα με την PCA, οι άξονες αυτοί θα έχουν ίση διακύμανση, ωστόσο αναπαριστούν αρκετά καλά τον χώρο Μ διαστάσεων που υπολογίζεται από την PCA. Από αυτή την άποψη αυτό το δίκτυο ισοδυναμεί με τον υπολογισμό κυρίων συνιστωσών από την PCA. Η συγκεκριμένη μέθοδος προτιμάται στην περίπτωση πολλών δεδομένων εκπαίδευσης, όμως το βασικό της πλεονέκτημα είναι η δυνατότητα γενίκευσης της PCA. Εάν χρησιμοποιήσουμε μη γραμμικά επίπεδα πριν και μετά τον code layer, θα έχουμε τη δυνατότητα να αναπαραστήσουμε δεδομένα που εξαπλώνονται πάνω σε μια καμπύλη αντί για ευθεία γραμμή σε έναν πολυδιάστατο χώρο. Και αυτό [45]

46 αποτελεί σημαντική γενίκευση, μέσα από ένα δίκτυο που χρησιμοποιεί αλγορίθμους επιβλεπόμενης μάθησης για εκμάθηση χωρίς επίβλεψη. Το κομμάτι του Autoencoder μεταξύ των χαρακτηριστικών διανυσμάτων και της εισόδου αποτελεί έναν κωδικοποιητή (encoder), ο οποίος παίρνει το διάνυσμα εισόδου και το κωδικοποιεί σε χαρακτηριστικά με μη γραμμική μέθοδο. Το κομμάτι μεταξύ των χαρακτηριστικών και της εξόδου αποτελεί έναν αποκωδικοποιητή (decoder), ο οποίος λαμβάνει μη γραμμικά χαρακτηριστικά και τα αποκωδικοποιεί δημιουργώντας μια αναπαράσταση της εισόδου-διάνυσμα. Μετά το πέρας της εκπαίδευσης, έχουμε αντιστοιχήσεις και στις δυο αυτές κατευθύνσεις Οπτικοποίηση αποτελεσμάτων Τα παραπάνω αφορούν την περίπτωση όπου οι κρυφοί νευρώνες είναι λιγότεροι σε αριθμό από τον αριθμό των pixels. Ωστόσο, ακόμη και στην περίπτωση περισσοτέρων κρυφών νευρώνων ακόμη και από τον αριθμό των pixels, μπορούμε και πάλι να μάθουμε ενδιαφέροντα χαρακτηριστικά. Ένα τέτοιο παράδειγμα είναι η εισαγωγή ενός Sparsity constrain. Μπορούμε να σκεφτούμε ως ενεργό (active) ένα νευρώνα όταν η τιμή του είναι κοντά στο 1 και ανενεργό (inactive) όταν είναι κοντά στο 0 στην περίπτωση της sigmoid, ενώ στο 1 και -1 για την. Υπενθυμίζουμε ότι με συμβολίζεται η ενεργοποίηση του κρυφού νευρώνα στον Autoencoder. Ωστόσο αυτός ο συμβολισμός δεν δηλώνει ρητά ποια είναι η είσοδος η οποία οδήγησε σε αυτή την ενεργοποίηση. Γράφουμε λοιπόν συμβολίζοντας την ενεργοποίηση αυτού του κρυφού νευρώνα όταν στο δίκτυο δίνεται μια συγκεκριμένη είσοδος. Έστω, (2.47) η μέση ενεργοποίηση του κρυφού νευρώνα (μέσος όρος στο σετ εκπαίδευσης). Θα επιβάλουμε τον περιορισμό (2.48) όπου είναι μια παράμετρος sparsity, τυπικά μικρής τιμής γύρω στο. Με άλλα λόγια θέλουμε μια μέση ενεργοποίηση κάθε κρυφού νευρώνα να είναι κοντά [46]

47 στο. Προκειμένου να το πετύχουμε αυτό, θα πρέπει οι ενεργοποιήσεις των κρυφών νευρώνων να είναι κοντά στο. Για να το πετύχουμε αυτό, προσθέτουμε έναν extra penalty όρο στην objective ο οποίος επιβάλει τη μικρή απόκλιση της από την. Υπάρχουν διάφοροι τέτοιοι όροι, ο συνηθέστερος και απλούστερος όμως είναι: (2.49) Εδώ ο αριθμός των νευρώνων στο κρυφό επίπεδο είναι και ο δείκτης αθροίζει πάνω στους κρυφούς νευρώνες του δικτύου. Επίσης αυτός ο όρος penalty μπορεί να γραφεί ως (2.50) Όπου είναι η Kullback-Leibler (KL) απόκλιση μεταξύ μιας Bernoulli τυχαίας μεταβλητής με μέση τιμή και μιας άλλης Bernoulli τυχαίας μεταβλητής μέσης τιμής. Η KL-απόκλιση είναι μια κλασική συνάρτηση μέτρησης του πόσο διαφορετικές είναι οι μεταβλητές. Αυτή η συνάρτηση, έχει την ιδιότητα αν, διαφορετικά αυξάνει μονότονα καθώς η αποκλίνει από την. Για παράδειγμα, στην εικόνα 20 έχουμε και η γραφική παράσταση για και όλες τις τιμές του. [47]

48 Εικόνα 20 Μέση ενεργοποίηση των hidden units, έναντι της KL απόκλισης. Παρατηρούμε ότι η KL απόκλιση φτάνει σε ένα ελάχιστο, δηλαδή, όταν και εκτινάσσεται στο άπειρο όταν η πλησιάζει το 0 ή το 1. Έτσι, ελαχιστοποιώντας αυτό τον όρο penalty καταφέρνουμε το στο. Η συνάρτηση κόστους τώρα είναι: να βρίσκεται κοντά (2.51) όπου η ορίσθηκε νωρίτερα και το ελέγχει τα βάρη του sparsity penalty όρου. Ο όρος εξαρτάται από τα, εφόσον παριστά τη μέση ενεργοποίηση του hidden unit, ενώ η ενεργοποίηση κάθε κρυφού νευρώνα εξαρτάται από τις παραμέτρους και. Προκειμένου να ενσωματώσουμε αυτό τον όρο στον υπολογισμό της κλίσης, αντί της σχέσεως (2.52) χρησιμοποιούμε τη σχέση: [48]

49 (2.53) Ένα πρόβλημα που προκύπτει, είναι ότι πρέπει να γνωρίζουμε το για τον υπολογισμό αυτού του όρου. Έτσι, χρειάζεται να υπολογίσουμε τις μέσες ενεργοποιήσεις μέσω ενός αρχικού περάσματος πάνω στα δεδομένα του σετ εκπαίδευσης, πριν εκτελέσουμε την backpropagation σε οποιοδήποτε δείγμα.[4][6][34] Οπτικοποίηση ενός εκπαιδευμένου Autoencoder Θα οπτικοποιήσουμε τη συνάρτηση που υπολογίστηκε από τον κρυφό νευρώνα, η οποία εξαρτάται από τα βάρη, με χρήση δισδιάστατης εικόνας. Πιο συγκεκριμένα, φανταζόμαστε το σαν ένα μη γραμμικό χαρακτηριστικό της εισόδου. Το ερώτημα που μπορούμε να θέσουμε σε αυτό το σημείο, είναι: ποια είναι η εικόνα-είσοδος η οποία θα οδηγήσει στη μέγιστη ενεργοποίηση του ; (Πιο ρητά, ποιο είναι το χαρακτηριστικό για το οποίο ψάχνει ο συγκεκριμένος κρυφός νευρώνας ;) Για να δώσουμε μια μη τετριμμένη απάντηση σε αυτό το ερώτημα, θα πρέπει να επιβάλουμε κάποιους περιορισμούς στο. Αν υποθέσουμε ότι η είσοδος είναι κανονικοποιημένη και διέπεται από τον κανόνα, τότε η είσοδος η οποία ενεργοποιεί μέγιστα τον κρυφό νευρώνα δίνεται θέτοντας το pixel ίσο με: (2.54) Οπτικοποιώντας την εικόνα που σχηματίζεται από αυτές τις πυκνότητες φωτεινότητας, αρχίζουμε να καταλαβαίνουμε τα χαρακτηριστικά για τα οποία ψάχνει ο κρυφός νευρώνας. Ένα τέτοιο παράδειγμα, για έναν sparse Autoencoder, εκπαιδευμένο με 100 κρυφούς νευρώνες και εισόδους των pixels, φαίνεται στην εικόνα 21: [49]

50 Εικόνα 21 Φίλτρα τα οποία έχουν υπολογιστεί από ένα ΝΝ ή έναν Autoencoder και χρησιμεύουν στην ανίχνευση χαρακτηριστικών. Κάθε τετράγωνο στην πιο πάνω εικόνα, δείχνει την είσοδο η οποία ενεργοποιεί μέγιστα κάθε έναν από τους 100 κρυφούς νευρώνες. Παρατηρούμε ότι κάθε κρυφός νευρώνας έχει μάθει να ανιχνεύει ακμές σε διαφορετικές θέσεις και προσανατολισμούς. Αυτά τα χαρακτηριστικά, είναι χρήσιμα για εργασίες όπως η αναγνώριση αντικειμένων και άλλες εργασίες τεχνητής όρασης. Αυτό ισχύει και για άλλες μορφές σημάτων, όπως ο ήχος, όπου ο αλγόριθμος μαθαίνει εξίσου σημαντικά χαρακτηριστικά αναπαραστάσεις γι αυτούς τους χώρους, ενώ τα χαρακτηριστικά που έμαθε ο autoencoder, αποκτήθηκαν μέσω εκπαίδευσης με Whitened δεδομένα από φυσικές εικόνες. Το Whitenning είναι ένα βήμα προ-επεξεργασίας το οποίο αφαιρεί πλεονάζουσα πληροφορία από τα δεδομένα προκαλώντας γειτονικά pixel να είναι λιγότερο συσχετισμένα.[6][34] [50]

51 2.4 Γενικά συμπεράσματα για τα CNN Πρόσφατη έρευνα έχει δείξει ότι οι γενικοί περιγραφείς που προκύπτουν από CNN είναι πολύ δυνατοί. Πιο συγκεκριμένα, η επιβεβαίωση προέρχεται από την εφαρμογή ανοιχτού κώδικα μοντέλου OverFeat και της βάσης δεδομένων ILSVRC13 (Large Scale Visual Recognition Challenge 2013, pixels), η οποία περιλαμβάνει 200 κλάσεις αντικειμένων και τα χαρακτηριστικά της φαίνονται στον πίνακα 1: Πίνακας 1 Χαρακτηριστικά βάσης δεδομένων ILSVRC Τα χαρακτηριστικά που προέκυψαν, χρησιμοποιήθηκαν για να καλύψουν το ευρύ φάσμα εργασιών αναγνώρισης όπως για παράδειγμα ταξινόμηση αντικειμένων, αναγνώριση σκηνικού, αναγνώριση λεπτής υφής, αναγνώριση χαρακτηριστικών και ανάκτηση εικόνας με εφαρμογή σε ποικίλα σετ δεδομένων. Τα αποτελέσματα ήταν εντυπωσιακά και η απόδοση βελτιωμένη σε σύγκριση με άλλα προηγμένα συστήματα οπτικής ταξινόμησης σε διάφορα σετ δεδομένων. Για παράδειγμα, η ανάκτηση εικόνας απαιτεί πολύ λιγότερη μνήμη σε σχέση με τις κλασικές μεθόδους. Τα αποτελέσματα επετεύχθησαν με χρήση ενός γραμμικού SVM ταξινομητή (ή L 2 απόσταση στην περίπτωση της ανάκτησης), εφαρμοσμένη σε αναπαράσταση χαρακτηριστικών μεγέθους 4096 τα οποία εξήχθησαν από την έξοδο κάποιου επιπέδου του δικτύου. Τα δεδομένα που μπορούν να χρησιμοποιηθούν, ποικίλουν σε διαστάσεις εικόνων και μπορεί να έχουν ανεπαρκείς επισημάνσεις (labels) ή και καθόλου με σκοπό την εκπαίδευση ενός δικτύου ή ακόμη και την προσαρμογή του σε μια ήδη υπάρχουσα εργασία. Ένα άλλο τέτοιο παράδειγμα ανοιχτού κώδικα βιβλιοθήκης είναι το DeCAF (Deep Convolutional Activation Features), η οποία εξειδικεύεται στην διεξαγωγή χαρακτηριστικών διανυσμάτων για εκμάθηση οπτικών συστημάτων. Συμπεραίνουμε λοιπόν, ότι τα CNN θα πρέπει να αποτελούν τον πρώτο υποψήφιο σε κάθε εργασία αναγνώρισης. [1][2] [51]

52 2.5 Ταξινόμηση εικόνων Σε ένα μεγάλο αριθμό εφαρμογών επεξεργασίας εικόνας, ένας αλγόριθμος ταξινόμησης εικόνων μπορεί να αποτελέσει ένα πανίσχυρο εργαλείο στα χέρια ενός προγραμματιστή, ενώ άλλες εφαρμογές είναι αφιερωμένες στην ταξινόμηση των εικόνων. Σκοπός της επεξεργασίας εικόνας σε αυτές τις περιπτώσεις αποτελεί η αντικατάσταση ορισμένων ποσοτήτων των εικόνων όπως για παράδειγμα οι μεταβολές της φωτεινότητας σε διάφορες περιοχές της εικόνας ή ο ρυθμός μεταβολής της, με άλλες κατανοητές από τους αλγορίθμους οι οποίες ονομάζονται χαρακτηριστικά. Συνήθως, τα χαρακτηριστικά προκύπτουν από την ανάλυση των εικόνων και τη χρήση κανόνων λήψης αποφάσεων, βασισμένων στην στατιστική θεωρία. Σε αυτό το σημείο χωρίζουμε τη διαδικασία ταξινόμησης σε δυο κατηγορίες, ανάλογα με το είδος των χαρακτηριστικών που χρησιμοποιούνται. Στην περίπτωση που τα χαρακτηριστικά προκύπτουν απ το φασματικό περιεχόμενο των εικόνων, μιλάμε για φασματική αναγνώριση προτύπων. Αντιθέτως, η ανάλυση βασισμένη σε γεωμετρικά χαρακτηριστικά του περιεχομένου των εικόνων όπως γεωμετρικά σχήματα, μεγέθη των αντικειμένων κλπ ονομάζεται χωρική αναγνώριση προτύπων. Σκοπός της διαδικασίας είναι η ταξινόμηση όλων των pixel μιας εικόνας σε μια κλάση από ένα σύνολο δυνατών κατηγοριών εικόνων. Τα κατηγοριοποιημένα δεδομένα που προκύπτουν, μπορούν να χρησιμοποιηθούν για την παραγωγή θεματικών χαρτών κατηγοριών εικόνων ή στατιστικών χαρακτηριστικών σχετικών με κάθε κλάση με σκοπό την αναγνώριση παρουσίας τους σε άλλες εικόνες. Ανάλογα με την αλληλεπίδραση του αναλυτή και του υπολογιστή κατά την διαδικασία της ταξινόμησης, χωρίζουμε την ταξινόμηση σε δυο κατηγορίες: Ταξινόμηση υπό επίβλεψη και ταξινόμηση χωρίς επίβλεψη. Στη συνέχεια θα γίνει σύντομη αναφορά σε αυτές τις δύο κατηγορίες ενώ θα αναφερθούν και μερικά απλά παραδείγματα αλγορίθμων υλοποίησής τους Επιβλεπόμενη ταξινόμηση Οι δυο μεγάλες κατηγορίες αλγορίθμων ταξινόμησης διαφέρουν ως προς τον τρόπο δημιουργίας των κλάσεων, των μεθόδων διαχωρισμού τους και την αντιστοίχιση των διανυσμάτων σε αυτές τις κλάσεις. Κατά τη διαδικασία της επιβλεπόμενης ταξινόμησης, γίνεται χρήση επισημάνσεων (labels) οι οποίες λαμβάνονται από τα δεδομένα εκπαίδευσης. Ο αλγόριθμος ταξινόμησης εκπαιδεύεται από τον χρήστη να κατατάσσει τις εικόνες σε κάποια κλάση ανάλογα με το περιεχόμενό της, ενώ σφάλματα ταξινόμησης υπολογίζονται και χρησιμοποιούνται απ τον αλγόριθμο για την βελτίωσή του. Κατά τη διαδικασία της εκπαίδευσης, ζητούμενο είναι ο εντοπισμός και η καταγραφή των χαρακτηριστικών που αντιπροσωπεύουν κάθε κλάση ενώ οι χρησιμοποιούμενες εικόνες θα πρέπει να πληρούν συγκεκριμένα χαρακτηριστικά, όπως η γεωμετρική διόρθωση των εικόνων [52]

53 προκειμένου να μην περιλαμβάνεται πολλή περιττή πληροφορία, η επιλογή περιοχών εκπαίδευσης αντίστοιχη σε κάθε κλάση, φασματική ανάλυση των εικόνων, υπολογισμός στατιστικών κάθε περιοχής και τελικά η εφαρμογή αλγορίθμου ταξινόμησης και έλεγχος της ορθής λειτουργίας του. Εικόνα 22 Διάγραμμα επιβλεπόμενης ταξινόμησης. Στο πιο πάνω διάγραμμα (εικόνα 22) φαίνεται η διαδικασία που ακολουθείται στην επιβλεπόμενη ταξινόμηση. Αρχικά ορίζεται το σετ δεδομένων εκπαίδευσης, δημιουργούνται οι επισημάνσεις των κλάσεων και τέλος γίνεται η εκμάθηση και ταξινόμηση των εικόνων. Στη συνέχεια, παρουσιάζονται ορισμένοι αλγόριθμοι που αφορούν το κομμάτι της ταξινόμησης, δηλαδή το βήμα 3 του πιο πάνω σχήματος Μέγιστη πιθανοφάνεια Κατά την εφαρμογή του αλγορίθμου μεγίστης πιθανοφάνειας, υπολογίζονται τα κέντρα των κλάσεων στις οποίες ανήκουν τα δεδομένα εκπαίδευσης, ενώ κατά τη διαδικασία της ταξινόμησης υπολογίζονται οι πιθανότητες της κάθε εικόνας να ανήκει σε ένα από αυτά τα κέντρα-κλάσεις. Κύριο χαρακτηριστικό αποτελεί η μέση τιμή, ενώ η μεταβολή της φωτεινότητας για κάθε φασματική κατηγορία αποτελεί άλλο ένα βασικό στοιχείο. Ο μεγάλος όγκος των δεδομένων εκπαίδευσης παίζει βασικό ρόλο στην ορθή εκπαίδευση του αλγορίθμου ενώ ο υπολογισμός των πιθανοτήτων εξάγεται από τον τύπο: (2.55) όπου το είναι η πιθανότητα ένα pixel να ανήκει στην κλάση, ο πίνακας συμμεταβλητότητας ή αλλιώς πίνακας συνδιακύμανσης για την κλάση, και απόσταση Mahalanobis, η απόσταση δηλαδή του pixel και του κέντρου της κατηγορίας. Το υπό εξέταση pixel κατατάσσεται στην κατηγορία στην οποία εμφανίζει μέγιστη a posteriori πιθανότητα, με χρήση του τύπου: [53]

54 (2.56) όπου είναι η a posteriori πιθανότητα κάποιο pixel να ανήκει στην κατηγορία, η a Priori πιθανότητα να ανήκει στην κλάση και ο αριθμός των κλάσεων. Η βάση αυτής της θεωρίας είναι ότι κάθε pixel ανήκει σε μια συγκεκριμένη κλάση, ενώ όλες οι κλάσεις είναι ισοπίθανες και περιγράφονται από κανονικές κατανομές Αλγόριθμος του Παραλληλεπιπέδου Ένας απ τους απλούστερους αλγορίθμους ταξινόμησης εικόνας, είναι αυτός του παραλληλεπιπέδου. Ο αλγόριθμος χρησιμοποιεί έναν απλό κανόνα για τη λήψη αποφάσεων ταξινόμησης βασισμένο σε ένα κατώφλι -διαστάσεων, το οποίο σχετίζεται με την τυπική απόκλιση της μέσης τιμής των pixel και σχηματίζει ένα παραλληλεπίπεδο -διαστάσεων. Έτσι, εάν η τιμή ενός pixel βρίσκεται εντός των ορίων του παραλληλεπιπέδου, το συγκεκριμένο pixel ταξινομείται στην εκάστοτε κατηγορία. Εάν δεν βρίσκεται εντός των ορίων ενός εκ των παραλληλεπιπέδων, τότε παραμένει αταξινόμητο ενώ εάν βρεθεί εντός περισσοτέρων του ενός παραλληλεπιπέδων, κατατάσσεται στην κατηγορία των επικαλυπτόμενων κλάσεων. Στην περίπτωση του αλγορίθμου του παραλληλογράμμου, η ακρίβεια της ταξινόμησης εξαρτάται από την ακρίβεια με την οποία έχουν οριστεί τα όρια των παραλληλεπιπέδων. Απαιτείται λοιπόν καλή γνώση των ορίων κάθε κλάσης από τον εκπαιδευτή του ταξινομητή με βάση τα στατιστικά στοιχεία κάθε κλάσης. Ο αλγόριθμος του παραλληλεπιπέδου χρησιμοποιείται από εφαρμογές που απαιτούν αυξημένη ταχύτητα, όμως η ακρίβεια του ταξινομητή είναι σαφώς μειωμένη σε σχέση με άλλες τεχνικές αφού μεγάλος αριθμός pixels μπορεί να παραμένει αταξινόμητος ή και να ανήκει σε πάνω από μια κλάσεις. Ένα παράδειγμα των ορίων ενός τέτοιου ταξινομητή φαίνεται στην εικόνα 23. [54]

55 Εικόνα 23 Διαχωρισμός των κλάσεων με χρήση του κανόνα παραλληλογράμμου, και τα όρια αυτών Αλγόριθμος της ελάχιστης απόστασης Ο αλγόριθμος της ελάχιστης αποστάσεως χρησιμοποιεί έναν αριθμό από μέσα διανύσματα ίσο με τον αριθμό των κλάσεων, όπου κάθε μέσο διάνυσμα είναι το χαρακτηριστικό διάνυσμα της συγκεκριμένης κλάσεως. Για κάθε εικόνα προς ταξινόμηση λαμβάνεται το μέσο διάνυσμά της και στη συνέχεια υπολογίζεται η απόστασή του από όλα τα μέσα διανύσματα, με εκείνο το μέσο διάνυσμα που έχει την ελάχιστη απόσταση από την εικόνα να ταξινομεί την εικόνα-διάνυσμα ως στοιχείο της συγκεκριμένης κλάσεως Απόσταση Mahalanobis Η τεχνική της ταξινόμησης εικόνων-διανυσμάτων με βάση την απόσταση Mahalanobis, είναι όμοια με αυτή της ταξινόμησης με βάση την ευκλείδεια απόσταση, όπου όμως στην εξίσωση υπολογισμού των αποστάσεων πέραν των μέσων τιμών περιλαμβάνεται και ένας πίνακας συμμεταβλητότητας S, δηλαδή ο πίνακας συσχέτισης των διανυσμάτων-δεδομένων. Έτσι, για ένα διάνυσμα μέσων τιμών, ένα διάνυσμα-δεδομένο και τον πίνακα συσχέτισης S, ορίζουμε το μέγεθος της απόστασης Mahalanobis ως: (2.57) Κατά τη διαδικασία της εκπαίδευσης ενός ταξινομητή βασισμένο στην απόσταση Mahalanobis, ορίζονται οι περιοχές που ανήκουν σε κάθε κλάση, ο πίνακας συσχέτισης και τέλος οι αποστάσεις για κάθε άγνωστο διάνυσμα-εικόνα. Κάθε [55]

56 τέτοιο διάνυσμα-εικόνα ταξινομείται στην κλάση από την οποία απέχει ελάχιστη απόσταση σε σχέση με τις υπόλοιπες. 2.6 Μη επιβλεπόμενη ταξινόμηση Κατά την μη επιβλεπόμενη ταξινόμηση, η εκπαίδευση του ταξινομητή γίνεται με βάση τα χαρακτηριστικά των δεδομένων εκπαίδευσης όπως για παράδειγμα κάποιες τάσεις στα σήματα των εικόνων εκπαίδευσης και το φασματικό τους περιεχόμενο αντί των επισημάνσεων που χρησιμοποιούνται από την επιβλεπόμενη ταξινόμηση. Γι αυτό τον λόγο τα δεδομένα εκπαίδευσης θα πρέπει να είναι πολλά και μετά το πέρας της εκπαίδευσης, ο χρήστης του ταξινομητή να δώσει κάποιο νόημα στις κλάσεις που έχουν δημιουργηθεί μέσω του διαχωρισμού τους, πχ ονομάζοντάς τες. Το πλεονέκτημα της μεθόδου αυτής είναι ότι δεν απαιτείται γνώση των ιδιοτήτων των δεδομένων εκπαίδευσης, ενώ χρειάζεται μεγάλη προσοχή για την αποφυγή κινδύνων όπως πχ υπερ-εκπαίδευση (overfitting), δημιουργία κλάσεων χωρίς κάποια ιδιαίτερη σημασία κλπ. Εικόνα 24 Διάγραμμα ανεπίβλεπτης ταξινόμησης. Στο διάγραμμα της εικόνας 24, φαίνεται η διαδικασία εκπαίδευσης ενός ταξινομητή με μη επιβλεπόμενη διαδικασία εκμάθησής του. Αρχικά δημιουργούνται τα κέντρα των κλάσεων (clusters) στα οποία πρόκειται να ταξινομηθούν τα pixels που περιλαμβάνονται στις εικόνες προς ταξινόμηση, σε μερικές περιπτώσεις αλγορίθμων μπορεί να συμβεί και επαναπροσδιορισμός των κέντρων των κλάσεων ενώ στη συνέχεια γίνεται η ταξινόμηση των εικόνων η οποία μπορεί επίσης να οδηγήσει σε ανακατανομή των κέντρων των κλάσεων Απλός αλγόριθμος ταξινόμησης Ο απλός αλγόριθμος ταξινόμησης χρησιμοποιεί ένα μέρος των δεδομένων εκπαίδευσης προκειμένου να δημιουργήσει τις κλάσεις, ο αριθμός των οποίος καθορίζεται από κάποιον χρήστη και αποτελεί το πρώτο πέρασμα του [56]

57 αλγορίθμου επί των δεδομένων. Κατά το δεύτερο πέρασμα του αλγορίθμου, γίνεται χρήση της ελάχιστης απόστασης προκειμένου να ταξινομηθούν τα υπόλοιπα δεδομένα και να αναπροσαρμοστούν τα κέντρα των κλάσεων. Αν και ο αλγόριθμος αυτός ανήκει στην κατηγορία μη επιβλεπόμενης ταξινόμησης, υπάρχει απαίτηση από τον χρήστη για τον ορισμό μερικών παραμέτρων, όπως ο αριθμός των κλάσεων, κατώφλι σχετικό με τα όρια μεταξύ των κλάσεων και τον ελάχιστο αριθμό των pixels που απαιτούνται για την ταξινόμηση μιας εικόνας σε μια κατηγορία, καθώς και η απόσταση η οποία οδηγεί στη συγχώνευση δυο κλάσεων Αλγόριθμος ISODATA Ο αλγόριθμος ISODATA αναπτύχθηκε το 1997 με βάση πειραματικά δεδομένα. Ενώ η παρέμβαση ενός χρήστη είναι ελάχιστη, το μόνο που χρειάζεται είναι όπως και στην περίπτωση του απλού αλγορίθμου ο ορισμός μερικών παραμέτρων όπως ο αριθμός των κατηγοριών, ο αριθμός των pixels απαιτούμενων για ταξινόμηση σε μια κλάση, ο αριθμός επαναλήψεων του αλγορίθμου, ο αριθμός ελαχίστων μελών μιας κλάσεως έτσι ώστε αυτή να αποτελεί διακριτή κλάση ειδάλλως απαλείφεται, το τυπικό σφάλμα σ το οποίο θα επιτρέψει τη δημιουργία νέας κλάσεως κλπ. Η διαδικασία εκτέλεσης του αλγορίθμου έχει ως εξής: Καθορισμός της μέσης τιμής κάθε κατηγορίας καθώς και του τυπικού σφάλματος, συνήθως αυτόματα μέσω της μέσης τιμής κάθε καναλιού των εικόνων, ενώ κάποιες φορές μπορεί να γίνει απ τον χρήστη εάν εκείνος διαθέτει σχετική πληροφορία Ταξινόμηση των εικόνων στις διάφορες κλάσεις με χρήση του αλγορίθμου ελάχιστης απόστασης Επανάληψη της διαδικασίας με επαναπροσδιορισμό των μέσων τιμών των κλάσεων, συγχώνευση κλάσεων όπου είναι απαραίτητο ή ακόμη και δημιουργία νέων Ο αλγόριθμος k-means Ο k-means αλγόριθμος είναι ίσως λιγότερο αποδοτικός από τον ISODATA, καθώς μοιάζει με τον ISODATA εκτός του ότι ο ορισμός των κέντρων των κλάσεων είναι αυθαίρετος. Έτσι, αρχικά ο αλγόριθμος ορίζει τα κέντρα των κλάσεων και εκτελεί τον αλγόριθμο ελάχιστης αποστάσεως ώστε να ταξινομήσει τα δεδομένα, ενώ στη συνέχεια επαναπροσδιορίζει τα κέντρα των κλάσεων μέχρις ότου φτάσει σε μια κατάσταση όπου τα κέντρα παραμένουν σταθερά ή έχει πλέον ξεπεράσει τον μέγιστο αριθμό επαναλήψεων που έχει ορισθεί από τον χρήστη. Δεν υπάρχει κάποια μέθοδος που να υποδεικνύει τον σωστό αριθμό επαναλήψεων ή τις τοποθεσίες των αρχικών κέντρων κι έτσι τα αποτελέσματα εξαρτώνται από τη διαίσθηση του χρήστη. [57]

58 2.7 Υβριδική ταξινόμηση εικόνων Τα προβλήματα που αναζητούν λύση στην επεξεργασία εικόνας είναι αρκετά πολύπλοκα και το μέγεθος τον πράξεων που απαιτούνται πολλές φορές βρίσκεται πέραν των δυνατοτήτων των σημερινών υπολογιστών. Σε πολλές περιπτώσεις αναζητούνται υβριδικές λύσεις σε αυτά τα προβλήματα, δηλαδή ένας συνδυασμός μεθόδων που ανήκουν σε διαφορετικές κατηγορίες και πολλές φορές μπορούν να δώσουν πολύ καλύτερα αποτελέσματα από απλούς αλγορίθμους και συνήθως ταχύτερα. Στην περίπτωση της ταξινόμησης εικόνων, η υβριδική προσέγγιση συνίσταται από τη χρήση αλγορίθμων επιβλεπόμενης μάθησης προκειμένου να ορισθούν οι κατηγορίες-κλάσεις στις οποίες ανήκει το περιεχόμενο των εικόνων που θέλουμε να ταξινομήσουμε, ενώ η μη επιβλεπόμενη ταξινόμηση συνεισφέρει ακριβώς στο κομμάτι της ταξινόμησης, δηλαδή την κατανομή των εικόνων στις κατηγορίες που έχουν ορισθεί. Σε κάθε περίπτωση η συνεισφορά της στατιστικής θεωρίας είναι καθοριστική και οι απαιτήσεις σε υπολογιστική ισχύ αυξημένες.[21][22][23][24] [58]

59 Κεφάλαιο 3 Συνελικτικά Νευρωνικά Δίκτυα (CNN) 3.1 Shallow vs. deep architectures Τα Συνελικτικά Νευρωνικά Δίκτυα (ΣΝΔ) ή στα Αγγλικά Convolutional Neural Networks (CNN), χωρίζονται σε δυο μεγάλες κατηγορίες τα Αβαθή Νευρωνικά Δίκτυα (Shallow Neural Networks) και τα Βαθιά Νευρωνικά Δίκτυα (Deep Neural Networks). Ένα συνελικτικό επίπεδο (convolutional layer) είναι ουσιαστικά ένα σύνολο από νευρώνες που εκτελούν συνέλιξη των φίλτρων που έχουν προκαθοριστεί, με την εικόνα-διάνυσμα που δέχονται στην είσοδο. Κάθε επίπεδο μπορεί να περιλαμβάνει νευρώνες που εκτελούν συνέλιξη, διαδικασίες pooling, εισαγωγή μη γραμμικότητας ή ακόμη και κανονικοποίηση, ενώ έχει διακριτές εισόδους και εξόδους. Οι διαστάσεις των φίλτρων που περιλαμβάνουν, ο αριθμός τους και το βάθος τους (αριθμός καναλιών) μπορεί να διαφέρει σημαντικά ανάλογα με το πρόβλημα. 3.2 Παραδοσιακή Προσέγγιση Αναγνώρισης Κατά τον παραδοσιακό τρόπο αναγνώρισης αντικειμένων σε εικόνα ή βίντεο, εικόνες ή αλληλουχία εικόνων (βίντεο) δίνονται σαν είσοδο σε κάποιο σύστημα προκειμένου να εκτελεστεί ο αλγόριθμος αναγνώρισης. Συνήθως δε, τα χαρακτηριστικά που χρησιμοποιούνται για την αναγνώριση είναι κατά βάση χαρακτηριστικά επιλεγμένα από ανθρώπινο παράγοντα, δηλαδή δεν μεσολαβεί κάποια διαδικασία εκμάθησης μέσω της οποίας εκπαιδεύεται ένας ταξινομητής για την εκπλήρωση του σκοπού της ταξινόμησης. Έτσι, από νωρίς έγινε γνωστό ότι το κλειδί στην αναγνώριση και ταξινόμηση, είναι η επιλογή σωστών χαρακτηριστικών και η καλή περιγραφή τους με τις πιο κλασικές πλέον μεθόδους όπως π.χ. SIFT, HOG κλπ. Το ερώτημα που προέκυψε λοιπόν, συνοψίζεται στην ανάγκη για εύρεση μιας διαδικασίας εκμάθησης αυτών των χαρακτηριστικών, χωρίς την ανάγκη παρέμβασης του ανθρώπινου παράγοντα. Μια καλή προσέγγιση και λύση αυτού του προβλήματος, δίνουν τα CNN μέσω της εξαγωγής χαρακτηριστικών από ενδιάμεσα κρυφά επίπεδα. [59]

60 Κάθε Νευρωνικό Δίκτυο, όπως είπαμε και πιο πάνω, αποτελείται από διάφορα επίπεδα τα οποία περιλαμβάνουν τις αντίστοιχες εισόδους και εξόδους. Εφόσον μετά από κάθε τέτοιο επίπεδο η έξοδος αποτελεί μια αναπαράσταση της εισόδου με διαφορετικές (συνήθως μικρότερες) διαστάσεις, μπορούμε να θεωρήσουμε κάθε έξοδο ενός συνελικτικού νευρώνα σαν χαρακτηριστικό διάνυσμα που περιγράφει την αντίστοιχη είσοδο. Το ίδιο μπορεί να υποτεθεί για την έξοδο ενός pooling νευρώνα, η οποία αποτελεί την προέκταση μιας διαδρομής από την είσοδο μιας εικόνας προς το κρυφό επίπεδο συνέλιξης το οποίο εξετάζουμε. Από τη θεωρία γνωρίζουμε ότι τα βάρη στις εισόδους κάθε κρυμμένου επιπέδου πρέπει οπωσδήποτε να είναι τυχαία και επομένως για κάθε είσοδο, η έξοδος ενός συγκεκριμένου νευρώνα θα είναι μοναδική για κάθε εικόνα. Τα χαρακτηριστικά διανύσματα δηλαδή που προκύπτουν ακόμη και από το ίδιο κρυφό επίπεδο, διαφέρουν μεταξύ τους. Εικόνα 25 Shallow Neural Network 3 επιπέδων. Όπως προαναφέρθηκε τα νευρωνικά δίκτυα χωρίζονται σε Shallow και Deep Neural Networks. Στην περίπτωση των Deep NN, ο αριθμός των συνελίξεων μπορεί να είναι σημαντικά αυξημένος και τα χαρακτηριστικά διανύσματα που προκύπτουν να έχουν ελαττωμένες τις διαστάσεις σε μεγάλο ποσοστό, χωρίς όμως να χάνουν την ουσία της πληροφορίας που περιλαμβάνουν. Γενικά, όσο πιο βαθύ είναι το επίπεδο το οποίο εξετάζουμε, τόσο πιο γενικά (global) είναι τα χαρακτηριστικά και πιο αναλλοίωτα. Παρατηρούμε ότι στο τέλος του Δικτύου περιλαμβάνεται πάντα ένας ταξινομητής. Στην εικόνα 26, φαίνεται η γενική εικόνα μιας Deep Architecture, συγκρινόμενη με την προηγούμενη εικόνα ως προς τον αριθμό των επιπέδων. Εικόνα 26 Deep Neural Network Ν επιπέδων. [60]

61 3.3 Εξαγωγή χαρακτηριστικών με συνέλιξη Η λειτουργία των CNN συνοψίζεται στα εξής τέσσερα βήματα: 1. Συνέλιξη της εισόδου με φίλτρα που έχουν προκύψει απ τη διαδικασία εκμάθησης 2. Εφαρμογή μη γραμμικότητας 3. Χωρικό Pooling 4. Κανονικοποίηση (Normalization) Η διαδικασία της εκμάθησης των φίλτρων, γίνεται μέσω του αλγορίθμου backpropagation και θα περιγραφεί αργότερα σε αυτή την εργασία.[9][34] Πλήρως συνδεδεμένα δίκτυα Κατά την εκπαίδευση ενός CΝΝ, πολλές φορές ερχόμαστε αντιμέτωποι με το πρόβλημα της πολυπλοκότητας. Για παράδειγμα, εάν θέλουμε να εκπαιδεύσουμε ένα CΝΝ με εικόνες ή μέχρι και pixels, μια αρχιτεκτονική πλήρως συνδεδεμένη ή αλλιώς fully connected όπου κάθε νευρώνας των κρυφών επιπέδων συνδέεται με την έξοδο όλων των νευρώνων του προηγούμενου επιπέδου, είναι αρκετά απλή και λογική, ενώ είναι υπολογιστικά εφικτό να μάθουμε χαρακτηριστικά για όλη την εικόνα. Ωστόσο, σε μεγαλύτερες εικόνες, όπως για παράδειγμα pixels, η εκμάθηση χαρακτηριστικών για όλη την εικόνα με fully connected αρχιτεκτονική είναι πολύ δύσκολη, αφού έχουμε περίπου 10 4 εισόδους, ενώ αν σκεφτούμε ότι θέλουμε να μάθουμε 100 χαρακτηριστικά προκύπτουν αμέσως 10 6 παράμετροι για εκμάθηση. Οι feedforward και backpropagation αλγόριθμοι θα είναι περίπου 10 2 φορές πιο αργοί σε σχέση με τις εικόνες Τοπικά συνδεδεμένα δίκτυα Μια απλή λύση, είναι αυτή των τοπικά συνδεδεμένων δικτύων (ή αλλιώς Locally Connected Networks), κατά τα οποία μπορούμε να περιορίσουμε τις συνδέσεις μεταξύ των νευρώνων εισόδου και των κρυφών νευρώνων, επιτρέποντας κάθε κρυφό νευρώνα να συνδέεται μόνο με ένα μικρό μέρος των νευρώνων εισόδου. Πιο συγκεκριμένα, κάθε κρυφός νευρώνας θα συνδέεται μόνο με ένα μικρό μέρος συνεχών pixels εισόδου. Το ίδιο συμβαίνει και σε άλλες περιπτώσεις σημάτων όπως ο ήχος ένας νευρώνας εισόδου θα συνδέεται με ένα συγκεκριμένου χρόνου και διάρκειας δείγματος ήχο. Η συγκεκριμένη αρχιτεκτονική είναι εμπνευσμένη από τον τρόπο σύνδεσης του πρώιμου οπτικού συστήματος που απαντάται στη βιολογία, όπου οι νευρώνες [61]

62 στον οπτικό φλοιό έχουν εντοπισμένους δεκτικούς τομείς (πχ αποκρίνονται μόνο σε ερεθίσματα σε μια συγκεκριμένη τοποθεσία) Συνελίξεις Η κεντρική ιδέα στην οποία βασίζονται τα CNN, είναι ότι τα χαρακτηριστικά ενός patch εικόνας, είτε αυτά αφορούν κλίσεις, είτε ακμές κλπ, είναι τοπικά εντοπισμένα. Μερικά από τα πλεονεκτήματα των CNN, είναι η ανεξαρτησία τους ως προς τις μετατοπίσεις της εικόνας σε διάφορες διευθύνσεις (Translation Invariance), ο μικρός αριθμός παραμέτρων (βάρη φίλτρων) ή ακόμη και το μεγάλο βήμα μεταξύ των patches που χρησιμοποιούνται κατά το pooling, το οποίο έχει ως αποτέλεσμα γρηγορότερη εκτέλεση αλγορίθμου και μικρότερες απαιτήσεις μνήμης. Στην εικόνα 27, φαίνεται στα αριστερά η αρχική εικόνα μαζί με το φίλτρο που θα εφαρμόσουμε επ αυτής και στα δεξιά το αποτέλεσμα μετά την εφαρμογή του με χρήση συνέλιξης. Εικόνα 27 Αριστερά η αρχική εικόνα και το φίλτρο, δεξιά αποτέλεσμα συνέλιξης του φίλτρου με την εικόνα. Από τη θεωρία γνωρίζουμε ότι οι φυσικές εικόνες έχουν την ιδιότητα της στατικότητας, δηλαδή η στατιστική που διέπει ένα patch (παράθυρο) της εικόνας είναι η ίδια σε κάθε άλλο μέρος της. Επομένως τα χαρακτηριστικά που μαθαίνουμε για κάποιο patch της εικόνας μπορούν να εφαρμοστούν σε κάθε άλλο μέρος της και μπορούμε να χρησιμοποιήσουμε τα ίδια χαρακτηριστικά για όλα τα patch. Ακριβέστερα, έχοντας μάθει χαρακτηριστικά για μικρά patches (ας πούμε ) τυχαία επιλεγμένα από μια ευρύτερη εικόνα, μπορούμε να εφαρμόσουμε αυτό τον ανιχνευτή χαρακτηριστικών παντού. Αυτό γίνεται παίρνοντας τα χαρακτηριστικά και εκτελώντας συνέλιξη πάνω στην εικόνα με αυτά, παρατηρώντας τις αποκρίσεις ή αλλιώς τα activations σε διαφορετικές τοποθεσίες της εικόνας. [62]

63 Για να δώσουμε ένα παράδειγμα, ας υποθέσουμε ότι έχουμε εκμάθει χαρακτηριστικά για patches από μια εικόνα. Ας υποθέσουμε ακόμη ότι αυτό έχει γίνει με έναν Autoencoder (θα εξηγήσουμε πιο κάτω την έννοια αυτή) και ότι αυτός έχει 100 κρυφούς νευρώνες. Για να πάρουμε τα χαρακτηριστικά για κάθε patch από την εικόνα αρχίζοντας από τα, θα περάσουμε το patch πάνω στην εικόνα μέσω ενός sparse Autoencoder και θα λάβουμε 100 sets των χαρακτηριστικών. Εικόνα 28 Η διαδικασία της συνέλιξης. Δεδομένων μερικών μεγάλων διαστάσεων εικόνων, αρχικά εκπαιδεύουμε έναν sparse Autoencoder σε μικρά patches μεγάλων εικόνων, μαθαίνοντας χαρακτηριστικά, όπου είναι η sigmoid και τα βάρη, τα bias από τους νευρώνες εισόδου στους κρυφούς νευρώνες. Για κάθε patch της μεγάλης εικόνας, υπολογίζουμε την δίνοντας τα πίνακα convolved χαρακτηριστικών. [63], έναν Στη συνέχεια θα περιγράψουμε πώς να κάνουμε pool σε αυτά τα χαρακτηριστικά για να λάβουμε ακόμη καλύτερα αποτελέσματα.[1][3][7][34] Συγκέντρωση (Pooling) Τα επίπεδα συγκέντρωσης (pooling layers) στα CNNs, συνοψίζουν τις εξόδους γειτονικών γκρουπ νευρώνων εντός ενός παραθύρου (patch) με μια αντιπροσωπευτική τιμή, ενώ συνήθως τα γειτονικά παράθυρα δεν επικαλύπτονται. Πρόκειται ουσιαστικά για μια διαδικασία υπο-δειγματοληψίας των δεδομένων ενώ για καλύτερη κατανόηση της διαδικασίας μπορούμε να φανταστούμε ένα επίπεδο pooling σαν ένα πλέγμα pooling νευρώνων τοποθετημένων σε απόσταση pixels, καθένας από τους οποίους συνοψίζει μια περιοχή με κέντρο τον ίδιο τον νευρώνα. Θέτοντας λαμβάνουμε τα κλασικά αποτελέσματα του κοινώς χρησιμοποιούμενου, μη επικαλυπτόμενων παραθύρων pooling, ενώ για λαμβάνουμε τιμές από επικαλυπτόμενα παράθυρα. Το pooling αποτελεί μια πολύ

64 βασική λειτουργία για κάθε CΝΝ, αφού απλοποιεί πολύ τη διαδικασία λόγω της σημαντικής μείωσης των δεδομένων κι επομένως του αριθμού των απαιτούμενων πράξεων. Οι επικρατέστερες κατηγορίες του pooling είναι το max, sum και average pooling, ενώ μπορεί τα παράθυρα που χρησιμοποιούνται να επικαλύπτονται ή και όχι ανάλογα με τις ανάγκες του προβλήματος. Η διαδικασία του pooling, εκτός απ τη μείωση του μεγέθους των δεδομένων, μας δίνει τη δυνατότητα προσθήκης περισσότερης πληροφορίας στην αρχική εικόνα μέσω των αρχικών διαστάσεων ενώ είναι ανεξάρτητο μικρών μετασχηματισμών. Εικόνα 29 Αποτέλεσμα εφαρμογής max pooling και sum pooling πάνω σε εικόνα. Όταν έχουμε πλέον λάβει τα χαρακτηριστικά διανύσματα που περιγράψαμε νωρίτερα, αποφασίζουμε για το μέγεθος των παραθύρων, ας πούμε που θα κάνουμε pool τα δεδομένα. Τότε διαιρούμε τα χαρακτηριστικά μας σε περιοχές και παίρνουμε το μέγιστο (max) ή τον μέσο όρο (mean) του παραθύρου, το οποίο αποτελεί το νέο χαρακτηριστικό μας. Αυτές οι pooled περιοχές μπορούν πλέον να χρησιμοποιηθούν για ταξινόμηση. Μετά την διαδικασία του pooling και αφού έχουμε λάβει τα χαρακτηριστικά, συνήθως θέλουμε να τα χρησιμοποιήσουμε για ταξινόμηση. Στη θεωρία, μπορούμε να χρησιμοποιήσουμε όλα τα χαρακτηριστικά σε έναν ταξινομητή όπως ο softmax classifier, ωστόσο αυτό είναι υπολογιστικά αδύνατο. Ας αναλογιστούμε την περίπτωση εικόνων pixels και 400 χαρακτηριστικά από inputs. Κάθε συνέλιξη φέρει ως αποτέλεσμα μια έξοδο μεγέθους, και εφόσον έχουμε 400 χαρακτηριστικά, προκύπτει ένα διάνυσμα χαρακτηριστικά ανά δείγμα. Η εκμάθηση ενός ταξινομητή με 3+ εκατομμύρια χαρακτηριστικά, μπορεί να γίνει πολύ επίπονη και υπέρ-εξειδικευμένη (over-fitting). Προκειμένου να το διευθετήσουμε, ας ανακαλέσουμε το γεγονός ότι αποφασίσαμε να λαμβάνουμε convolved εικόνες επειδή έχουν την ιδιότητα της στατικότητας, δηλαδή ότι τα χαρακτηριστικά που είναι χρήσιμα σε μια περιοχή της εικόνας, είναι χρήσιμα σε κάθε άλλη περιοχή της. Έτσι, προκειμένου να περιγράψουμε μια μεγάλη εικόνα θα λάβουμε ένα μίγμα στατιστικών των [64]

65 χαρακτηριστικών των παραπάνω εικόνων. Για παράδειγμα, θα μπορούσαμε να λάβουμε έναν μέσο όρο ή τη μέγιστη τιμή ενός συγκεκριμένου χαρακτηριστικού για ένα patch της εικόνας. Έτσι, ελαττώνονται σημαντικά οι διαστάσεις των δεδομένων και πετυχαίνουμε μικρότερο over-fitting. Ονομάζουμε αυτή τη μέθοδο pooling, ή πιο συγκεκριμένα mean pooling και max pooling ανάλογα τη μέθοδο που χρησιμοποιούμε. Στην εικόνα 30 φαίνεται η διαδικασία του pooling: Εικόνα 30 Η διαδικασία του pooling. Εάν κάποιος επιλέξει οι περιοχές που γίνεται το pooling να είναι συνεχόμενες στην εικόνα και λαμβάνει χαρακτηριστικά μόνο από τους ίδιους κρυφούς νευρώνες, τότε αυτοί οι pooling νευρώνες θα γίνουν translation invariant ή αλλιώς ανεξάρτητα μετατοπίσεων της εικόνας. Αυτό σημαίνει ότι το ίδιο χαρακτηριστικό θα ενεργοποιείται ακόμα και όταν η εικόνα υπόκειται μικρές μετατοπίσεις. Συνήθως γι αυτό το λόγο επιδιώκεται τα χαρακτηριστικά μας να είναι ανεξάρτητα μετατοπίσεων, όπως για παράδειγμα στην ανίχνευση αντικειμένων ή την αναγνώριση ήχου.[1][5][10] Μη γραμμικότητα Η εισαγωγή της μη γραμμικότητας (non-linearity) δίνει σοβαρό πλεονέκτημα στα CΝΝ έναντι άλλων γνωστών μεθόδων αντιμετώπισης πολλών προβλημάτων. Σαν παράδειγμα αναφέρουμε την περίπτωση ενός μη γραμμικού συστήματος και την προσπάθεια πρόβλεψης αυτού, όπου οι γραμμικές μέθοδοι αδυνατούν να δώσουν καλά αποτελέσματα, ιδιαίτερα όταν το σύστημα εμφανίζει χαοτική συμπεριφορά. Έτσι, γίνεται αμέσως αντιληπτό το πλεονέκτημα των μη γραμμικών ΝΔ έναντι άλλων γνωστών γραμμικών μεθόδων. Μερικά παραδείγματα μη γραμμικότητας αποτελούν η, η sigmoid και η ευρέως χρησιμοποιούμενη Rectified Linear Unit (ReLU), οι μορφές των οποίων φαίνονται στο πιο κάτω σχήμα (εικόνα 31). [65]

66 Εικόνα 31 Συναρτήσεις εισαγωγής μη γραμμικότητας. Με κόκκινη συμβολίζεται η tanh, με πράσσινο η sigmoid και με μπλε η ReLU. Πιο κατάλληλη θεωρείται η ReLU, για το λόγο ότι απλοποιεί τον αλγόριθμο backpropagation και τον επιταχύνει, εφόσον οι πράξεις που χρειάζεται να εκτελεστούν είναι πολύ λιγότερες.[3] Dropout Υπάρχουν διάφορες μέθοδοι για να μειώσουμε τα σφάλματα εκπαίδευσης ενός Νευρωνικού Δικτύου, όπως για παράδειγμα να συγκρίνουμε τις προβλέψεις πολλών και διαφορετικών μοντέλων. Για μεγάλα Νευρωνικά Δίκτυα των οποίων η εκπαίδευση μπορεί να κρατήσει αρκετές ημέρες αυτή η μέθοδος είναι χρονοβόρα και σε ορισμένες περιπτώσεις ίσως και αδύνατη. Προς αντιμετώπιση αυτού του προβλήματος έχει αναπτυχθεί κάποια μέθοδος σύγκρισης μοντέλων αρκετά αποτελεσματική, το υπολογιστικό κόστος της οποίας είναι πολύ χαμηλό. Η μέθοδος αυτή, η οποία ονομάζεται Dropout συνίσταται στην την ανάθεση ως 0 της εξόδου κάθε κρυφού νευρώνα με πιθανότητα 0.5. Οι νευρώνες που συμμετέχουν με αυτό τον τρόπο στο Dropout δεν συνεισφέρουν στη διάδοση προς τα εμπρός των σημάτων εκπαίδευσης και δεν συμμετέχουν στην διαδικασία του back-propagation. Έτσι, κάθε φορά που μια είσοδος παρουσιάζεται στο Δίκτυο, εκείνο χρησιμοποιεί διαφορετική αρχιτεκτονική αλλά όλες αυτές οι αρχιτεκτονικές μοιράζονται τα ίδια βάρη. Αυτή η τεχνική μειώνει τις περίπλοκες συν-προσαρμογές των νευρώνων κι έτσι το Δίκτυο αποκτά τη δυνατότητα εκμάθησης ισχυρότερων χαρακτηριστικών. Κατά τη διαδικασία της επαλήθευσης (test) χρησιμοποιούμε όλους τους νευρώνες πολλαπλασιάζοντας όμως τις εξόδους τους με 0.5 προκειμένου να [66]

67 πάρουμε τον γεωμετρικό μέσο των κατανομών πρόβλεψης. Τέλος, αναφέρουμε ότι η χρήση του Dropout σχεδόν διπλασιάζει τον αριθμό των επαναλήψεων που απαιτούνται για σύγκλιση.[3] Κανονικοποίηση Η κανονικοποίηση (Normalization), μπορεί να εφαρμοσθεί εντός ενός χαρακτηριστικού ή και μεταξύ ενός συνόλου χαρακτηριστικών και προσφέρει μικρότερη διακύμανση στα δεδομένα. Επίσης μπορεί να εφαρμοσθεί πριν ή μετά το pooling χωρίς ιδιαίτερη διαφορά μεταξύ των περιπτώσεων, ενώ δεν είναι απαραίτητη πάντοτε.[3] Εικόνα 32 Εφαρμογή κανονικοποίησης σε convolved εικόνα. 3.4 Προ-εκπαίδευση Κατά την εκπαίδευση ενός Συνελικτικού Νευρωνικού Δικτύου, η διαδικασία της οπισθοδιάδοσης σφάλματος συνίσταται στη διάδοση κλίσεων στα προηγούμενα επίπεδα του Δικτύου για τη διόρθωση των βαρών των φίλτρων που έχουν υπολογιστεί. Μερικά από τα πρώτα επίπεδα ενός πολύ-επίπεδου Νευρωνικού Δικτύου αλλάζουν ελάχιστα την τιμή τους λόγω της μειωμένης διάδοσης της κλίσης (εκπαιδεύονται ανεπαρκώς) και αυτό μπορεί να αποτελέσει σημαντικό πρόβλημα. Η λύση έρχεται από την διάθεση ενός μεγάλου αριθμού δειγμάτων, τουλάχιστον 5000 δείγματα ανά κλάση και μετά από αρκετό χρόνο εκπαίδευσης το δίκτυο καταφέρνει να αποκτήσει την τελική και αποδοτική του μορφή. Όταν τα δεδομένα εκπαίδευσης είναι ανεπαρκή, απαιτείται προ-εκπαίδευση και η τεχνική που ακολουθείται είναι η παροχή στο Δίκτυο διανυσμάτων-εικόνων μεγάλης βάσης δεδομένων από τομέα σχετικό με την εφαρμογή που θέλουμε να δημιουργήσουμε, ώστε να επέλθει σύγκλιση των παραμέτρων του Δικτύου. Στη συνέχεια, κατά την εκπαίδευση, δίνονται ως είσοδοι εικόνες-διανύσματα από τα δεδομένα που έχουμε στη διάθεσή μας. Στην περίπτωση των εικόνων, ένα επιπλέον βήμα που μπορεί να ακολουθηθεί, είναι η επέκταση της βάσης δεδομένων μέσα από επεξεργασία των εικόνων εκμεταλλευόμενοι του στοιχείου της τοπικότητας των Συνελικτικών Νευρωνικών Δικτύων. Έτσι, για κάθε εικόνα μπορούμε να [67]

68 δημιουργήσουμε μερικά ελαφρώς παραλλαγμένα αντίγραφα, όπου έχουμε αλλάξει τις τιμές αριθμού τυχαίων pixel πάνω στην εικόνα, πχ ανάθεση σε ορισμένα pixel της τιμής 0 ή 1, περιστροφές των εικόνων για ελάχιστες μοίρες (-10 εως +10 μοίρες) και μετατόπιση των εικόνων σε δυο διευθύνσεις με βήμα ένα μικρό αριθμό pixels (translation). Με αυτό τον τρόπο, δίνουμε στο Δίκτυο μια άλλη οπτική της ίδιας πληροφορίας, όπως συμβαίνει και στις εικόνες RGB όπου το Δίκτυο έχει στη διάθεσή του τρείς διαφορετικές εκδοχές της ίδιας εικόνας, με αποτέλεσμα η εκπαίδευσή του να γίνεται πιο αποτελεσματική. Γενικά η προ-εκπαίδευση: Κάνει την βελτιστοποίηση του Δικτύου πιο εύκολη Μειώνει την υπερ-προσαρμογή (overfitting) Σε άλλες μορφές νευρωνικών δικτύων, για παράδειγμα στους Autoencoders και τις RBMs, η προ-εκπαίδευση είναι αρκετά σημαντική αφού ένα από τα θεμελιώδη ζητήματα για την ορθή εκπαίδευσή τους αποτελεί η ανάθεση κατάλληλων αρχικών τιμών των βαρών τους. [68]

69 Κεφάλαιο 4 προβλήματα εικόνων Εφαρμογή CNN σε αναγνώρισης Τα ΝΝ, έχουν χρησιμοποιηθεί κατά καιρούς σε διάφορες εφαρμογές. Μερικά πολύ βασικά παραδείγματα, αποτελούν η πρόγνωση σεισμικών φαινομένων, τάση χρηματιστηριακών μετοχών, υπολογιστική όραση, ακόμα και ασφάλεια στο διαδίκτυο (webots, antivirus κλπ). Στη συγκεκριμένη εργασία, εξετάζεται η περίπτωση επίλυσης προβλημάτων υπολογιστικής όρασης. Πιο συγκεκριμένα, γίνεται προσπάθεια αντιμετώπισης προβλημάτων διαχωρισμού, ταξινόμησης και αναγνώρισης δεδομένων, καθώς και εκπαίδευση με χρήση ΝΝ. Τα ΝΝ που χρησιμοποιήθηκαν στην παρούσα εργασία, όπως έχει ήδη αναφερθεί, είναι συνελικτικά με ποικίλες αρχιτεκτονικές προσαρμοσμένες κάθε φορά στο πρόβλημα που χρίζει αντιμετώπισης. Μερικά αποτελέσματα που πρόκειται να παρουσιαστούν στη συνέχεια, αφορούν την αναγνώριση διάφορων αντικειμένων από εικόνες grayscale και RGB διαφόρων διαστάσεων. Πιο συγκεκριμένα η βάση δεδομένων MNIST of handwritten digits, η οποία περιλαμβάνει εικόνες δείγματα προς εκπαίδευση χειρόγραφων ψηφίων, εικόνων grayscale μεγέθους pixels, καθώς εικόνες διαθέσιμες για test ίδιων διαστάσεων και χαρακτηριστικών, ενώ labels για όλες τις εικόνες είναι διαθέσιμα για εκπαίδευση υπό επίβλεψη. Όσον αφορά την CiFAR-10, τα διαθέσιμα δεδομένα είναι εικόνες RGB, μεγέθους pixels, με εικόνες για εκπαίδευση (5.000 για κάθε κλάση) και (1.000 για κάθε κλάση) προς έλεγχο επιτυχούς εκπαίδευσης. Για την διεξαγωγή των πειραμάτων χρησιμοποιήθηκε το υπολογιστικό πακέτο MatLab 2015b x64 και o Microsoft Visual Studio 2013 professional compiler x86. Ακολουθούν τα αποτελέσματα μαζί με σύντομο σχολιασμό. 4.1 MNIST Η επίλυση του προβλήματος της βάσης δεδομένων MNIST, αφορά τον διαχωρισμό των δεδομένων σε κλάσεις, τέτοιες ώστε όλα τα περιεχόμενα κάθε cluster να ανήκουν στην ίδια κλάση, ενώ ταυτόχρονα θα πρέπει να απέχουν αρκετά από κάθε άλλο cluster. Πιο συγκεκριμένα, κάθε cluster και κατ επέκταση κλάση, θα [69]

70 αποτελείται από εικόνες περιεχομένου ενός χειρόγραφου ψηφίου από το 0 έως και το 9. Θα εκπαιδεύσουμε ένα CNN, ώστε να μπορεί να διαχωρίζει τα δεδομένα μας και δοσμένης εισόδου εικόνας να μπορεί να αναγνωρίζει την κλάση στην οποία ανήκει (αναγνώριση αριθμού τον οποίο περιλαμβάνει η εικόνα). Το συγκεκριμένο πρόβλημα συνίσταται στην επίλυση των εξής υποπροβλημάτων: 1. Είσοδος των δεδομένων εκπαίδευσης στο NΔ 2. Δημιουργία χαρακτηριστικών διανυσμάτων μέσα από τη διαδικασία συνέλιξης με χρήση ενός ή περισσοτέρων συνελικτικών νευρώνων 3. Ταξινόμηση με χρήση της Softmax loss function Δύο διαφορετικές προσεγγίσεις του προβλήματος είναι η χρήση CΝΝ με ένα επίπεδο συνέλιξης, ένα pooling και μία μη γραμμικότητα, σε αντίθεση με την Deep Learning προσέγγιση όπου χρησιμοποιείται ένας πολύ μεγαλύτερος αριθμός ενδιάμεσων, κρυφών, επιπέδων MNIST - Stanford_dl_ex-master Η Shallow προσέγγιση που επιχειρήσαμε, με παραλλαγή κώδικα που παρέχεται ως άσκηση για εισαγωγή στα Συνελικτικά Νευρωνικά Δίκτυα από το Stanford University με το όνομα Programming exercises for the Stanford Unsupervised Feature Learning and Deep Learning Tutorial, συνίσταται στην κατανόηση, παραλλαγή, σχολιασμό και απλοποίηση του παρεχόμενου κώδικα. Στην εικόνα 33, φαίνονται ενδεικτικά αποτελέσματα εξόδου του ΝΝ. Στις εικόνες, φαίνεται το περιεχόμενο των εικόνων εισόδου στο ΝΝ, ενώ οι αριθμοί κάτω από την εικόνα απεικονίζουν την πρόβλεψη του ΝΝ. Οι αριθμοί που σημειώνονται με μαύρο αποτελούν σωστές προβλέψεις, ενώ αυτές με κόκκινο αποτελούν λάθος προβλέψεις. [70]

71 Εικόνα 33 Αποτελέσματα της Shallow αρχιτεκτονικής στην βάση MNIST. Παρατηρούμε, ότι τα αποτελέσματα είναι πολύ καλά, ακόμη και με ένα μόνο επίπεδο συνέλιξης, δηλαδή Shallow αρχιτεκτονικής. Στην εικόνα 34 υπάρχουν 175 αριθμοί εκ των οποίων μόνο 6 έχουν προβλεφτεί λάθος, δηλαδή 6/175 = 3.42% λάθος ή αλλιώς 169/175 = 96.58% επιτυχείς προβλέψεις. Στην πραγματικότητα, στο πιο ευρύ δείγμα τα αποτελέσματά μας δίνουν 97.68% επιτυχία. Διαδικασία Το πρώτο βήμα είναι η φόρτωση των εικόνων και η μετατροπή τους σε μορφή πίνακα-διανύσματος το οποίο μπορούμε να χειριστούμε και να επεξεργαστούμε. Ορίζουμε τις διαστάσεις που θα έχει κάθε εικόνα, τις διαστάσεις των φίλτρων ( ) που θα χρησιμοποιήσουμε, τον αριθμό των φίλτρων και τη διάσταση του παραθύρου pooling για υπό-δειγματοληψία των δεδομένων. Μια συνάρτηση αρχικοποίησης των πινάκων που θα χρησιμοποιηθούν, μας εξασφαλίζει ταχύτερες πράξεις ενώ μετατρέπουμε όλα τα μηδενικά των επισημάνσεων σε δέκα, προκειμένου να συμβολίζουν την 10 η κατηγορία. Σε αυτό το σημείο τελειώνουμε με τις αρχικοποιήσεις και προχωράμε στην εκπαίδευση του νευρωνικού δικτύου. Εκπαίδευση Προκειμένου να εκπαιδεύσουμε το νευρωνικό δίκτυο, ορίζουμε κάποιες επιλογές όπως για παράδειγμα τον αριθμό των εποχών που χρειαζόμαστε για την εκπαίδευση, τον αριθμό των πακέτων εικόνων που θα επεξεργαζόμαστε παράλληλα [71]

72 για εξοικονόμηση μνήμης RAM, μια παράμετρο alpha που αντιπροσωπεύει τον ρυθμό εκμάθησης και την momentum αντιπροσωπευτική του βαθμού στον οποίο εκπαιδεύεται το δίκτυο σε κάθε επανάληψη. Καλείται η συνάρτηση minfuncsgd, μια υλοποίηση της stochastic gradient descent, για τη βελτιστοποίηση των παραμέτρων οι οποίες θα μας δώσουν τις κατάλληλες ενεργοποιήσεις - προβλέψεις των αριθμών που περιέχει κάθε εικόνα και η cnncost (συνάρτηση κόστους) για τη βελτιστοποίηση υπολογισμού της gradient. Forward propagation Το κομμάτι του forward propagation περιλαμβάνει ένα συνελικτικό επίπεδο με 20 νευρώνες συνέλιξης, εισαγωγή μη γραμμικότητας τύπου ReLU και ένα επίπεδο pooling. Κάθε ένα από αυτά δέχεται είτε είσοδο-εικόνα, είτε είσοδοχαρακτηριστικό διάνυσμα με σκοπό την εκτέλεση συνελίξεων ώστε να παραχθούν τα χαρακτηριστικά διανύσματα. Εικόνα 34 Εξαγωγή χαρακτηριστικών από την MNIST με βάση την προτεινόμενη, πολύ απλή αρχιτεκτονική του Stanford University. Στην περίπτωση του επιπέδου συνέλιξης και για το συγκεκριμένο πείραμα, η είσοδος είναι 256 gray-scale εικόνες διαστάσεων pixels, που απεικονίζουν ψηφία απ το 0 έως το 9, γραμμένα στο χέρι. Οι εικόνες, υφίστανται συνέλιξη με 20 φίλτρα διαστάσεων, τα οποία αποτελούν τα βάρη με τα οποία πολλαπλασιάζονται (στην πραγματικότητα υφίστανται συνέλιξη με τις φωτεινότητες των pixels της εικόνας) προκειμένου να περάσουν στο επόμενο επίπεδο και να [72]

73 δώσουν ως αποτέλεσμα πίνακες διαστάσεων =20 pixels. Το αποτέλεσμα περνάει μέσα από μια sigmoid function και προστίθενται τα bias ( ), ενώ οι πίνακες-διανύσματα που προκύπτουν οδηγούνται στο επόμενο στάδιο που είναι το pooling, προκειμένου να μειωθεί ο όγκος των δεδομένων. Η διαδικασία του pooling ουσιαστικά είναι ισοδύναμη με μια υπό-δειγματοληψία των δεδομένων, εφόσον από ένα patch προκύπτει μόνο μια τιμή, η οποία αντιπροσωπεύει το patch σαν το ελάχιστο, μέγιστο ή η μέση τιμή των στοιχείων του. Το τελικό αποτέλεσμα επομένως είναι 20 πίνακες διαστάσεων ( ), για κάθε μια εικόνα από τις 256 συνολικά για κάθε batch. Στο σημείο αυτό, τα δεδομένα που έχουν προκύψει είναι ενεργοποιήσεις και τα οποία οδηγούνται προς τον Softmax layer προς ταξινόμηση και υπολογισμό των back propagation όρων grad[wc,wd,bc,bd]. Με Wc συμβολίζονται οι back propagation όροι του επιπέδου συνέλιξης, προς διόρθωση των βαρών των φίλτρων με τα οποία γίνεται η συνέλιξη των εικόνων. Οι διαστάσεις του Wc είναι 9x9x20 (9x9 κάθε φίλτρο επί 20 εικόνες). Ο πίνακας Wd έχει διαστάσεις 10x2000, δηλαδή 10 κλάσεις, επί 20 ο αριθμός των φίλτρων επι 10x10 τα φίλτρα μετά τη διαδικασία του pooling, και ο backpropagation όρος Wd_grad είναι τα σφάλματα που διορθώνουν τα βάρη των Wd πινάκως και προέρχονται απο τον softmax layer. Οι όροι bc και bd είναι τα bias που προστίθενται μετά απο κάθε συνέλιξη και έχουν διαστάσεις 20x1 ο πρώτος (μια τιμή για το κάθε φίλτρο Wc) και 10x1 ο δέυτερος (μια τιμή για κάθε κλάση). Softmax layer Τα περιεχόμενα του Softmax Layer (εικόνα 35) συνίστανται από μια συνάρτηση Λογιστικής Παλινδρόμησης, μια Cost function και έναν υπολογιστή της Κλίσης για Back Propagation. Τα δεδομένα που δέχεται η Λογιστική Συνάρτηση είναι διαστάσεων 10x256, δηλαδή 256 τιμές για κάθε μια από τις 10 κλάσεις. Σε αυτό το σημείο υπολογίζονται οι πιθανότητες (probs) κάθε μια εικόνα να ανήκει σε μια συγκεκριμένη κλάση και ακολουθεί η Cost Function, δηλαδή μια συνάρτηση κόστους (cross entropy objective), συνάρτηση η οποία δέχεται ως είσοδο τις επισημάνσεις και τις πιθανότητες που έχουν υπολογιστεί για κάθε εικόνα-διάνυσμα και υπολογίζει ένα αριθμό-δείκτη της ορθής εκτίμησης του περιεχομένου κάθε εικόνας. Το τελικό αποτέλεσμα είναι ένας πίνακας 10x1 για κάθε εικόνα εισόδου (test), ο οποίος μας δείχνει πόση είναι η πιθανότητα να ανήκει το ψηφίο της εικόνας εισόδου σε κάθε κλάση.[3][6][7][31] [73]

74 Πίνακας 2 Confusion Matrix για την MNIST με CNN 1 επιπέδου συνέλιξης. Στον πίνακα 2 βλέπουμε τον Confusion Matrix (πίνακα σύγχυσης) για την MNIST, για εκπαίδευση με CNN ενός επιπέδου συνέλιξης για εικόνες τεστ. Κάθε γραμμή του πίνακα αναπαριστά την κατηγορία στην οποία ανήκει κάποια πρόβλεψη (επισημάνσεις) και κάθε στήλη τις προβλέψεις του δικτύου. Παρατηρούμε ότι το ποσοστό σωστής πρόβλεψης είναι ικανοποιητικό (97.68%) καθώς αθροίζοντας τα στοιχεία της διαγωνίου που αντιστοιχούν σε σωστές προβλέψεις έχουμε 9768 εικόνες που ταξινομήθηκαν σωστά και διαιρώντας με εικόνες συνολικά προκύπτει ή 97.68%. Αθροίζοντας τα στοιχεία του πίνακα κατά γραμμή και αγνοώντας τα στοιχεία της διαγωνίου προκύπτει ο αριθμός των εικόνων που ταξινομήθηκαν λάθος για κάθε κλάση. Στον πίνακα 3 φαίνονται τα αποτελέσματα της άθροισης κατά γραμμές και τα ποσοστά λάθους τα οποία προκύπτουν για κάθε κλάση διαιρώντας τον αριθμό των λάθος προβλέψεων με τον αριθμό των εικόνων κάθε κλάσης, δηλαδή τον αριθμό Errors με τον αριθμό Errors + στοιχείο διαγωνίου κάθε κλάσης. Class Errors % Errors % % % % % % % % % % Πίνακας 3 Αριθμός λανθασμένων ταξινομήσεων ανά κλάση και ποσοστά λάθος εκτίμησης για την MNIST στην περίπτωση αλγορίθμου του Stanford University. Παρατηρούμε ότι ο αριθμός 6 έχει το μεγαλύτερο ποσοστό λαθών με 13 εικόνες να ταξινομούνται ως 0, 14 εικόνες ως 7 και περίπου από 10 εικόνες 9 και 4. [74]

75 Αντίστοιχα το μικρότερο ποσοστό σφάλματος στην ταξινόμηση έχε το 7 με μόνο 8 εικόνες λάθος εκ των οποίων οι τέσσερεις ταξινομούνται ως ο αριθμός 5. Εικόνα 35 Softmax Layer, υπολογισμός σφαμλάτων ταξινόμισης για back-propagation MatConvNet Τα αποτελέσματα που πήραμε ακόμα και στην περίπτωση CΝΝ ενός επιπέδου ήταν πάρα πολύ καλά. Ωστόσο, η βάση δεδομένων MNIST είναι σχετικά απλή διότι περιέχει εικόνες μεγέθους pixels σε grayscale μορφή, δηλαδή ενός καναλιού. Η προσπάθεια για εκπαίδευση CΝΝ ενός επιπέδου για διαχωρισμό και αναγνώριση που αφορά περιπλοκότερες εικόνες, όπως αυτές της CiFAR-10 δεν ήταν επιτυχής κι έτσι αναγκαστήκαμε να εισάγουμε περισσότερα επίπεδα στο ΝΝ. Για να γίνει ομαλή αυτή η μετάβαση, ξεκινήσαμε με εκπαίδευση ενός CΝΝ με τη βάση MNIST, δημιουργώντας ένα CΝΝ επτά κρυφών επιπέδων και εξάγοντας διαγράμματα σχετικά με το σφάλμα στην ταξινόμηση κατά την εκπαίδευση (error - epoch) και το μέγεθος της objective που προέκυπτε σε κάθε εποχή (objective - epoch). Η βιβλιοθήκη που χρησιμοποιήθηκε είναι η MatConvNet, μια βιβλιοθήκη για το υπολογιστικό πακέτο MatLab, ειδικευμένο στην υλοποίηση Συνελικτικών Νευρωνικών Δικτύων για εφαρμογές υπολογιστικής όρασης. Είναι εύχρηστο και προσφέρει τη δυνατότητα εκπαίδευσης Νευρωνικών Δικτύων διαφόρων μορφών ή τη χρησιμοποίηση προ-εκπαιδευμένων Δικτύων για ταξινόμηση εικόνων, αναγνώριση ομιλίας, αναγνώριση προσώπων και διάφορες άλλες εφαρμογές. [75]

76 Η αρχιτεκτονική της MatConvNet Η αρχιτεκτονική που χρησιμοποιήθηκε, συνίσταται από τέσσερα συνελικτικά επίπεδα διαφορετικών διαστάσεων και αριθμού φίλτρων χωρίς εφαρμογή padding, δηλαδή συμπλήρωση 0 στα άκρα της εικόνας έτσι ώστε να διευκολύνεται η συνέλιξη αφού τα φίλτρα των συνελίξεων θα μετακινούνται συνεχώς επάνω στην εικόνα χωρίς να υπερβαίνουν τα όριά της όταν τα παράθυρα συνέλιξης δεν επικαλύπτονται. Επιλέγεται συμπλήρωση με μηδενικά, εφόσον τα 0 δεν επηρεάζουν το αποτέλεσμα της συνέλιξης. Τα πρώτα δυο επίπεδα συνελίξεων ακολουθούσαν διαδικασίες max pooling για την ελάττωση των διαστάσεων των δεδομένων, ενώ το τρίτο επίπεδο συνέλιξης ακολουθείται από εισαγωγή μηγραμμικότητας τύπου ReLU και το τέταρτο συνελικτικό επίπεδο από Softmax loss (fully connected layer). Αξίζει να σημειωθεί ότι στη συγκεκριμένη τοπολογία, οι εικόνες εισάγονται στο ΝΝ ανά μια προκειμένου να υπολογιστούν οι συνελίξεις και το CΝΝ να πάρει την τελική του μορφή. Στην εικόνα 36, φαίνεται τη τοπολογία του ΝΔ που χρησιμοποιήθηκε. Εικόνα 36 Η τοπολογία του ΝΝ που χρησιμοποιήσαμε για την επίλυση του προβλήματος MNIST. Παρατηρούμε, ότι αρχικά η εικόνα εισάγεται στο επίπεδο εισόδου και στέλνεται στο επόμενο επίπεδο, συνελικτικό, το οποίο περιλαμβάνει 20 φίλτρα τυχαίων (αρκετά μικρών) αριθμών διαστάσεων, ενώ το βάθος των φίλτρων είναι 1 (filt dim). Η έξοδος αυτού του επιπέδου δίνει 20 διανύσματα διαστάσεων, τα οποία στέλνονται στον max pooling επίπεδο για υπο-δειγματοληψία [76]

77 των δειγμάτων. Η έξοδος του max pooling επιπέδου είναι ενώ ο αριθμός των διανυσμάτων παραμένει 20. Ακολουθεί δεύτερο επίπεδο συνέλιξης με μάσκες, όπου το βάθος των φίλτρων είναι 20 κανάλια και ο αριθμός τους 50. Η έξοδος αυτή τη φορά είναι 50 διανύσματα διαστάσεων ενώ μετά το ακόλουθο max pooling προκύπτουν 50 διανύσματα με διαστάσεις. Το επόμενο επίπεδο συνέλιξης, μεταβάλλει πολύ τον αριθμό των χαρακτηριστικών διανυσμάτων, εφόσον όπως φαίνεται και στο σχήμα χρησιμοποιούμε 500 μάσκες, βάθους 50 καναλιών ενώ αυτή τη φορά οι διαστάσεις κάθε μάσκας είναι. Το αποτέλεσμα που προκύπτει είναι 500 χαρακτηριστικά διανύσματα διαστάσεων ή αλλιώς, ένα χαρακτηριστικό διάνυσμα 500 τιμών. Σε αυτό το σημείο αναρωτηθήκαμε ποια είναι η σημασία του μεγέθους βάθους (καναλιών) των φίλτρων και του αριθμού τους, στο βαθμό που κάθε ένα επηρεάζει το αποτέλεσμα, δηλαδή την ορθή εκπαίδευση του ΝΔ. Για το σκοπό αυτό πιο κάτω παρατίθενται διαγράμματα που προέκυψαν από τα πειράματα που εκτελέσαμε, δίνοντας κάποιες απαντήσεις σε κάποια από τα ερωτήματά μας. Επανερχόμενοι στην τοπολογία του ΝΔ μας, το τρίτο και προ-τελευταίο επίπεδο συνέλιξης ακολουθείται από εισαγωγή μη-γραμμικότητας τύπου ReLU, απαραίτητης για την ορθή λειτουργία του συστήματος. Το τέταρτο και τελευταίο συνελικτικό επίπεδο, περιλαμβάνει 10 τον αριθμό φίλτρα, βάθους 500 καναλιών και μάσκες διαστάσεων. Έτσι, η έξοδος του τελευταίου επιπέδου συνέλιξης είναι, δηλαδή ένα νέο χαρακτηριστικό διάνυσμα με 500 τιμές. Η ολοκλήρωση της διαδικασίας επέρχεται με την εφαρμογή της softmax loss, δηλαδή της συνάρτησης η οποία υπολογίζει τη μέγιστη ενεργοποίηση στο fully connected επίπεδο. Πειραματικά Στη συνέχεια παρουσιάζουμε κάποια από τα αποτελέσματά μας, παραθέτοντας την εικόνα-είσοδο στο CΝΝ μαζί με την πρόβλεψη του δικτύου για τον αριθμό που απεικονίζεται στην πραγματικότητα. [77]

78 Εικόνα 37 Εικόνα - είσοδος στο ΝΝ και πρόβλεψη αυτού. Στην εικόνα 37, παρατηρούμε την εκτίμηση του ΝΝ για τον αριθμό που απεικονίζεται. Στον τίτλο της εικόνας φαίνεται ότι το δίκτυο έχει προβλέψει ότι ο αριθμός που απεικονίζεται είναι το 8 με score Πράγματι, όπως διακρίνουμε στην εικόνα, ο αριθμός που απεικονίζεται είναι ο αριθμός 8. Ο αριθμός μας δείχνει τον βαθμό στον οποίο το CΝΝ είναι σίγουρο για την πρόβλεψή του, ενώ η διαφορά του από τον αντίστοιχο της αμέσως επόμενης πρόβλεψης είναι ουσιώδης. Πιο κάτω (εικόνα 38) δείχνουμε τα activations που λαμβάνουν μέρος στο CΝΝ, δηλαδή τις θέσεις όπου το χαρακτηριστικό διάνυσμα εξόδου παίρνει μέγιστες τιμές. [78]

79 Εικόνα 38 Activations ή αλλιώς αποκρίσεις στην έξοδο του ΝΝ. Μερικά ακόμη παραδείγματα εκτιμήσεων του CΝΝ δικτύου σε αντίστοιχες εικόνες εισόδους δεικνύονται πιο κάτω. Εικόνα 39 Εικόνα εισόδου και activations στην περίπτωση που η είσοδος είναι ευδιάκριτη. [79]

80 Εικόνα 40 Εικόνα εισόδου και activations στην περίπτωση που η είσοδος δεν είναι πολύ ευδιάκριτη. Ακόμα και από τον άνθρωπο θα μπορούσε να επέλθει σύγχυση. Εικόνα 41 Εικόνα εισόδου στην περίπτωση που η είσοδος δεν είναι ευδιάκριτη. Ακόμα και από τον άνθρωπο θα μπορούσε να επέλθει σύγχυση. Παρατηρούμε, ότι ακόμα και σε δύσκολες περιπτώσεις όπου ακόμα και ο άνθρωπος θα μπορούσε να κάνει λάθος, το CΝΝ κάνει αρκετά καλές προβλέψεις. Στη συνέχεια, δείχνουμε τα φίλτρα που υπολογίζονται μετά από κάθε επίπεδο συνέλιξης, pooling και μη γραμμικότητας. [80]

81 Εικόνα εισόδου: Εικόνα 42 Εικόνα - είσοδος στο ΝΝ. Εικόνα 43 Φίλτρα πρώτου επιπέδου NN, κανάλι 1. Από την συνέλιξη της εικόνας εισόδου με τα φίλτρα του 1 ου επιπέδου της πιο πάνω εικόνας, προκύπτουν οι αποκρίσεις: Εικόνα 44 Αποκρίσεις που υπολογίστηκαν στο πρώτο επίπεδο το οποίο είναι convolutional. [81]

82 Για το δεύτερο επίπεδο, max pooling: Εικόνα 45 Έξοδος του δεύτερου επιπέδου, max pooling. Το τρίτο συνελικτικό επίπεδο έχει 20 κανάλια με 50 φίλτρα στο καθένα. Στην εικόνα 46 φαίνονται τα φίλτρα του 1 ου καναλιού. Εικόνα 46 Φίλτρα 3ου επιπέδου, convolutional. Εικόνα 47 Αποκρίσεις που έλαβαν μέρος στο 3ο convolutional επιπέδου. [82]

83 Στο τέταρτο επίπεδο, εκτελείται max pooling: Εικόνα 48 Έξοδος τέταρτου επιπέδου, max pooling. Παρατηρούμε ότι τα φίλτρα που έχουν υπολογιστεί σε αυτό το σημείο, έχουν πάρει τη γενική τους μορφή εντοπισμού διευθύνσεων στο επίπεδο. Στο επόμενο συνελικτικό επίπεδο (layer 5), υπολογίζονται 500 φίλτρα για 50 κανάλια. Επειδή είναι πάρα πολλά και θα ήταν κουραστική η παρουσίασή τους, στο πιο κάτω σχήμα της εικόνας 49 δείχνουμε τα 50 πρώτα από αυτά: Εικόνα 49 Τα 50 πρώτα φίλτρα που υπολογίστηκαν στον τέταρτο convolutional επιπέδου. Από αυτό το σημείο και μετά, δεν έχει νόημα η παρουσίαση των αποκρίσεων γιατί οι τιμές που υπολογίζονται βρίσκονται πολύ κοντά και οι αποχρώσεις του grayscale έχουν απειροελάχιστη διαφορά για να μπορέσουν να απεικονιστούν. [83]

84 Εικόνα 50 Διαγράμματα εξέλιξης υπολογισμού της objective και του σφάλματος (error) σε κάθε epoch. Στην εικόνα 50, φαίνονται τα διαγράμματα objective-epoch και error-epoch. Παρατηρούμε ότι το σφάλμα έχει εκμηδενιστεί από την 15 η epoch και ταυτόχρονα η objective έχει πάρει τιμή κάτω από 10-3, πράγμα που σημαίνει ότι η εκπαίδευση θα μπορούσε να είχε σταματήσει πολύ πιο νωρίς. Το γεγονός ότι το σφάλμα έχει εκμηδενιστεί, μας δείχνει ότι η Deep Architecture του ΝΔ είναι σαφώς προτιμότερη από την Shallow Architecture (97.68%) για καλύτερα αποτελέσματα Πίνακας 4 Confusion Matrix για την MNIST, αλγόριθμος MatConvNet. [84]

85 Στον πίνακα 4, φαίνεται ο Confusion Matrix για τον αλγόριθμο της MatConvNet επί της βάσης δεδομένων MNIST για εικόνες. Οι γραμμές του πίνακα αναπαριστούν την κατηγορία στην οποία ανήκει κάποια εικόνα προς ταξινόμηση (επισήμανση) ενώ στις στήλες οι προβλέψεις που έκανε το δίκτυο. Παρατηρούμε ότι το ποσοστό προβλέψεων σε κάθε κατηγορία είναι πάρα πολύ καλό της τάξεως του 99.87% (0.13% error rate) και όπως και στην περίπτωση του κώδικα για ένα επίπεδο, αθροίζοντας τα στοιχεία κάθε γραμμής εξαιρώντας τα στοιχεία της διαγωνίου βρίσκουμε τον αριθμό εικόνων που ταξινομήθηκαν λάθος για κάθε κλάση. Τα αποτελέσματα που προέκυψαν για την βάση MNIST με χρήση της MatConvNet και Deep Learning τεχνικών, δίνουν βελτιωμένα αποτελέσματα σε σχέση με παλιότερες εργασίες σε Shallow αρχιτεκτονικές. Για παράδειγμα, η εργασία του LeCun et al. 1998, για CNN με 2 επίπεδα (LeNet-5) το ποσοστό σφάλματος ήταν 0.95%, ενώ για τους Lauer et al, Pattern Recognition 40/6/2007, με χρήση μοντέλου εξαγωγής χαρακτηριστικών και ταξινομητή (SVM) το ποσοστό σφάλματος ήταν 0.83%. Η εργασία Jarrett et al., ICCV 2009 για ανεπίβλεπτη εκπαίδευση με βαθύ δίκτυο έδωσε ποσοστό 0.53% σφάλματος ενώ η Ciresan et al. CVPR 2012 για 35 επίπεδα και νεότερες τεχνικές Deep Learning έδωσε ποσοστό 0.23%.[14] Τέλος, δείχνουμε στον πίνακα 5 τα σφάλματα κάθε κλάσεως στην ταξινόμηση για την MNIST με χρήση της MatConvNet. Class Errors % Errors % % % % % % % % % % Πίνακας 5 Αριθμός λανθασμένων ταξινομήσεων ανά κλάση και ποσοστά λάθος εκτίμησης για την MNIST στην περίπτωση αλγορίθμου MatConvNet. Παρατηρούμε ότι το μεγαλύτερο ποσοστό λανθασμένης ταξινόμησης αντιστοιχεί στο 0 με 8 εικόνες να ταξινομούνται ως 5, ενώ το μικρότερο ποσοστό λανθασμένης ταξινόμησης προκύπτει για το 1 και το 2 μόλις 0.58% και 0.51% αντίστοιχα. [85]

86 4.2 CiFAR-10 Μετά την λύση του σχετικά απλού προβλήματος αναγνώρισης της MNIST, επιχειρήσαμε την αντιμετώπιση πιο σύνθετων προβλημάτων, όπως αυτό της αναγνώρισης αντικειμένων της βάσης δεδομένων CiFAR-10. Η βάση δεδομένων CiFAR-10, περιλαμβάνει RGB εικόνες διαστάσεων pixels κατανεμημένες σε 10 κλάσεις εικόνων για την κάθε μια, με εικόνες εκπαίδευσης και test. Οι εικόνες, χωρίζονται σε 5 batches εκπαίδευσης με εικόνες στο κάθε batch και ένα test batch με εικόνες. Το test batch περιλαμβάνει εικόνες τυχαία επιλεγμένες από κάθε κλάση. Το batch εκπαίδευσης περιλαμβάνει τις υπόλοιπες εικόνες σε τυχαία σειρά, ενώ σε κάθε batch μπορεί να περιλαμβάνονται, τυχαία επίσης, περισσότερες εικόνες μιας κλάσης από άλλες κλάσεις χωρίς αυτό να επηρεάζει το αποτέλεσμα.[17] Πιο κάτω στην εικόνα 51 δίνεται ένα παράδειγμα μερικών δειγμάτων αυτών των κλάσεων. Εικόνα 51 Παραδείγματα περιεχομένου της βάσης δεδομένων CiFAR. Αποτελέσματα Μερικά από τα αποτελέσματα που προέκυψαν, μαζί με τα φίλτρα που υπολογίστηκαν παρουσιάζονται πιο κάτω. [86]

87 Εικόνα 52 Εικόνα εισόδου και πρόβλεψη του ΝΝ. Στην εικόνα 52 φαίνεται η εικόνα εισόδου, η οποία παριστάνει ένα αυτοκίνητο καθώς και η ορθή εκτίμηση του ΝΔ για το περιεχόμενο της εικόνας εισόδου. Στη συνέχεια δίνονται οι ενεργοποιήσεις που προέκυψαν. Εικόνα 53 Activations στην έξοδο του ΝΔ. Ακολουθούν τα φίλτρα που υπολογίστηκαν σε κάθε επίπεδο. Για το 1 ο επίπεδο το οποίο είναι συνελοκτικό, τα φίλτρα που προέκυψαν είναι τα εξής: [87]

88 Εικόνα 54 Φίλτρα που προέκυψαν για το πρώτο επίπεδο του ΝΝ. Για το 2 ο επίπεδο, max pooling: Εικόνα 55 Οι αποκρίσεις του πρώτου επιπέδου. Εικόνα 56 Έξοδος δεύτερου επιπέδου, max pooling. [88]

89 Για το 3 ο επίπεδο, ReLU: Εικόνα 57 Έξοδος τρίτου επιπέδου, ReLU. Για το 4 ο επίπεδο, convolutional: Εικόνα 58 Έξοδος τέταρτου επιπέδου, convolution. [89]

90 Για το 5 ο επίπεδο, ReLU: Εικόνα 59 Απόκριση του δικτύου στα φίλτρα τέταρτου επιπέδου convolution. Εικόνα 60 5 ο επίπεδο - ReLU. [90]

91 Για το 6 ο επίπεδο, average pooling: Εικόνα 61 Έξοδος έκτου επιπέδου, average pooling. Φίλτρα 7 ου επίπεδο, convolutional: Εικόνα 62 Έξοδος έβδομου επιπέδου, convolution. [91]

92 Για το 8 ο επίπεδο, ReLU: Εικόνα 63 Έξοδος όγδοου επιπέδου, ReLU. Για το 9 ο επίπεδο, convolutional: Εικόνα 64 Έξοδος ένατου επιπέδου, softmax. Τα παραπάνω αποτελέσματα, αναφέρονται στην αρχιτεκτονική με 9 επίπεδα που σχεδιάσαμε. Σχηματικά φαίνεται στην εικόνα 65. [92]

93 Εικόνα 65 Τοπολογία ΝΔ για την επίλυση του προβλήματος της CiFAR-10. Μετά το πέρας της εκπαίδευσης, τα διαγράμματα objective-epoch και errorepoch μας δείχνουν την πορεία εκπαίδευσης του δικτύου.[16] Εικόνα 66 Διαγράμματα εξέλιξης υπολογισμού της objective και του σφάλματος (error) σε κάθε epoch. [93]

94 Πίνακας 6 Confusion Matrix για την βάση δεδομένων CiFAR-10, αλγόριθμος MatConvNet. Στον πίνακα 6 παρατηρούμε τον Confusion Matrix της CiFAR-10. Οι γραμμές του πίνακα αναπαριστούν την κατηγορία στην οποία ανήκει κάποια εικόνα προς ταξινόμηση (μέσω των επισημάνσεων), ενώ οι στήλες αντιστοιχούν στις προβλέψεις που έκανε το δίκτυο. Παρατηρούμε ότι υπάρχουν αρκετές εικόνες οι οποίες ταξινομούνται σε λάθος κατηγορία, ωστόσο το ποσοστό ορθής ταξινόμησης συνολικά είναι της τάξεως του 71.84%. Το ποσοστό λανθασμένων ταξινομήσεων είναι υψηλότερο από το αντίστοιχο πείραμα της MNIST, γεγονός που δικαιολογείται από την αυξημένη περιπλοκότητα των εικόνων, για παράδειγμα ύπαρξη μοτίβου για κάθε αντικείμενο, ύπαρξη υφής, περισσότερες ακμές κλπ. Class Errors % Errors % % % % % % % % % % Πίνακας 7 Αριθμός λανθασμένων ταξινομήσεων ανά κλάση και ποσοστά λάθος εκτίμησης για την MNIST στην περίπτωση αλγορίθμου MatConvNet. Στον πίνακα 7 παρατηρούμε τα σφάλματα στην ταξινόμηση των εικόνων με τον αριθμό 4 να έχει το μεγαλύτερο ποσοστό λανθασμένης (32.86%) εκτίμησης και τον αριθμό 2 το μικρότερο ποσοστό (7.81%). Όπως και στα προηγούμενα παραδείγματα, το ποσοστό σφάλματος προκύπτει διαιρώντας τον αριθμό των εικόνων που ταξινομήθηκαν λάθος σε κάθε κλάση, με τον συνολικό αριθμό εικόνων-τεστ της εκάστοτε κλάσης. [94]

95 Συμπεράσματα CNNs, RBMs και Autoencoders Όπως είδαμε και στο Κεφάλαιο 2, ένας Autoencoder είναι ένα Νευρωνικό Δίκτυο όπου οι μονάδες εξόδου του είναι άμεσα συνδεδεμένες με τις μονάδες εισόδου. Για παράδειγμα, ένας απλός Autoencoder τριών επιπέδων φαίνεται στην εικόνα 67. Εικόνα 67 Τυπικός Autoencoder 3 επιπέδων. Για κάθε μονάδα εξόδου i, υπάρχει μια μονάδα εισόδου που δέχεται το αντίστοιχο σήμα της. Τυπικά, σε μια τέτοια συνδεσμολογία Autoencoder οι κρυφοί νευρώνες είναι πολύ λιγότεροι στον αριθμό από τους ορατούς (εισόδου-εξόδου). Σαν αποτέλεσμα, όταν περνούμε δεδομένα μέσα από ένα τέτοιο δίκτυο αρχικά συμπιέζει (κωδικοποιεί) το διάνυσμα εισόδου για να χωρέσουν σε μικρότερη αναπαράσταση και στη συνέχεια προσπαθεί να τα ανακατασκευάσει (αποκωδικοποιήσει). Η διαδικασία της εκπαίδευσης ουσιαστικά εστιάζει στην ελαχιστοποίηση του σφάλματος ανακατασκευής, πχ εύρεση της πιο αποδοτικής, συμπαγής αναπαράστασης (κωδικοποίησης) των δεδομένων εισόδου, δηλαδή ενός καλού μετασχηματισμού για ανακατασκευή των δεδομένων. Ένα RMB (Restricted Boltzmann Machine) λειτουργεί με τον ίδιο τρόπο, όμως χρησιμοποιεί στοχαστική προσέγγιση. Αντί ντετερμινιστικών (πχ Λογιστική ή ReLU) χρησιμοποιεί στοχαστικούς νευρώνες με συγκεκριμένη κατανομή, συνήθως Gaussian και η κεντρική ιδέα είναι η εκμάθηση της από κοινού κατανομής πιθανότητας των κρυφών νευρώνων και των νευρώνων εισόδου. Η διαδικασία της εκμάθησης αποτελείται από αρκετά στάδια όπου τα βάρη των νευρώνων μεταβάλλονται προκειμένου να ελαχιστοποιηθεί το σφάλμα ανακατασκευής. [95]

96 Εικόνα 68 Restricted Boltzmann Machine. Στις RBMs υπάρχει ένα σετ από ορατές μεταβλητές, ένα σετ από κρυμμένες μεταβλητές και η διαδικασία της εκπαίδευσης συνίσταται από την εύρεση του τρόπου με τον οποίο συνδέονται αυτά τα σετ μεταβλητών. Τα Συνελικτικά Νευρωνικά Δίκτυα (CNNs) είναι παρόμοια με τα δυο είδη ΝΔ που αναφερθήκαν, όμως αντί να μαθαίνει το δίκτυο ένα και μοναδικό (global) πίνακα βαρών μεταξύ δυο επιπέδων, ο σκοπός τους είναι η εύρεση ενός σετ συνδεδεμένων νευρώνων. Τα CNNs χρησιμοποιούνται περισσότερο στην επεξεργασία εικόνας, εφόσον τα φίλτρα που προέρχονται από αυτό τον τομέα είναι χρήσιμα και στα CNN. Για παράδειγμα, χρησιμοποιώντας ένα φίλτρο Canny, μαθαίνουμε το δίκτυο να εντοπίζει ακμές, ενώ με χρήση ενός Gabor φίλτρου μαθαίνει να αναγνωρίζει κλίσεις. Σκοπός των CNNs είναι η εκμάθηση χαρακτηριστικών, σε αντίθεση με τους Autoencoders και τα RBMs όπου τα φίλτρα πρέπει να προκαθοριστούν. Η ιδέα όμως είναι η ίδια: μετατροπή πολλών χαμηλού επιπέδου χαρακτηριστικών σε συμπιεσμένη υψηλού επιπέδου αναπαράσταση, όπου όμως το CNN μαθαίνει τα βάρη μόνο γειτονικών νευρώνων. Συμπερασματικά κάθε κατηγορία έχει τα δικά της θετικά και αρνητικά, ωστόσο εύκολα καταλαβαίνει κανείς ότι οι Autoencoders είναι οι πιο απλοί, κατανοητοί και εύκολα υλοποιήσιμοι, σε αντίθεση με τους RBMs οι οποίοι είναι πιο παραγωγικοί. Έχουν τη δυνατότητα να δημιουργούν νέα διανύσματα δεδομένων για συγκεκριμένη κατανομή ενώ θεωρούνται πιο πλούσιοι σε χαρακτηριστικά και ευέλικτοι. Τα CNNs είναι δίκτυα συγκεκριμένου σκοπού και χρησιμοποιούνται στους περισσότερους υψηλού επιπέδου αλγορίθμους επεξεργασίας εικόνας στις μέρες μας, όμως πέραν αυτού του τομέα χρησιμοποιούνται πολύ σπάνια. Η σημασία του βάθους στα CNNs Στο κεφάλαιο 2 είδαμε ότι ένας Autoencoder μπορεί να εκτελέσει μείωση διαστάσεων των δεδομένων με τρόπο όμοιο με την PCA, κάτι το οποίο μπορεί να γίνει και με RBMs. Εάν η εκπαίδευση του Autoencoder ή της RBM είναι επιτυχής, κάθε νευρώνας του δικτύου αναπαριστά κάποιο σημαντικό χαρακτηριστικό της [96]

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Version 2 1 Άλλοι τύποι νευρωνικών δικτύων Αυτοοργανούμενοι χάρτες (Self-organizing maps - SOMs) Αναδρομικά νευρωνικά δίκτυα (Recurrent Neural Networks): γενικής

Διαβάστε περισσότερα

HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 15-16

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

Διαβάστε περισσότερα

Το Πολυεπίπεδο Perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Το Πολυεπίπεδο Perceptron. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων Το Πολυ Perceptron Δίκτυα Πρόσθιας Τροφοδότησης (feedforward) Tο αντίστοιχο γράφημα του δικτύου δεν περιλαμβάνει κύκλους: δεν υπάρχει δηλαδή ανατροφοδότηση της εξόδου ενός νευρώνα προς τους νευρώνες από

Διαβάστε περισσότερα

Μοντέλο Perceptron πολλών στρωμάτων Multi Layer Perceptron (MLP)

Μοντέλο 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 Μία

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 1: Μέθοδοι Αναγνώρισης Προτύπων Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο Πρόβλημα ο Ασκήσεις Φροντιστηρίου 5 o Φροντιστήριο Δίνεται το παρακάτω σύνολο εκπαίδευσης: # Είσοδος Κατηγορία 0 0 0 Α 2 0 0 Α 0 Β 4 0 0 Α 5 0 Β 6 0 0 Α 7 0 Β 8 Β α) Στον παρακάτω κύβο τοποθετείστε τα

Διαβάστε περισσότερα

Τεχνητά Νευρωνικά Δίκτυα. Τσιριγώτης Γεώργιος Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Ανατολικής Μακεδονίας & Θράκης

Τεχνητά Νευρωνικά Δίκτυα. Τσιριγώτης Γεώργιος Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Ανατολικής Μακεδονίας & Θράκης Τεχνητά Τσιριγώτης Γεώργιος Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Ανατολικής Μακεδονίας & Θράκης Ο Βιολογικός Νευρώνας Δενδρίτες Συνάψεις Πυρήνας (Σώμα) Άξονας 2 Ο Βιολογικός Νευρώνας 3 Βασικά Χαρακτηριστικά

Διαβάστε περισσότερα

Εισαγωγή στα Τεχνητά Νευρωνικά Δίκτυα. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Εισαγωγή στα Τεχνητά Νευρωνικά Δίκτυα. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων Εισαγωγή στα Τεχνητά Νευρωνικά Δίκτυα Τεχνητή Νοημοσύνη (Artificial Intelligence) Ανάπτυξη μεθόδων και τεχνολογιών για την επίλυση προβλημάτων στα οποία ο άνθρωπος υπερέχει (?) του υπολογιστή Συλλογισμοί

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 18η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 18η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 18η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται: στο βιβλίο Machine Learning του T. Mitchell, McGraw- Hill, 1997,

Διαβάστε περισσότερα

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΤΕΙ Δυτικής Μακεδονίας ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ 2015-2016 Τεχνητή Νοημοσύνη Νευρώνας Perceptron Διδάσκων: Τσίπουρας Μάρκος Εκπαιδευτικό Υλικό: Τσίπουρας Μάρκος Τζώρτζης Γρηγόρης Περιεχόμενα Εισαγωγή

Διαβάστε περισσότερα

Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων. Δρ. Ε. Χάρου

Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων. Δρ. Ε. Χάρου Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων Δρ. Ε. Χάρου Πρόγραμμα υπολογιστικής ευφυίας Ινστιτούτο Πληροφορικής & Τηλεπικοινωνιών ΕΚΕΦΕ ΔΗΜΟΚΡΙΤΟΣ exarou@iit.demokritos.gr Μηχανική

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Θ.Ε. ΠΛΗ31 (2004-5) ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ #3 Στόχος Στόχος αυτής της εργασίας είναι η απόκτηση δεξιοτήτων σε θέματα που αφορούν τα Τεχνητά Νευρωνικά Δίκτυα και ποιο συγκεκριμένα θέματα εκπαίδευσης και υλοποίησης.

Διαβάστε περισσότερα

Το μοντέλο Perceptron

Το μοντέλο 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. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων Βασικές αρχές εκπαίδευσης ΤΝΔ: το 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 νευρώνες

Διαβάστε περισσότερα

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΜΥ 795: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ Ακαδηµαϊκό έτος 2010-11 Χειµερινό Εξάµηνο Τελική εξέταση Τρίτη, 21 εκεµβρίου 2010,

Διαβάστε περισσότερα

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ. Καραγιώργου Σοφία

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ. Καραγιώργου Σοφία ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Καραγιώργου Σοφία Εισαγωγή Προσομοιώνει βιολογικές διεργασίες (π.χ. λειτουργία του εγκεφάλου, διαδικασία

Διαβάστε περισσότερα

Διακριτικές Συναρτήσεις

Διακριτικές Συναρτήσεις Διακριτικές Συναρτήσεις Δρ. Δηµήτριος Τσέλιος Επίκουρος Καθηγητής ΤΕΙ Θεσσαλίας Τµήµα Διοίκησης Επιχειρήσεων Θερµικός χάρτης των XYZ ξενοδοχείων σε σχέση µε τη γεωγραφική περιοχή τους P. Adamopoulos New

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης

Πληροφοριακά Συστήματα Διοίκησης Πληροφοριακά Συστήματα Διοίκησης Τρεις αλγόριθμοι μηχανικής μάθησης ΠΜΣ Λογιστική Χρηματοοικονομική και Διοικητική Επιστήμη ΤΕΙ Ηπείρου @ 2018 Μηχανική μάθηση αναγνώριση προτύπων Η αναγνώριση προτύπων

Διαβάστε περισσότερα

Αριθμητική Ανάλυση & Εφαρμογές

Αριθμητική Ανάλυση & Εφαρμογές Αριθμητική Ανάλυση & Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 2017-2018 Υπολογισμοί και Σφάλματα Παράσταση Πραγματικών Αριθμών Συστήματα Αριθμών Παράσταση Ακέραιου

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Η έννοια του συνδυαστικού

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 17η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 17η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 17η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται: στο βιβλίο Artificia Inteigence A Modern Approach των S. Russe και

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 19η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 19η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 19η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτές βασίζονται σε ύλη των βιβλίων: Artificia Inteigence A Modern Approach των S. Russe και P.

Διαβάστε περισσότερα

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Ανάλυση Κυρίων Συνιστωσών (Principal-Component Analysis, PCA)

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Ανάλυση Κυρίων Συνιστωσών (Principal-Component Analysis, PCA) ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα 005 - Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Ανάλυση Κυρίων Συνιστωσών (Principal-Coponent Analysis, PCA) καθ. Βασίλης Μάγκλαρης aglaris@netode.ntua.gr www.netode.ntua.gr

Διαβάστε περισσότερα

Ασκήσεις μελέτης της 19 ης διάλεξης

Ασκήσεις μελέτης της 19 ης διάλεξης Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 19 ης διάλεξης 19.1. Δείξτε ότι το Perceptron με (α) συνάρτηση ενεργοποίησης

Διαβάστε περισσότερα

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων Εισηγητής: ρ Ηλίας Ζαφειρόπουλος Εισαγωγή Ιατρικά δεδοµένα: Συλλογή Οργάνωση Αξιοποίηση Data Mining ιαχείριση εδοµένων Εκπαίδευση

Διαβάστε περισσότερα

Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν.

Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης Ελαχιστοποίηση συνάρτησης σφάλματος Εκπαίδευση ΤΝΔ: μπορεί να διατυπωθεί ως πρόβλημα ελαχιστοποίησης μιας συνάρτησης σφάλματος E(w)

Διαβάστε περισσότερα

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων HMY 795: Αναγνώριση Προτύπων Διαλέξεις 17 18 Νευρωνικά Δίκτυα (Neural Networks) συνέχεια Minimum squared error procedure for classification 1 ( T T wls = X X) X b= X b Xw = b Logistic sigmoidal function

Διαβάστε περισσότερα

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης Μάθημα 5 ο Δρ. Ανέστης Γ. Χατζημιχαηλίδης Τμήμα Μηχανικών Πληροφορικής Τ.Ε. ΤΕΙ Ανατολικής Μακεδονίας και Θράκης 2016-2017 Διευρυμένη Υπολογιστική Νοημοσύνη (ΥΝ) Επεκτάσεις της Κλασικής ΥΝ. Μεθοδολογίες

Διαβάστε περισσότερα

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER 4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER Σκοπός του κεφαλαίου είναι να παρουσιάσει μερικές εφαρμογές του Μετασχηματισμού Fourier (ΜF). Ειδικότερα στο κεφάλαιο αυτό θα περιγραφούν έμμεσοι τρόποι

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 3: Στοχαστικά Συστήματα Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Η ΙΣΧΥΣ ΕΝΟΣ ΕΛΕΓΧΟΥ. (Power of a Test) ΚΕΦΑΛΑΙΟ 21

Η ΙΣΧΥΣ ΕΝΟΣ ΕΛΕΓΧΟΥ. (Power of a Test) ΚΕΦΑΛΑΙΟ 21 ΚΕΦΑΛΑΙΟ 21 Η ΙΣΧΥΣ ΕΝΟΣ ΕΛΕΓΧΟΥ (Power of a Test) Όπως είδαμε προηγουμένως, στον Στατιστικό Έλεγχο Υποθέσεων, ορίζουμε δύο είδη πιθανών λαθών (κινδύνων) που μπορεί να συμβούν όταν παίρνουμε αποφάσεις

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 8. Συνεχείς Κατανομές Πιθανοτήτων Η Κανονική Κατανομή

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 8. Συνεχείς Κατανομές Πιθανοτήτων Η Κανονική Κατανομή ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΤΡΑΣ Εργαστήριο Λήψης Αποφάσεων & Επιχειρησιακού Προγραμματισμού Καθηγητής Ι. Μητρόπουλος ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ

Διαβάστε περισσότερα

4.3. Γραµµικοί ταξινοµητές

4.3. Γραµµικοί ταξινοµητές Γραµµικοί ταξινοµητές Γραµµικός ταξινοµητής είναι ένα σύστηµα ταξινόµησης που χρησιµοποιεί γραµµικές διακριτικές συναρτήσεις Οι ταξινοµητές αυτοί αναπαρίστανται συχνά µε οµάδες κόµβων εντός των οποίων

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 07-08 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutras@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

ΠΕΙΡΑΜΑΤΙΚΕΣ ΠΡΟΣΟΜΟΙΩΣΕΙΣ ΚΕΦΑΛΑΙΟ 4. είναι η πραγματική απόκριση του j δεδομένου (εκπαίδευσης ή ελέγχου) και y ˆ j

ΠΕΙΡΑΜΑΤΙΚΕΣ ΠΡΟΣΟΜΟΙΩΣΕΙΣ ΚΕΦΑΛΑΙΟ 4. είναι η πραγματική απόκριση του j δεδομένου (εκπαίδευσης ή ελέγχου) και y ˆ j Πειραματικές Προσομοιώσεις ΚΕΦΑΛΑΙΟ 4 Όλες οι προσομοιώσεις έγιναν σε περιβάλλον Matlab. Για την υλοποίηση της μεθόδου ε-svm χρησιμοποιήθηκε το λογισμικό SVM-KM που αναπτύχθηκε στο Ecole d Ingenieur(e)s

Διαβάστε περισσότερα

3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPTRON

3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPTRON 3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPRON 3. ΕΙΣΑΓΩΓΗ: Το Perceptron είναι η απλούστερη μορφή Νευρωνικού δικτύου, το οποίο χρησιμοποιείται για την ταξινόμηση ενός ειδικού τύπου προτύπων, που είναι γραμμικά διαχωριζόμενα.

Διαβάστε περισσότερα

Β Γραφικές παραστάσεις - Πρώτο γράφημα Σχεδιάζοντας το μήκος της σανίδας συναρτήσει των φάσεων της σελήνης μπορείτε να δείτε αν υπάρχει κάποιος συσχετισμός μεταξύ των μεγεθών. Ο συνήθης τρόπος γραφικής

Διαβάστε περισσότερα

8. Σύνθεση και ανάλυση δυνάμεων

8. Σύνθεση και ανάλυση δυνάμεων 8. Σύνθεση και ανάλυση δυνάμεων Βασική θεωρία Σύνθεση δυνάμεων Συνισταμένη Σύνθεση δυνάμεων είναι η διαδικασία με την οποία προσπαθούμε να προσδιορίσουμε τη δύναμη εκείνη που προκαλεί τα ίδια αποτελέσματα

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3. Περιγραφή της Μεθόδου ΠΕΡΙΓΡΑΦΗ ΤΗΣ ΜΕΘΟΔΟΥ

ΚΕΦΑΛΑΙΟ 3. Περιγραφή της Μεθόδου ΠΕΡΙΓΡΑΦΗ ΤΗΣ ΜΕΘΟΔΟΥ ΚΕΦΑΛΑΙΟ 3 Περιγραφή της Μεθόδου Το αντικείμενο αυτής της εργασίας είναι η χρήση μιας μεθόδου προσέγγισης συναρτήσεων που έχει προταθεί από τον hen-ha huang και ονομάζεται Ασαφώς Σταθμισμένη Παλινδρόμηση

Διαβάστε περισσότερα

ΔΙΚΤΥO RBF. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

ΔΙΚΤΥO RBF. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων ΔΙΚΤΥO RBF Αρχιτεκτονική δικτύου RBF Δίκτυα RBF: δίκτυα συναρτήσεων πυρήνα (radial basis function networks). Πρόσθιας τροφοδότησης (feedforward) για προβλήματα μάθησης με επίβλεψη. Εναλλακτικό του MLP.

Διαβάστε περισσότερα

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Πληθυσμός Δείγμα Δείγμα Δείγμα Ο ρόλος της Οικονομετρίας Οικονομική Θεωρία Διατύπωση της

Διαβάστε περισσότερα

5. ΤΟ ΓΕΝΙΚΟ ΓΡΑΜΜΙΚΟ ΜΟΝΤΕΛΟ (GENERAL LINEAR MODEL) 5.1 Εναλλακτικά μοντέλα του απλού γραμμικού μοντέλου: Το εκθετικό μοντέλο

5. ΤΟ ΓΕΝΙΚΟ ΓΡΑΜΜΙΚΟ ΜΟΝΤΕΛΟ (GENERAL LINEAR MODEL) 5.1 Εναλλακτικά μοντέλα του απλού γραμμικού μοντέλου: Το εκθετικό μοντέλο 5. ΤΟ ΓΕΝΙΚΟ ΓΡΑΜΜΙΚΟ ΜΟΝΤΕΛΟ (GENERAL LINEAR MODEL) 5.1 Εναλλακτικά μοντέλα του απλού γραμμικού μοντέλου: Το εκθετικό μοντέλο Ένα εναλλακτικό μοντέλο της απλής γραμμικής παλινδρόμησης (που χρησιμοποιήθηκε

Διαβάστε περισσότερα

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας Εισηγητής Αναστάσιος Κεσίδης Τμηματοποίηση εικόνας Τμηματοποίηση εικόνας Γενικά Διαμερισμός μιας εικόνας σε διακριτές περιοχές

Διαβάστε περισσότερα

Απλή Γραμμική Παλινδρόμηση και Συσχέτιση 19/5/2017

Απλή Γραμμική Παλινδρόμηση και Συσχέτιση 19/5/2017 Απλή Γραμμική Παλινδρόμηση και Συσχέτιση 2 Εισαγωγή Η ανάλυση παλινδρόμησης περιλαμβάνει το σύνολο των μεθόδων της στατιστικής που αναφέρονται σε ποσοτικές σχέσεις μεταξύ μεταβλητών Πρότυπα παλινδρόμησης

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Πεπερασμένες και Διαιρεμένες Διαφορές Εισαγωγή Θα εισάγουμε την έννοια των διαφορών με ένα

Διαβάστε περισσότερα

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Data Mining - Classification

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Data Mining - Classification ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ Data Mining - Classification Data Mining Ανακάλυψη προτύπων σε μεγάλο όγκο δεδομένων. Σαν πεδίο περιλαμβάνει κλάσεις εργασιών: Anomaly Detection:

Διαβάστε περισσότερα

Q 12. c 3 Q 23. h 12 + h 23 + h 31 = 0 (6)

Q 12. c 3 Q 23. h 12 + h 23 + h 31 = 0 (6) Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Πολιτικών Μηχανικών Τοµέας Υδατικών Πόρων Μάθηµα: Τυπικά Υδραυλικά Έργα Μέρος 2: ίκτυα διανοµής Άσκηση E0: Μαθηµατική διατύπωση µοντέλου επίλυσης απλού δικτύου διανοµής

Διαβάστε περισσότερα

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων HMY 795: Αναγνώριση Προτύπων Διαλέξεις 15 16 Λογιστική παλινδρόμηση (Logistic regression) Νευρωνικά Δίκτυα (Neural Networks) g ( x) = w x+ w T k k k0 1 ( T T WLS = X X) X T= X T Γραμμικές διαχωριστικές

Διαβάστε περισσότερα

Στατιστική Ι (ΨΥΧ-1202) ιάλεξη 3

Στατιστική Ι (ΨΥΧ-1202) ιάλεξη 3 (ΨΥΧ-1202) Λεωνίδας Α. Ζαμπετάκης Β.Sc., M.Env.Eng., M.Ind.Eng., D.Eng. Εmail: statisticsuoc@gmail.com ιαλέξεις: ftp://ftp.soc.uoc.gr/psycho/zampetakis/ ιάλεξη 3 ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΨΥΧΟΛΟΓΙΑΣ Ρέθυμνο,

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 06-07 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutra@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson ΜΗ ΓΡΑΜΜΙΚΟΙ ΤΑΞΙΝΟΜΗΤΕΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Η παραπάνω ανάλυση ήταν χρήσιμη προκειμένου να κατανοήσουμε τη λογική των δικτύων perceptrons πολλών επιπέδων

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: βελτιστοποίηση χωρίς περιορισμούς Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 7-8 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

Πληροφορική 2. Τεχνητή νοημοσύνη

Πληροφορική 2. Τεχνητή νοημοσύνη Πληροφορική 2 Τεχνητή νοημοσύνη 1 2 Τι είναι τεχνητή νοημοσύνη; Τεχνητή νοημοσύνη (AI=Artificial Intelligence) είναι η μελέτη προγραμματισμένων συστημάτων τα οποία μπορούν να προσομοιώνουν μέχρι κάποιο

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ. Εξάμηνο 5ο Οικονόμου Παναγιώτης & Ελπινίκη Παπαγεωργίου. Νευρωνικά Δίκτυα.

Τεχνητή Νοημοσύνη. TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ. Εξάμηνο 5ο Οικονόμου Παναγιώτης & Ελπινίκη Παπαγεωργίου. Νευρωνικά Δίκτυα. Τεχνητή Νοημοσύνη. TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ Εξάμηνο 5ο Οικονόμου Παναγιώτης & Ελπινίκη Παπαγεωργίου. Νευρωνικά Δίκτυα. 1 ΤΕΧΝΗΤΑ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Χαρακτηριστικά Είδη εκπαίδευσης Δίκτυα

Διαβάστε περισσότερα

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Σύνοψη Στο κεφάλαιο αυτό παρουσιάζεται η ιδέα του συμπτωτικού πολυωνύμου, του πολυωνύμου, δηλαδή, που είναι του μικρότερου δυνατού βαθμού και που, για συγκεκριμένες,

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα & Περιβάλλον

Πληροφοριακά Συστήματα & Περιβάλλον ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Πληροφοριακά Συστήματα & Περιβάλλον Ενότητα 8: Τεχνητά Νευρωνικά Δίκτυα Παναγιώτης Λεφάκης Δασολογίας & Φυσικού Περιβάλλοντος Άδειες Χρήσης

Διαβάστε περισσότερα

ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #12: Εισαγωγή στα Nευρωνικά Δίκτυα. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε.

ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #12: Εισαγωγή στα Nευρωνικά Δίκτυα. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ Ενότητα #12: Εισαγωγή στα Nευρωνικά Δίκτυα Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες Χρήσης Το

Διαβάστε περισσότερα

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας Τεχνικές Μείωσης Διαστάσεων Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας 1 Εισαγωγή Το μεγαλύτερο μέρος των δεδομένων που καλούμαστε να επεξεργαστούμε είναι πολυδιάστατα.

Διαβάστε περισσότερα

ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #8: Βελτιστοποίηση Συστημάτων Ασαφούς Λογικής. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε.

ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #8: Βελτιστοποίηση Συστημάτων Ασαφούς Λογικής. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ Ενότητα #8: Βελτιστοποίηση Συστημάτων Ασαφούς Λογικής Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες

Διαβάστε περισσότερα

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ, ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΕΣ 3: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΚΑΙ ΑΝΑΛΥΣΗ ΕΙΚΟΝΑΣ Ακαδημαϊκό Έτος 7 8, Χειμερινό Εξάμηνο Καθ.: Νίκος Τσαπατσούλης ΕΡΩΤΗΣΕΙΣ ΕΠΑΝΑΛΗΨΗΣ Το παρόν

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ ΘΕΜΑ 1 ο (2,5 μονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ Τελικές εξετάσεις Πέμπτη 21 Ιουνίου 2012 16:30-19:30 Υποθέστε ότι θέλουμε

Διαβάστε περισσότερα

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ Ενότητα: Αναγνώριση Διεργασίας - Προσαρμοστικός Έλεγχος (Process Identification) Αλαφοδήμος Κωνσταντίνος

Διαβάστε περισσότερα

Κινητά Δίκτυα Επικοινωνιών. Συμπληρωματικό υλικό. Προσαρμοστική Ισοστάθμιση Καναλιού

Κινητά Δίκτυα Επικοινωνιών. Συμπληρωματικό υλικό. Προσαρμοστική Ισοστάθμιση Καναλιού Κινητά Δίκτυα Επικοινωνιών Συμπληρωματικό υλικό Προσαρμοστική Ισοστάθμιση Καναλιού Προσαρμοστικοί Ισοσταθμιστές Για να υπολογίσουμε τους συντελεστές του ισοσταθμιστή MMSE, απαιτείται να λύσουμε ένα γραμμικό

Διαβάστε περισσότερα

Προσομοίωση Νευρωνικού Δικτύου στο MATLAB. Κυριακίδης Ιωάννης 2013

Προσομοίωση Νευρωνικού Δικτύου στο MATLAB. Κυριακίδης Ιωάννης 2013 Προσομοίωση Νευρωνικού Δικτύου στο MATLAB Κυριακίδης Ιωάννης 2013 Εισαγωγή Ένα νευρωνικό δίκτυο αποτελεί μια πολύπλοκη δομή, όπου τα βασικά σημεία που περιλαμβάνει είναι τα εξής: Πίνακες με τα βάρη των

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ Μαθηματικά Σταύρος Παπαϊωάννου Ιούνιος 5 Τίτλος Μαθήματος Περιεχόμενα Χρηματοδότηση... Error! Bookmark not defned. Σκοποί Μαθήματος (Επικεφαλίδα

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Αριθμητική Παραγώγιση Εισαγωγή Ορισμός 7. Αν y f x είναι μια συνάρτηση ορισμένη σε ένα διάστημα

Διαβάστε περισσότερα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson ΧΑΡΤΟΓΡΑΦΗΣΗ ΤΟΥ ΧΩΡΟΥ ΤΩΝ ΤΑΞΙΝΟΜΗΤΩΝ Ταξινομητές Ταξινομητές συναρτ. διάκρισης Ταξινομητές επιφανειών απόφ. Παραμετρικοί ταξινομητές Μη παραμετρικοί

Διαβάστε περισσότερα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv Σ ΤΑΤ Ι Σ Τ Ι Κ Η i Statisticum collegium iv Στατιστική Συμπερασματολογία Ι Σημειακές Εκτιμήσεις Διαστήματα Εμπιστοσύνης Στατιστική Συμπερασματολογία (Statistical Inference) Το πεδίο της Στατιστικής Συμπερασματολογία,

Διαβάστε περισσότερα

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη; ΚΕΦΑΛΑΙΟ 2 ο ΚΙΝΗΣΗ 2.1 Περιγραφή της Κίνησης 1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη; Κινηματική είναι ο κλάδος της Φυσικής που έχει ως αντικείμενο τη μελέτη της κίνησης. Στην Κινηματική

Διαβάστε περισσότερα

Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων

Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων Με τον όρο μη γραμμικές εξισώσεις εννοούμε εξισώσεις της μορφής: f( ) 0 που προέρχονται από συναρτήσεις f () που είναι μη γραμμικές ως προς. Περιέχουν δηλαδή

Διαβάστε περισσότερα

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ 2.1 Περιγραφή της Κίνησης 1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη; Κινηματική είναι ο κλάδος της Φυσικής που έχει ως αντικείμενο τη μελέτη της κίνησης.

Διαβάστε περισσότερα

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΔΕ. 11 ΙΟΥΝΙΟΥ 2012

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΔΕ. 11 ΙΟΥΝΙΟΥ 2012 ΔΕ. ΙΟΥΝΙΟΥ Δίνονται τα εξής πρότυπα: [ ] [ ] [ ] [ ] Άσκηση η ( μονάδες) Χρησιμοποιώντας το κριτήριο της ομοιότητας να απορριφθεί ένα χαρακτηριστικό με βάσει το συντελεστή συσχέτισης. (γράψτε ποιο χαρακτηριστικό

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ. ΠΡΟΛΟΓΟΣ... vii ΠΕΡΙΕΧΟΜΕΝΑ... ix ΓΕΝΙΚΗ ΒΙΒΛΙΟΓΡΑΦΙΑ... xv. Κεφάλαιο 1 ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ ΑΠΟ ΤΗ ΣΤΑΤΙΣΤΙΚΗ

ΠΕΡΙΕΧΟΜΕΝΑ. ΠΡΟΛΟΓΟΣ... vii ΠΕΡΙΕΧΟΜΕΝΑ... ix ΓΕΝΙΚΗ ΒΙΒΛΙΟΓΡΑΦΙΑ... xv. Κεφάλαιο 1 ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ ΑΠΟ ΤΗ ΣΤΑΤΙΣΤΙΚΗ ΠΡΟΛΟΓΟΣ... vii ΠΕΡΙΕΧΟΜΕΝΑ... ix ΓΕΝΙΚΗ ΒΙΒΛΙΟΓΡΑΦΙΑ... xv Κεφάλαιο 1 ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ ΑΠΟ ΤΗ ΣΤΑΤΙΣΤΙΚΗ 1.1 Πίνακες, κατανομές, ιστογράμματα... 1 1.2 Πυκνότητα πιθανότητας, καμπύλη συχνοτήτων... 5 1.3

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 2: Δομικά Συστήματα Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Μάθημα: Στατιστική II Διάλεξη 1 η : Εισαγωγή-Επανάληψη βασικών εννοιών Εβδομάδα 1 η : ,

Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Μάθημα: Στατιστική II Διάλεξη 1 η : Εισαγωγή-Επανάληψη βασικών εννοιών Εβδομάδα 1 η : , Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Μάθημα: Στατιστική II Διάλεξη 1 η : Εισαγωγή-Επανάληψη βασικών εννοιών Εβδομάδα 1 η :1-0-017, 3-0-017 Διδάσκουσα: Κοντογιάννη Αριστούλα Σκοπός του μαθήματος Η παρουσίαση

Διαβάστε περισσότερα

P(A ) = 1 P(A). Μονάδες 7

P(A ) = 1 P(A). Μονάδες 7 ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΚΑΙ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΠΑΡΑΣΚΕΥΗ 20 ΜΑΪΟΥ 2016 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΜΑΘΗΜΑΤΙΚΑ ΚΑΙ ΣΤΟΙΧΕΙΑ ΣΤΑΤΙΣΤΙΚΗΣ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

Διαβάστε περισσότερα

Εισαγωγή στους Νευρώνες. Κυριακίδης Ιωάννης 2013

Εισαγωγή στους Νευρώνες. Κυριακίδης Ιωάννης 2013 Εισαγωγή στους Νευρώνες Κυριακίδης Ιωάννης 2013 Τι είναι τα Τεχνητά Νευρωνικά Δίκτυα; Είναι μια προσπάθεια μαθηματικής προσομοίωσης της λειτουργίας του ανθρώπινου εγκεφάλου. Είναι ένα υπολογιστικό μοντέλο

Διαβάστε περισσότερα

E [ -x ^2 z] = E[x z]

E [ -x ^2 z] = E[x z] 1 1.ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ Σε αυτήν την διάλεξη θα πάμε στο φίλτρο με περισσότερες λεπτομέρειες, και θα παράσχουμε μια νέα παραγωγή για το φίλτρο Kalman, αυτή τη φορά βασισμένο στην ιδέα της γραμμικής

Διαβάστε περισσότερα

Εφαρμογές μεθοδολογιών μηχανικής εκμάθησης στο χώρο της παραγωγής υδρογονανθράκων. Βασίλης Γαγάνης

Εφαρμογές μεθοδολογιών μηχανικής εκμάθησης στο χώρο της παραγωγής υδρογονανθράκων. Βασίλης Γαγάνης Εφαρμογές μεθοδολογιών μηχανικής εκμάθησης στο χώρο της παραγωγής υδρογονανθράκων Μέθοδοι μηχανικής εκμάθησης Εύρεση μαθηματικής έκφρασης μοντέλου (κανόνα) ο κανόνας διέπει το υπό μελέτη πρόβλημα ανάπτυξη

Διαβάστε περισσότερα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson ΧΑΡΤΟΓΡΑΦΗΣΗ ΤΟΥ ΧΩΡΟΥ ΤΩΝ ΤΑΞΙΝΟΜΗΤΩΝ Ταξινομητές Ταξινομητές συναρτ. διάκρισης Ταξινομητές επιφανειών απόφ. Παραμετρικοί ταξινομητές Μη παραμετρικοί

Διαβάστε περισσότερα

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Οι παρούσες σημειώσεις αποτελούν βοήθημα στο μάθημα Αριθμητικές Μέθοδοι του 5 ου εξαμήνου του ΤΜΜ ημήτρης Βαλουγεώργης Καθηγητής Εργαστήριο Φυσικών

Διαβάστε περισσότερα

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας Εισηγητής Αναστάσιος Κεσίδης Χωρικά φίλτρα Χωρικά φίλτρα Γενικά Σε αντίθεση με τις σημειακές πράξεις και μετασχηματισμούς, στα

Διαβάστε περισσότερα

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 4 o Φροντιστήριο

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 4 o Φροντιστήριο Ασκήσεις Φροντιστηρίου 4 o Φροντιστήριο Πρόβλημα 1 ο Ο πίνακας συσχέτισης R x του διανύσματος εισόδου x( στον LMS αλγόριθμο 1 0.5 R x = ορίζεται ως: 0.5 1. Ορίστε το διάστημα των τιμών της παραμέτρου μάθησης

Διαβάστε περισσότερα

Υπολογιστική Νοημοσύνη. Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning

Υπολογιστική Νοημοσύνη. Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning Υπολογιστική Νοημοσύνη Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning Κεντρική ιδέα Τα παραδείγματα μάθησης παρουσιάζονται στο μηεκπαιδευμένο δίκτυο και υπολογίζονται οι έξοδοι. Για

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

Νευρωνικά ίκτυα και Εξελικτικός. Σηµερινό Μάθηµα. επανάληψη Γενετικών Αλγορίθµων 1 η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές

Νευρωνικά ίκτυα και Εξελικτικός. Σηµερινό Μάθηµα. επανάληψη Γενετικών Αλγορίθµων 1 η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές Νευρωνικά ίκτυα και Εξελικτικός Προγραµµατισµός Σηµερινό Μάθηµα επανάληψη Γενετικών Αλγορίθµων η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές Κωδικοποίηση Αντικειµενική Συνάρτ Αρχικοποίηση Αξιολόγηση

Διαβάστε περισσότερα

Μαθηματική Εισαγωγή Συναρτήσεις

Μαθηματική Εισαγωγή Συναρτήσεις Φυσικός Ραδιοηλεκτρολόγος (MSc) ο Γενικό Λύκειο Καστοριάς A. Μαθηματική Εισαγωγή Πράξεις με αριθμούς σε εκθετική μορφή Επίλυση βασικών μορφών εξισώσεων Συναρτήσεις Στοιχεία τριγωνομετρίας Διανύσματα Καστοριά,

Διαβάστε περισσότερα

6. Στατιστικές μέθοδοι εκπαίδευσης

6. Στατιστικές μέθοδοι εκπαίδευσης 6. Στατιστικές μέθοδοι εκπαίδευσης Μία διαφορετική μέθοδος εκπαίδευσης των νευρωνικών δικτύων χρησιμοποιεί ιδέες από την Στατιστική Φυσική για να φέρει τελικά το ίδιο αποτέλεσμα όπως οι άλλες μέθοδοι,

Διαβάστε περισσότερα

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π.

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα 005 - Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Επισκόπηση Νευρωνικών Δικτύων καθ. Βασίλης Μάγκλαρης maglaris@netmode.ntua.gr www.netmode.ntua.gr Πέμπτη 14/3/2019 Μη Γραμμικό

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 06-07 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Λέκτορας v.koutras@fme.aegea.gr Τηλ: 7035468 Εκτίμηση Διαστήματος

Διαβάστε περισσότερα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium Iii

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium Iii Σ ΤΑΤ Ι Σ Τ Ι Κ Η i Statisticum collegium Iii Η Κανονική Κατανομή Λέμε ότι μία τυχαία μεταβλητή X, ακολουθεί την Κανονική Κατανομή με παραμέτρους και και συμβολίζουμε X N, αν έχει συνάρτηση πυκνότητας

Διαβάστε περισσότερα

Α.Τ.Ε.Ι ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΕΡΓΑΣΤΗΡΙΟ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ 4

Α.Τ.Ε.Ι ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΕΡΓΑΣΤΗΡΙΟ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ 4 Α.Τ.Ε.Ι ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΕΡΓΑΣΤΗΡΙΟ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ 4 ΤΟ ΔΙΚΤΥΟ PERCEPTRON I. Αρχιτεκτονική του δικτύου Το δίκτυο Perceptron είναι το πρώτο νευρωνικό δίκτυο το οποίο

Διαβάστε περισσότερα

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ. Βασικές έννοιες

ΕΙΣΑΓΩΓΗ. Βασικές έννοιες ΕΙΣΑΓΩΓΗ Βασικές έννοιες Σε ένα ερωτηματολόγιο έχουμε ένα σύνολο ερωτήσεων. Μπορούμε να πούμε ότι σε κάθε ερώτηση αντιστοιχεί μία μεταβλητή. Αν θεωρήσουμε μια ερώτηση, τα άτομα δίνουν κάποιες απαντήσεις

Διαβάστε περισσότερα

ΠΑΡΟΥΣΙΑΣΗ ΣΤΑΤΙΣΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ

ΠΑΡΟΥΣΙΑΣΗ ΣΤΑΤΙΣΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ο Κεφάλαιο: Στατιστική ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΟΡΙΣΜΟΙ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Πληθυσμός: Λέγεται ένα σύνολο στοιχείων που θέλουμε να εξετάσουμε με ένα ή περισσότερα χαρακτηριστικά. Μεταβλητές X: Ονομάζονται

Διαβάστε περισσότερα

ΠΛΗ 513-Αυτόνομοι Πράκτορες Χειμερινό εξάμηνο 2012 Εφαρμογή αλγορίθμων ενισχυτικής μάθησης στο παιχνίδι Βlackjack. Χλης Νικόλαος-Κοσμάς

ΠΛΗ 513-Αυτόνομοι Πράκτορες Χειμερινό εξάμηνο 2012 Εφαρμογή αλγορίθμων ενισχυτικής μάθησης στο παιχνίδι Βlackjack. Χλης Νικόλαος-Κοσμάς ΠΛΗ 513-Αυτόνομοι Πράκτορες Χειμερινό εξάμηνο 2012 Εφαρμογή αλγορίθμων ενισχυτικής μάθησης στο παιχνίδι Βlackjack Χλης Νικόλαος-Κοσμάς Περιγραφή παιχνιδιού Βlackjack: Σκοπός του παιχνιδιού είναι ο παίκτης

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Αριθμητική Ολοκλήρωση Εισαγωγή Έστω ότι η f είναι μία φραγμένη συνάρτηση στο πεπερασμένο

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 2017-2018 Παρεμβολή και Παρεκβολή Εισαγωγή Ορισμός 6.1 Αν έχουμε στη διάθεσή μας τιμές μιας συνάρτησης

Διαβάστε περισσότερα