Αναδρομικά Νευρωνικά Δίκτυα και αυτόματη παραγωγή Hashtag από Tweet του Twitter

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

Download "Αναδρομικά Νευρωνικά Δίκτυα και αυτόματη παραγωγή Hashtag από Tweet του Twitter"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Αναδρομικά Νευρωνικά Δίκτυα και αυτόματη παραγωγή Hashtag από Tweet του Twitter Μήτσιος Γεώργιος ΑΕΜ: 6976 Υπό την επίβλεψη του Επίκουρου Καθηγητή κ. Πιτσιάνη Νικόλαου ΘΕΣΣΑΛΟΝΙΚΗ, 2017

2 1

3 Ευχαριστίες Θα ήθελα να ευχαριστήσω, αρχικά, τον επίκουρο καθηγητή κ. Πιτσιάνη Νικόλαο για την εμπιστοσύνη που μου έδειξε αναθέτοντάς μου τη συγκεκριμένη διπλωματική εργασία και την καθοδήγηση που μου παρείχε. Έπειτα, θα ήθελα να ευχαριστήσω την οικογένειά μου και τους φίλους μου για την αδιάλειπτη στήριξή τους όλα αυτά τα χρόνια. 2

4 3

5 Περίληψη Τα τελευταία χρόνια ο τομέας της Μηχανικής Μάθησης έχει γνωρίσει ραγδαία ανάπτυξη για το λόγο ότι υπάρχουν πλέον συστήματα με πολύ μεγάλη υπολογιστική ισχύ που μπορούν να χρησιμοποιηθούν για την αξιοποίησή των δυνατοτήτων του. Το γεγονός αυτό έχει κεντρίσει το ενδιαφέρον των ερευνητών που προσπαθούν και έχουν καταφέρει να αναπτύξουν διάφορα μοντέλα σε μια ευρεία γκάμα από εφαρμογές. Η συγκεκριμένη διπλωματική εργασία ασχολείται με ένα μεγάλο κεφάλαιο της μηχανικής μάθησης, αυτό των νευρωνικών δικτύων και συγκεκριμένα των αναδρομικών νευρωνικών δικτύων. Μέσα από ένα πέρασμα από τους κανόνες που διέπουν τη λειτουργία τους και τις δυνατότητες αυτών, γίνεται μια προσπάθεια εφαρμογής τους σε ένα μοντέλο που εκπαιδεύεται με σκοπό την παραγωγή hashtag από tweet του δημοφιλούς κοινωνικού δικτύου του Twitter. Μετά την εκπαίδευση και την εφαρμογή του δικτύου γίνεται η αξιολόγηση της προσπάθειας και η παρουσίαση των τελικών αποτελεσμάτων. Τα τελικά δίκτυα που παράγονται είναι σε θέση να χρησιμοποιηθούν για το σκοπό της παραγωγής hashtag από tweet, δεδομένου ότι έχουν εκπαιδευτεί σε ένα αρκετά μεγάλο σύνολο δεδομένων από ζεύγη tweet-hashtag ποικίλου περιεχομένου. Η ανάλυση αυτή δείχνει τις δυνατότητες επίλυσης μεγάλων και πολύπλοκων προβλημάτων με τη χρήση των αναδρομικών νευρωνικών δικτύων. Με βάση αυτά τα ευρήματα προσδιορίζονται τρόποι με τους οποίους μπορεί να γίνει η εκμετάλλευση των μοντέλων και μελλοντικές επεκτάσεις τους. 4

6 Recurrent Neural Networks and automated Hashtag generation from Twitter's Tweets Abstract There has been great development in the field of Machine Learning in recent years, mainly due to the fact that the processing power of the machines that make use of its capabilities has greatly increased. This has sparked the interest of developers and analysts who are trying and have managed to develop different models based on machine learning techniques that apply to a wide range of applications. This diploma thesis deals with a large chapter of machine learning science, that of neural networks and the recurrent neural networks in particular. After going through a thorough examination of the execution principles and capabilities of recurrent neural networks, there has been an attempt to apply those towards automatic hashtag generation from tweets taken from the popular social media website of Twitter. After training is done and the network is applied to the dataset, there is an assessment and evaluation of the presented data that came out of the model. The final generated models are capable of the task of hashtag generation out of Twitter s tweets, given that they have been trained in a rather large dataset and the topic span of the tweets is big enough. This analysis shows the capability of recurrent neural networks to solving big and complex problems like this one. Based on the findings and conclusions of this research, there are presented some ways which can lead to further improvement of this application and future work. 5

7 6

8 Πίνακας Περιεχομένων Ευχαριστίες... 2 Περίληψη... 4 Recurrent Neural Networks and automated Hashtag generation from Twitter's Tweets... 5 Abstract... 5 Πίνακας Περιεχομένων... 7 Λίστα Εικόνων Εισαγωγή Machine Learning και Νευρωνικά Δίκτυα Σκοπός της διπλωματικής Επισκόπηση και οργάνωση κεφαλαίων Θεωρητικό Υπόβαθρο Εισαγωγή Νευρωνικά Δίκτυα Recurrent Neural Networks (Αναδρομικά Νευρωνικά Δίκτυα) Εισαγωγή Περιγραφή της Αρχιτεκτονικής των RNN Τεχνικές Εκμάθησης στα Αναδρομικά Νευρωνικά Δίκτυα Long Short Term Memory Δίκτυα Εισαγωγή Αρχιτεκτονική και Λειτουργία των Δικτύων LSTM Παραλλαγές των δικτύων LSTM Επιλογή Παραμέτρων στα RNN Αριθμός Κρυφών Επιπέδων Πλήθος Κόμβων Κρυφών Επιπέδων Dropout Υλοποίηση ενός RNN στο Matlab Εισαγωγή Περιγραφή της λειτουργίας του RNN Το Μοντέλο που χρησιμοποιήθηκε

9 3.2.2 DEKF και BPTT Περιγραφή των Εργαλείων που Αναπτύχθηκαν Πειράματα και Αποτελέσματα Μεθοδολογία Εισαγωγή Συλλογή και Επεξεργασία Δεδομένων από το Twitter Twitter Twitter Streaming API Συλλογή και Προεπεξεργασία Δεδομένων Προβλήματα Μετάφρασης και RNN Εισαγωγή Περιγραφή του Προβλήματος Αντιμετώπιση του προβλήματος με τις Ακολουθίες Διαφορετικού Μήκους Ανάλυση του Μοντέλου που χρησιμοποιήθηκε Perplexity Πειράματα και Αποτελέσματα Εισαγωγή Πληροφορίες του Συνόλου Δεδομένων Πληροφορίες για την Εκπαίδευση του Δικτύου Εφαρμογή των Μοντέλων Αποτελέσματα της Εκπαίδευσης Σχολιασμός των Αποτελεσμάτων η Μέθοδος Αξιολόγησης η Μέθοδος Αξιολόγησης Αξιολόγηση των Μοντέλων Συμπεράσματα και Μελλοντική Εργασία Εισαγωγή Συμπεράσματα Μελλοντική Εργασία Βιβλιογραφία Παράρτημα

10 Λίστα Εικόνων Εικ. 1: Αρχιτεκτονικές Νευρωνικών Δικτύων Εικ. 2: Μέθοδοι Εκμάθησης Νευρωνικών Δικτύων.. 17 Εικ. 3: Ένα Αναδρομικό Νευρωνικό Δίκτυο Εικ. 4: Ένα Feedforward Νευρωνικό Δίκτυο με δυο κρυφά επίπεδα Εικ. 5: Το βασικό σχήμα της τεχνικής του BPTT.. 25 Εικ. 6: Το πρόβλημα της εξασθένησης των συσχετίσεων στα RNN με την πάροδο του χρόνου Εικ. 7: Διατήρηση της πληροφορίας στα δίκτυα LSTM Εικ. 8: Τα δομικά στοιχεία και οι συνδέσεις των μονάδων μνήμης στα LSTM. 34 Εικ. 9: Forget Gate στα LSTM Εικ. 10: Input Gate και είσοδος νέας πληροφορίας στα LSTM.. 35 Εικ. 11: Ενημέρωση των πληροφοριών της μνήμης στα LSTM. 36 Εικ. 12: Έξοδος του LSTM. 36 Εικ. 13: Παραλλαγή LSTM με peephole connections. 37 Εικ. 14: Coupled Input και Forget Gate (CIFG).. 38 Εικ. 15: Gated Recurrent Unit LSTM (GRU).. 39 Εικ. 16: Εφαρμογή του dropout στα Νευρωνικά Δίκτυα. 42 Εικ. 17: Δομή του Recurrent MLP με δυο κρυφά επίπεδα Εικ. 18: Παράδειγμα ενός tweet σε JSON Format Εικ. 19: Το μοντέλο χρήσης 2 δικτύων (κωδικοποιητή-αποκωδικοποιητή) Εικ. 20: Η λειτουργία του μοντέλου κωδικοποιητή-αποκωδικοποιητή Εικ. 21: Συνολική απεικόνιση των hashtag σε 2 διαστάσεις. 71 Εικ. 22: Απεικόνιση υποπεριοχών που σχετίζονται με i) ενημέρωση και δραστηριότητες ελεύθερου χρόνου, ii) τις αμερικάνικες εκλογές Εικ. 23: Πιο μεγεθυμένες περιοχές με i) εύρεση εργασίας, ii) κινητά τηλέφωνα και εφαρμογές, iii) χρηματιστήριο και διεθνείς αγορές

11 1. Εισαγωγή 1.1 Machine Learning και Νευρωνικά Δίκτυα Υπάρχουν πολλές εφαρμογές, οι περισσότερες θα έλεγε κανείς, όπου οι υπολογιστές ξεπερνούν κατά πολύ τις δυνατότητες του ανθρώπου όσον αφορά την ταχύτητα και την ακρίβεια των υπολογισμών. Στον τομέα της επιστήμης, τέτοιου είδους εφαρμογές είναι οι μαθηματικοί υπολογισμοί και στον τομέα της βιομηχανικής παραγωγής δεν νοείται, στην εποχή που ζούμε, κάποια διεργασία, η οποία γίνεται χωρίς τη χρήση αυτόματου ελέγχου από τις μηχανές. Υπάρχουν, όμως, άλλοι τομείς που σχετίζονται με τη λήψη αποφάσεων και εκεί οι υπολογιστές δυσκολεύονται πολύ περισσότερο από τους ανθρώπους, που είναι σε θέση να απαντήσουν σχετικά εύκολα σε τέτοιου είδους προβλήματα. Μερικές από αυτές τις εφαρμογές είναι η παραγωγή γραπτού ή προφορικού λόγου με συνοχή και συνέχεια, η αναγνώριση αντικειμένων από εικόνες, η απάντηση σε μη σαφώς ορισμένες ερωτήσεις, η οδήγηση κτλ. Ο λόγος που συμβαίνει αυτό είναι ότι δεν υπάρχει ακριβής περιγραφή του πώς οι άνθρωποι επεξεργάζονται τέτοιου είδους δεδομένα και ο τρόπος λήψης των αποφάσεων πηγάζει από τη γνώση που έχουμε αποκομίσει από την τεχνική του trial and error και από την αντιμετώπιση παρόμοιων καταστάσεων. Έτσι, δεν μπορεί να δημιουργηθεί και να περιγραφεί ένα ακριβές μοντέλο αντιμετώπισής τους που θα μπορούσε να μάθει ένας υπολογιστής. Τέτοιες περιπτώσεις εφαρμογών αντιμετωπίζονται, στην επιστήμη των υπολογιστών, από τον τομέα του machine learning. Αντίστοιχα με τον τρόπο επίλυσης αυτών των προβλημάτων από τους ανθρώπους, οι μηχανές εκπαιδεύονται χρησιμοποιώντας ατελείς πληροφορίες σχετικά με την επιθυμητή συμπεριφορά του συστήματος και ενός συνόλου παραδειγμάτων αντί του ακριβούς μοντέλου της επίλυσής τους. Η μέθοδος αυτή οδηγεί στην ανάπτυξη ενός τρόπου σύνδεσης των δεδομένων εισόδου του συστήματος με το επιθυμητό αποτέλεσμα αυτού. Μια μέθοδος, που χρησιμοποιείται κατά κόρον στον τομέα του machine learning, είναι αυτή των νευρωνικών δικτύων. Αυτά τα δίκτυα, όσον αφορά τη δομή και τη λειτουργία τους, είναι εμπνευσμένα από τα βιολογικά νευρωνικά δίκτυα που συναντώνται στον εγκέφαλο των ανθρώπων. Αποτελούνται από συστοιχίες μονάδων οι οποίες ονομάζονται νευρώνες και το κάθε ένα από αυτά υλοποιεί μια πολύ απλή διαδικασία. Αξιοποιώντας το σύνολο αυτών, το νευρωνικό δίκτυο είναι σε θέση να αναγνωρίσει ή να δημιουργήσει μια σύνδεση, πολλές φορές εξαιρετικά πολύπλοκη, μεταξύ των δεδομένων της εισόδου και της εξόδου αυτού. Ανάλογα με τη δομή των νευρώνων, την κατανομή τους στο χώρο και τον τρόπο σύνδεσής τους, δημιουργούνται οι διάφορες μορφές των τεχνητών νευρωνικών δικτύων. Μια κατηγορία αυτών, που θα μας απασχολήσει στην παρούσα διπλωματική εργασία είναι τα αναδρομικά νευρωνικά δίκτυα. Αναπτύχθηκαν και καθιερώθηκαν σαν μοντέλα, κυρίως, την δεκαετία και έχουν γνωρίσει ιδιαίτερη άνθηση από τότε και ακόμα περισσότερο από το 2010 και μετά που έχουν χρησιμοποιηθεί σε πάρα πολλές εφαρμογές με state of the art αποτελέσματα. Η κύρια διαφορά τους με τα υπόλοιπα νευρωνικά δίκτυα είναι η ύπαρξη αναδρομικών συνδέσεων μεταξύ των νευρώνων τους που τους παρέχουν τη δυνατότητα της μνήμης που εξαρτάται από προηγούμενα δείγματα. Το χαρακτηριστικό τους αυτό τα καθιστά 10

12 πλέον κατάλληλα όταν πρόκειται για εφαρμογές όπως η παραγωγή λόγου με συνάφεια, η πρόβλεψη χρονοσειρών, η σύνθεση μουσικής και πολλά άλλα. 11

13 1.2 Σκοπός της διπλωματικής Η παρούσα διπλωματική εργασία λαμβάνει το σκοπό της από την ολοένα και αυξανόμενη χρήση των αναδρομικών νευρωνικών δικτύων και τα πολλά υποσχόμενα αποτελέσματα που έχουν επιδείξει σε μια πληθώρα από εφαρμογές. Θα μπορούσε να πει κανείς ότι χωρίζεται σε δυο βασικά μέρη, που συντελούν εξίσου στον τελικό στόχο που είναι η εκπαίδευση ενός δικτύου που θα είναι σε θέση να παράγει αυτόματα hashtag για δεδομένα tweet του δημοφιλούς κοινωνικού δικτύου Twitter. Το πρώτο μέρος, λοιπόν, στοχεύει στην βαθιά γνώση των αναδρομικών νευρωνικών δικτύων και στην κατανόηση του τρόπου λειτουργίας τους. Σε αυτό θα αναλυθούν οι βασικότεροι τύποι αυτών και οι μέθοδοι εκπαίδευσής τους. Η γνώση αυτή θα οδηγήσει στη δημιουργία ενός τέτοιου δικτύου στο προγραμματιστικό περιβάλλον του Matlab και στη διεξαγωγή κάποιων πειραμάτων με αυτό που θα είναι σε θέση να αποδείξουν την ορθή λειτουργία του. Το δεύτερο κομμάτι ασχολείται αποκλειστικά με το έργο της αυτόματης παραγωγής hashtag από tweet του Twitter. Σκοπός του είναι η συλλογή και επεξεργασία των δεδομένων για την εκπαίδευση και αξιολόγηση ενός αναδρομικού νευρωνικού δικτύου, το οποίο θα είναι σε θέση να λαμβάνει ως είσοδο ένα δεδομένο tweet και να παράγει στην έξοδό του hashtag(s) (ένα ή περισσότερα) σχετικά, πάντα, με το περιεχόμενό του. 12

14 1.3 Επισκόπηση και οργάνωση κεφαλαίων Το παρόν έγγραφο χωρίζεται θεματικά σε έξι (6) κεφάλαια. Το παρόν κεφάλαιο είναι εισαγωγικό και αφορά το αντικείμενο με το οποίο θα ασχοληθεί η συγκεκριμένη διπλωματική εργασία. Στο 2 ο Κεφάλαιο είναι συσσωρευμένο όλο το θεωρητικό υπόβαθρο που βρίσκεται πίσω από τα αναδρομικά νευρωνικά δίκτυα. Εκεί υπάρχουν όλα τα στοιχεία που θα χρησιμοποιηθούν για την ανάπτυξη και εκπαίδευση αυτών στα επόμενα κεφάλαια. Το 3 ο Κεφάλαιο περιγράφει τη διαδικασία που ακολουθήθηκε για την ανάπτυξη ενός πλήρως λειτουργικού αναδρομικού νευρωνικού δικτύου στο προγραμματιστικό περιβάλλον του Matlab, καθώς και κάποια πειράματα που διεξήχθησαν με τη χρήση αυτού. Στο 4 ο Κεφάλαιο αναλύονται τα βήματα της διαδικασίας χρήσης ενός αναδρομικού νευρωνικού δικτύου για την παραγωγή hashtag από tweet του Twitter. Πιο συγκεκριμένα, περιγράφεται η μέθοδος συλλογής του συνόλου δεδομένων και τα προβλήματα που αντιμετωπίστηκαν για την εκπαίδευση του δικτύου που θα πραγματοποιήσει την εφαρμογή αυτή. Στο 5 ο Κεφάλαιο παρουσιάζονται αναλυτικά τα πειράματα που πραγματοποιήθηκαν με την επιλογή των τελικών μοντέλων και οι παράμετροι που χρησιμοποιήθηκαν για την εκπαίδευση αυτών, όπως και τα αποτελέσματα που προέκυψαν από αυτό. Το 6 ο Κεφάλαιο,που είναι και το καταληκτικό, περιέχει τα συμπεράσματα από το σύνολο της δουλειάς που έγινε σε αυτή τη διπλωματική εργασία, σύμφωνα με τους στόχους που είχαν τεθεί. Τέλος, αναφέρεται σε προτροπές και ιδέες για μελλοντική εργασία που θα μπορούσαν να συμβάλλουν στην επέκταση του συστήματος που πραγματοποιήθηκε στα πλαίσια αυτής της εργασίας. 13

15 2. Θεωρητικό Υπόβαθρο 2.1. Εισαγωγή Στο κεφάλαιο αυτό αναπτύσσεται όλο το θεωρητικό υπόβαθρο που απαιτήθηκε για την εκπόνηση αυτής της διπλωματικής εργασίας. Το περιεχόμενό του αποτελείται από τις μεθόδους ανάπτυξης και εκπάιδευσης των αναδρομικών νευρωνικών δικτύων. Συγκεκριμένα, αφού γίνει περιγραφή του τι είναι αυτού του είδους τα δίκτυα και που χρησιμοποιούνται, παρουσιάζονται τα διαφορετικά είδη αυτών, μαζί με τις ειδοποιούς διαφορές τους στην αρχιτεκτονική, τον τρόπο εκπαίδευσής τους και των εφαρμογών που αποδίδουν καλύτερα λόγω των χαρακτηριστικών τους. Ιδιαίτερη έμφαση δίνεται στους αλγορίθμους εκμάθησης των αναδρομικών νευρωνικών δικτύων, που είναι και το σημαντικότερο κομμάτι τους, αφού από αυτούς εξαρτάται η σύγκλιση και η επιτυχία ή όχι της εκπαίδευσης. Τέλος, παρουσιάζεται και μια υποκατηγορία αυτών των δικτύων, τα Long Short Term Memory δίκτυα που είναι αυτά που επιτυγχάνουν, μέχρι στιγμής, τα καλύτερα αποτελέσματα στα καθήκοντα τα οποία χρησιμοποιούνται Νευρωνικά Δίκτυα Ο εγκέφαλος είναι το κέντρο της νοημοσύνης του ανθρώπου και αποτελείται από σχεδόν νευρώνες [2]. Με τα τεχνητά νευρωνικά δίκτυα η επιστημονική κοινότητα προσπαθεί να μιμηθεί και να μοντελοποιήσει τη μη γραμμική αυτή συμπεριφορά του εγκεφάλου που σχετίζεται άμεσα με τη λήψη των αποφάσεων. Οι μέθοδοι που χρησιμοποιούνται σε αυτά τα δίκτυα παρέχουν ένα απελευθερωμένο μοντέλο, το οποίο μπορεί να προσαρμοστεί σε ένα μεγάλο εύρος εφαρμογών, έχοντας ανοχή στα σφάλματα και την ικανότητα να χρησιμοποιεί παράλληλα και διανεμημένα συστήματα για την ταχύτερη εξαγωγή της λύσης του προβλήματος. Πρόκειται στην ουσία για μαύρα κουτιά τα οποία μαθαίνουν την εσωτερική συσχέτιση ενός αγνώστου συστήματος χωρίς να προσπαθούν να μαντέψουν τις συναρτήσεις που διέπουν τις διασυνδέσεις του εν λόγω συστήματος. Χρησιμοποιούνται ευρέως σε θέματα όπως η προσέγγιση μαθηματικών συναρτήσεων, προβλήματα κατάταξης δεδομένων σε κλάσεις, εξαγωγής χαρακτηριστικών από μοντέλα, clustering, κβαντοποίησης διανυσμάτων, βελτιστοποίησης και άλλα. Αποτελούν μια από τις βασικές μεθοδολογίες στην επεξεργασία των πληροφοριών και βρίσκουν εφαρμογή σχεδόν σε όλες τις περιοχές της επιστήμης και της μηχανικής. Τα νευρωνικά δίκτυα διακρίνονται με βάση την αρχιτεκτονική τους, τα χαρακτηριστικά των κόμβων (nodes) και τους κανόνες εκμάθησης που ακολουθούν. Αντιπροσωπευτικό της αρχιτεκτονικής τους είναι ο πίνακας W = [w ij ] που περιέχει τις τιμές των βαρών που συνδέουν τον κόμβο i με τον κόμβο j, για όλους τους διασυνδεδεμένους μεταξύ τους κόμβους. Ένα βάρος με τιμή w ij = 0 σημαίνει ότι δεν υπάρχει κάποια σύνδεση μεταξύ των κόμβων i και j και μπορεί να χρησιμοποιηθεί για τη δημιουργία νέων τοπολογιών στο δίκτυο. Ο βασικός διαχωρισμός που μπορεί να γίνει στα νευρωνικά δίκτυα είναι σε feedforward και αναδρομικά (recurrent neural networks), καθώς και σε υβριδικά αυτών των δυο. Άλλες δημοφιλείς τοπολογίες των νευρωνικών δικτύων είναι τα δίκτυα πλέγματος (lattice networks), τα πολυεπίπεδα δίκτυα 14

16 πρόσθιας τροφοδότησης με πλευρικές διασυνδέσεις (layered feedforward networks with lateral connections) και τα κυψελοειδή δίκτυα (cellular networks) που φαίνονται στην Εικόνα 1 [2]. Εικ. 1: Αρχιτεκτονικές Νευρωνικών Δικτύων. (a) Layered feedforward network. (b) Recurrent network. (c) Two-dimensional lattice network. (d) Layered feedforward network with lateral connections. (e) Cellular network. Τα feedforward δίκτυα αποτελούνται από ένα ή περισσότερα επίπεδα (layers) και οι συνδέσεις μεταξύ των νευρώνων είναι προς μια μόνο κατεύθυνση. Τα επίπεδα αποτελούνται από αυτό της εισόδου, τα εσωτερικά ή αλλιώς κρυφά επίπεδα και το επίπεδο εξόδου. Σε αυτού του είδους δίκτυα δεν υπάρχει καμία σύνδεση μεταξύ των νευρώνων που βρίσκονται στο ίδιο επίπεδο καθώς και καμία ανάδραση μεταξύ των επιπέδων. Σε ένα πλήρως διασυνδεδεμένο feedforward δίκτυο, όπως αυτό της Εικόνας 1a ο κάθε κόμβος ενός επιπέδου συνδέεται με όλους τους κόμβους στο επόμενο επίπεδο. Στα αναδρομικά νευρωνικά δίκτυα (Εικόνα 1b) υπάρχει τουλάχιστον μια ανάδραση, είτε ανάμεσα σε κόμβους του ίδιου επιπέδου, είτε σε κάποιο κόμβο με κόμβο ενός προηγούμενου επιπέδου. Με αυτά τα δίκτυα θα ασχοληθεί εκτενώς το παρόν έγγραφο στο επόμενο υποκεφάλαιο. Τα δίκτυα πλέγματος (Εικόνα 1c) αποτελούνται από ένα, δυο ή περισσότερους πίνακες νευρώνων (W), που ο κάθε πίνακας αντιστοιχεί σε ξεχωριστό σύνολο κόμβων εισόδου (input nodes). Στα πολυεπίπεδα δίκτυα πρόσθιας τροφοδότησης με πλευρικές διασυνδέσεις (Εικόνα 1d) η σύνδεση μεταξύ των νευρώνων γίνεται προς μια κατεύθυνση, όπως στα feedforward δίκτυα και υπάρχουν επιπλέον συνδέσεις μεταξύ των νευρώνων του ίδιου επιπέδου. 15

17 Τα κυψελοειδή δίκτυα αποτελούνται από νευρώνες, που στην προκειμένη περίπτωση ονομάζονται κυψέλες ή κελιά (cells). Κάθε κελί επικοινωνεί μόνο με τα γειτονικά του κελιά μέσω αμφίδρομων συνδέσεων και συνεπώς διεγείρεται μόνο από σήματα που προέρχονται από το ίδιο ή παρακείμενα κελιά. Η λειτουργία των νευρωνικών δικτύων χωρίζεται σε δυο στάδια, αυτά της εκμάθησης (learning) και της ανάκλησης (recalling). Η διαδικασία της εκμάθησης του συστήματος γίνεται συνήθως με τη χρησιμοποίηση δειγμάτων που εμπίπτουν στο γενικό κανόνα πάνω στον οποίο θέλουμε να γίνει το training. Με αυτό τον τρόπο οι παράμετροι του δικτύου (ο πίνακας βαρών W) προσαρμόζονται κατάλληλα με τη χρήση κάποιων κανόνων εκμάθησης, που στην ουσία αποτελούν τον αλγόριθμο με τον οποίο γίνεται η εκμάθηση. Το training περιλαμβάνει την πλήρη σάρωση των δεδομένων για κάποιο πεπερασμένο αριθμό βημάτων, τα οποία ονομάζονται epochs και ο έλεγχος γίνεται με τη χρήση κάποιων κριτηρίων. Μόλις το δίκτυο φτάσει να έχει την επιθυμητή απόδοση ή έχει πραγματοποιηθεί ένας αριθμός από epochs που έχει ορισθεί κατά την αρχή του training, το στάδιο της εκμάθησης τερματίζεται και το νευρωνικό δίκτυο μπορεί να χρησιμοποιηθεί πλέον για τη διαδικασία της ανάκλησης. Σε αυτό το δεύτερο και τελευταίο στάδιο το νευρωνικό δίκτυο είναι σε θέση να αντικαταστήσει πλήρως το σύστημα στη δυναμική του οποίου γινόταν η εκμάθηση και να χρησιμοποιηθεί πάνω σε νέα δείγματα. Οι μέθοδοι εκμάθησης χωρίζονται σε supervised, unsupervised και reinforcement learning, όπως φαίνονται στην Εικόνα 2. Τα x p και y p είναι αντίστοιχα η είσοδος και η έξοδος την στιγμή του p epoch, το ŷ p αναφέρεται στην έξοδο του νευρωνικού δικτύου και το e p στο σφάλμα που δίνεται από τον τύπο e p = y p -ŷ p. Από την πλευρά της στατιστικής, το unsupervised learning μαθαίνει την συνάρτηση πυκνότητας πιθανότητας του συνόλου εκμάθησης, ενώ το supervised learning την συνάρτηση πυκνότητας πιθανότητας του p(y x). Το supervised learning χρησιμοποιείται ευρέως σε προβλήματα κατάταξης σε κλάσεις, προσέγγισης, ελέγχου, αναγνώρισης και μοντελοποίησης, επεξεργασίας σημάτων και βελτιστοποίησης, το unsupervised learning σε θέματα όπως το clustering, η κβαντοποίηση διανυσμάτων, η εξαγωγή χαρακτηριστικών, η κωδικοποίηση σήματος και η ανάλυση δεδομένων και το reinforcement learning σε τομείς που αφορούν μηχανισμούς ελέγχου και τεχνητής νοημοσύνης. Εικ. 2: Μέθοδοι Εκμάθησης Νευρωνικών Δικτύων. (a) Supervised learning. (b) Unsupervised learning. (c) Reinforcement learning. (a) Το supervised learning (Εικόνα 2a) είναι ένα σύστημα κλειστού βρόχου όπου οι παράμετροι προσαρμόζονται μετά από σύγκριση της εξόδου του δικτύου με την 16

18 επιθυμητή έξοδο. Το συνολικό σφάλμα, που είναι συνήθως το μέσο τετραγωνικό σφάλμα (mse), δίνεται από τον τύπο: E = 1 N N y p y p 2 1 και υπολογίζεται κάθε φορά στο τέλος κάθε epoch. Ο αριθμός Ν αντιστοιχεί στο πλήθος των ζευγών εισόδου-εξόδου του συνόλου εκμάθησης. Για την ελαχιστοποίηση του σφάλματος χρησιμοποιείται μια διαδικασία gradient-descent που εγγυάται τη σύγκλιση σε ένα τοπικό ελάχιστο κοντά στην περιοχή της αρχικής λύσης του προβλήματος της κατάλληλης προσαρμογής των παραμέτρων. (b) Στο unsupervised learning (Εικόνα 2b) τα δείγματα του συνόλου εκμάθησης δεν περιέχουν τιμές εξόδου (target values) και το δίκτυο προσπαθεί να αυτοσυσχετίσει πληροφορίες από τα δεδομένα εισόδου μέσω της μείωσης της διάστασης των δεδομένων (dimensionality reduction) ή του πλήθους των δεδομένων εισόδου. Είναι, δηλαδή, μια τεχνική που αποσκοπεί αποκλειστικά στην εύρεση συσχέτισης ανάμεσα στα δεδομένα εισόδου και χρησιμοποιείται για να εντοπίσει τα σημαντικότερα μοτίβα ή χαρακτηριστικά αυτής, χωρίς τη βοήθεια που θα προσέφεραν τα δεδομένα εξόδου. (c) Το reinforcement learning (Εικόνα 2c) αφορά μια κλάση υπολογιστικών αλγορίθμων που μπορούν να μάθουν να επιλέγουν την καλύτερη ενέργεια από μια πληθώρα ενεργειών με βάση τη μεγιστοποίηση της ανταμοιβής που θα αποκομίσει το σύστημα. Σε αυτή την περίπτωση είναι άγνωστη η επιθυμητή έξοδος του συστήματος, αλλά γίνεται ανατροφοδότηση που αφορά την επιτυχία ή αποτυχία της απόκρισης του νευρωνικού δικτύου και αναλόγως επιβραβεύεται ή τιμωρείται για αυτή του τη συμπεριφορά. 17

19 2.3 Recurrent Neural Networks (Αναδρομικά Νευρωνικά Δίκτυα) Εισαγωγή Αυτή η ενότητα ασχολείται με τα αναδρομικά νευρωνικά δίκτυα και περιγράφει τις αρχές και τη λειτουργία τους, τις αρχιτεκτονικές διάφορων αναδρομικών μοντέλων, τις συνηθέστερες μεθόδους εκμάθησης που χρησιμοποιούνται, διάφορες τεχνικές backpropagation και παραλλαγές αυτών. Τα αναδρομικά νευρωνικά δίκτυα είναι αυτά που η δομή τους μοιάζει περισσότερο με τη λειτουργία του ανθρώπινου εγκεφάλου, όπου οι διεργασίες της αντίληψης, της λήψης αποφάσεων και της εκμάθησης είναι αμιγώς μη γραμμικές. Το κύριο χαρακτηριστικό τους που τα διαφοροποιεί από τα feedforward δίκτυα είναι ότι περιέχουν τουλάχιστον μια ανάδραση ανάμεσα στους κόμβους του ίδιου επιπέδου ή κόμβους διαφορετικών επιπέδων, όπως αναφέρθηκε στην προηγούμενη ενότητα. Η ιδιότητά αυτή τους προσδίδει δυο πολύ σημαντικά χαρακτηριστικά έναντι των feedforward δικτύων. Το πρώτο είναι αυτό της αντίληψης του χρόνου, δηλαδή σε εφαρμογές με δυναμικά συστήματα μπορούν να χρησιμοποιηθούν για να προβλέψουν την έξοδο της στιγμής t+1 έχοντας δεδομένα της στιγμής t ή και προηγούμενων. Το επόμενο χαρακτηριστικό είναι η εισαγωγή της μνήμης στα νευρωνικά δίκτυα. Τέτοιου είδους δίκτυα μπορούν να χρησιμοποιηθούν εγγενώς σε προβλήματα στα οποία οι είσοδοι δεν είναι ανεξάρτητες μεταξύ τους, αλλά υπάρχει κάποια συσχέτιση με προηγούμενα δείγματα. Τα αναδρομικά νευρωνικά δίκτυα είναι δυναμικά συστήματα που μπορούν να μοντελοποιήσουν και να αναπαραστήσουν χρονικά μεταβαλλόμενα μοντέλα. Το γεγονός ότι χρησιμοποιούνται για να προσομοιώσουν συστήματα με τη χρήση κοινών διαφορικών εξισώσεων, τα κάνει κατάλληλα για ψηφιακή υλοποίηση και έχουν επιπλέον ισχυρές υπολογιστικές δυνατότητες όταν χρησιμοποιούνται σε αυτά τα μοντέλα. Τέτοιου είδους μοντέλα είναι και όλα τα βιολογικά νευρωνικά δίκτυα. Μπορούν, επίσης, να χρησιμοποιηθούν αποδοτικά σε θέματα που περιλαμβάνουν την αναγνώριση και αντίστροφη αναγνώριση συστημάτων, το φιλτράρισμα και την πρόβλεψη πληροφοριών, την κατάταξη δεδομένων σε κλάσεις, την μοντελοποίηση στοχαστικών ακολουθιών, την συμπίεση δεδομένων κ.α.. Κάποιοι από τους τομείς στους οποίους χρησιμοποιούνται αποδοτικά ή έχουν καταδείξει πολλά υποσχόμενα αποτελέσματα είναι οι τηλεπικοινωνίες, ο έλεγχος χημικών εγκαταστάσεων, ο έλεγχος μηχανών και γεννητριών, η ρομποτική, η αναγνώριση ομιλίας, η παραγωγή meta πληροφοριών από εικόνες, η ανάλυση δεδομένων σε βίντεο, η μετάφραση και η αυτόματη συγγραφή κειμένου ή κώδικα Περιγραφή της Αρχιτεκτονικής των RNN Το βασικό δομικό στοιχείο ενός αναδρομικού νευρωνικού δικτύου είναι οι νευρώνες (μονάδες ή κόμβοι του συστήματος). Οι νευρώνες συνδέονται μεταξύ τους με συναπτικούς δεσμούς οι οποίοι περιγράφονται από το βάρος τους. Διαχωρίζονται συνήθως σε κόμβους εισόδου, εσωτερικούς κόμβους και εξόδου. Κάθε χρονική στιγμή οι κόμβοι έχουν μια τιμή ενεργοποίησης, η οποία αναπαρίσταται με u(n) για τους κόμβους εισόδου, x(n) για τους εσωτερικούς και y(n) για τους κόμβους εξόδου. Πολλές φορές αναφερόμαστε σε όλους με την ονομασία x(n) [3]. 18

20 Τα αναδρομικά νευρωνικά δίκτυα κατηγοριοποιούνται σε πλήρως αναδρομικά δίκτυα, στα οποία επιτρέπεται η σύνδεση όλων των νευρώνων μεταξύ τους και στα τοπικά αναδρομικά δίκτυα. Στα πλήρως αναδρομικά δίκτυα δεν υπάρχει διάκριση στους κόμβους εισόδου και κάθε κόμβος μπορεί να αποτελέσει είσοδο για οποιονδήποτε άλλο κόμβο, συμπεριλαμβανομένου και του εαυτού του. Τα δεύτερα περιέχουν, συνήθως, μόνο αναδρομικές συνδέσεις μεταξύ των νευρώνων που βρίσκονται ίδιο επίπεδο και η διαδικασία της διάδοσης προς τα εμπρός κατά την εκμάθηση μοιάζει πολύ με αυτή των feedforward δικτύων. Συγκριτικά με τα τοπικά αναδρομικά δίκτυα, τα πλήρως αναδρομικά πάσχουν από θέματα ευστάθειας κατά το training και απαιτούν τη χρήση περίπλοκων και χρονοβόρων αλγορίθμων εκμάθησης. Τα τοπικά αναδρομικά δίκτυα έχουν, αντιθέτως, πιο απλή δομή που τα κάνει πιο αποδοτικά κατά τη διαδικασία εκμάθησης και παρέχουν τη δυνατότητα για έλεγχο της ευστάθειας στους εσωτερικούς τους κόμβους. Μια ακόμα διάκριση των RNN που χρησιμοποιούνται σε εφαρμογές διακριτού χρόνου είναι σε αναδρομικά δίκτυα με χρονοκαθυστέρηση και σύγχρονα αναδρομικά δίκτυα. Τα δίκτυα που λειτουργούν με χρονοκαθυστέρηση εκπαιδεύονται με στόχο τη μείωση του σφάλματος πρόβλεψης, ενώ τα σύγχρονα δίκτυα δε στοχεύουν στην ιδιότητα του να έχουν μνήμη ή καλύτερη πρόβλεψη όσο εκπαιδεύεται το δίκτυο, αλλά κάνουν χρήση των αναδράσεων με στόχο να προσφέρουν καλύτερη δυνατότητα προσέγγισης συναρτήσεων σύμφωνα με τις αρχές της θεωρίας του Turing και της περιπλοκότητας. Σε αυτό τον τομέα έχει αποδειχθεί ότι έχουν πολύ ισχυρές ικανότητες και έχει φανεί πειραματικά ότι μπορούν να μάθουν οποιαδήποτε συνάρτηση πηγάζει από κάποιο MLP (Multi Layer Perceptron), χωρίς όμως να ισχύει το αντίστροφο. Παρακάτω ακολουθεί η περιγραφή και ο ορισμός των παραμέτρων ενός απλού αναδρομικού δικτύου. Το συγκεκριμένο μοντέλο αποτελείται από Κ μονάδες εισόδου που περιγράφονται από το διάνυσμα ενεργοποίησης εισόδου [3]: (2.1) u(n) = (u 1 (n),, u K (n)) t, υπάρχουν Ν εσωτερικοί κόμβοι με διάνυσμα ενεργοποίησης: (2.2) x(n) = (x 1 (n),, x N (n)) t, και L κόμβοι εξόδου με διάνυσμα ενεργοποίησης: (2.3) y(n) = (y 1 (n),, y L (n)) t, όπου με t ορίζεται ο ανάστροφος πίνακας. Τα βάρη των συνδέσεων των κόμβων εισόδου, εσωτερικών και εξόδου συλλέγονται σε τρεις διαφορετικούς πίνακες βαρών, διαστάσεων NxK, NxN και Lx(K+N) αντίστοιχα. Οι πίνακες αυτοί ορίζονται ως: 19

21 (2.4) W in = [w in (i, j)], W = [w(i, j)], W out = [w out (i, j)]. Οι κόμβοι εξόδου μπορεί να συνδέονται ξανά με τους εσωτερικούς κόμβους με βάρη που αποθηκεύονται σε έναν ακόμη πίνακα (2.5) W back = [w back (i, j)]. Μια αναπαράσταση ενός τέτοιου αναδρομικού δικτύου φαίνεται στην Εικόνα 3. Με διακεκομμένη και πιο απαλή διαγράμμιση είναι κάποιες προαιρετικές συνδέσεις. Οι συνδέσεις που έχουν βάρος 0 θεωρούνται ως μη υπαρκτές και δεν επηρεάζουν το σύστημα, ενώ μπορούν να υπάρχουν συνδέσεις με τους κόμβους εξόδου όχι μόνο από τους εσωτερικούς κόμβους αλλά και κατευθείαν από τους κόμβους εισόδου ή αναδρομικές από αυτές που βρίσκονται στο ίδιο το επίπεδο της εξόδου. c Εικ. 3: Ένα Αναδρομικό Νευρωνικό Δίκτυο. Η ενεργοποίηση των εσωτερικών κόμβων γίνεται σύμφωνα με τον τύπο: (2.6) x(n + 1) = f (W in u(n + 1) + Wx(n) + W back y(n)), όπου u(n+1) είναι η είσοδος του παρόντος δείγματος και f είναι η συνάρτηση μεταφοράς του συγκεκριμένου κόμβου ή αλλιώς συνάρτηση ενεργοποίησης. Τις περισσότερες φορές αυτή η συνάρτηση έχει τη μορφή κάποιας σιγμοειδούς συναρτήσεως, όπως αυτή της υπερβολικής εφαπτομένης (f = tanh). Μπορεί όμως να είναι μια οποιαδήποτε συνάρτηση. Η έξοδος του δικτύου υπολογίζεται από τον τύπο: (2.7) y(n + 1) = f out (W out (u(n + 1) + x(n + 1) + y(n))), 20

22 όπου (u(n+1),x(n+1),y(n)) είναι το συγχωνευμένο διάνυσμα των διανυσμάτων εισόδου, εσωτερικών και εξόδου και η συνάρτηση f out είναι συνήθως η ίδια συνάρτηση με την f, αλλά δεν απαγορεύεται και να διαφέρουν μεταξύ τους Τεχνικές Εκμάθησης στα Αναδρομικά Νευρωνικά Δίκτυα Τις τελευταίες δεκαετίες, που έχει γνωρίσει μεγάλη άνθιση ο τομέας των νευρωνικών δικτύων, έχουν εφαρμοστεί πολλές μέθοδοι που χρησιμοποιούνται στη διαδικασία της εκπαίδευσης αυτών. Αναμφίβολα, ο πιο δημοφιλής κανόνας εκμάθησης στα νευρωνικά δίκτυα είναι αυτός του backpropagation και έχει κατά συνέπεια επεκταθεί και στα αναδρομικά νευρωνικά δίκτυα με την ονομασία backpropagation through time (BPTT). Αποτελεί μια γενίκευση του LMS (Least Mean Squares) αλγορίθμου και ονομάζεται, επίσης, γενικευμένος κανόνας δέλτα (generalized delta rule). Χρησιμοποιεί μια τεχνική αναζήτησης της κλίσης (gradient) με στόχο να ελαχιστοποιήσει μια συνάρτηση κόστους που έχει οριστεί για την αξιολόγηση της απόκλισης μεταξύ του επιθυμητού σήματος και της εξόδου του νευρωνικού δικτύου. Η συνάρτηση κόστους που αξιολογείται είναι συνήθως το mse. Κάποιοι άλλοι γνωστοί κανόνες που εμπίπτουν στην κατηγορία εκμάθησης των αναδρομικών δικτύων είναι το real time recurrent learning (RTRL) και το extended kalman filter (EKF). Backpropagation Ο αλγόριθμος του backpropagation [3], [4] χρησιμοποιεί, για κάθε ακολουθία εισόδου, την έξοδο του νευρωνικού δικτύου ώστε να τη συγκρίνει με την επιθυμητή ακολουθία εξόδου και έπειτα σχηματίζει το σφάλμα για κάθε κόμβο του τελευταίου επιπέδου του δικτύου (επίπεδο εξόδου) κάνοντας σύγκριση αυτών των δυο. Ακολούθως, το σφάλμα της εξόδου διαδίδεται προς τα πίσω περνώντας από όλους τους κόμβους του δικτύου σε μια διαδικασία κλειστής επανάληψης. Με βάση αυτό το σφάλμα διορθώνονται τα βάρη του πίνακα W με τη χρήση κάποιου αλγόριθμου μείωσης της κλίσης. Τις περισσότερες φορές αυτός ο αλγόριθμος είναι ο stochastic gradient descent (SGD). Προκειμένου να είναι εφικτή η υλοποίηση του backpropagation αλγορίθμου απαιτείται η χρήση κάποιας συνεχούς, μη γραμμικής, αυξανόμενης μονοτονικά, διαφορικής συνάρτησης ενεργοποίησης, όπως κάποια σιγμοειδής συνάρτηση σαν αυτή της υπερβολικής εφαπτομένης. Σε αυτό το σημείο θα γίνει μια σύντομη περιγραφή της διαδικασίας που ακολουθεί η εκμάθηση μέσω του backpropagation στα feedforward δίκτυα. Αρχικά, θεωρούμε ένα multi-layer perceptron (MLP) με πλήθος k κρυφών επιπέδων. Μαζί με το επίπεδο εισόδου και αυτό της εξόδου έχουμε συνολικά k+2 επίπεδα στο δίκτυο, τα οποία αριθμούμε από 0 εως k+1. Η Εικόνα 4 απεικονίζει ένα τέτοιο δίκτυο με δυο κρυφά επίπεδα. Ο αριθμός των κόμβων εισόδου είναι K, των κόμβων εξόδου L και των κόμβων των εσωτερικών επιπέδων 1,,Μ είναι N Μ. Η τιμή που έχει το βάρος της σύνδεσης του i κόμβου στο m επίπεδο και του κόμβου j στο επίπεδο m+1 συμβολίζεται με w m (i,j). Η ενεργοποίηση του i κόμβου στο m επίπεδο είναι x m (i), για m=0 αποτελεί κόμβο εισόδου και για m=k+1 κόμβο εξόδου. 21

23 Εικ. 4: Ένα Feedforward Νευρωνικό Δίκτυο με δυο κρυφά επίπεδα. Τα δεδομένα που χρησιμοποιούνται για την εκπαίδευση του δικτύου αποτελούνται από Τ ζεύγη εισόδου-εξόδου. (2.8) u(n) = (x 1 0 (n),, x K 0 (n)) t (δεδομένα εισόδου) (2.9) d(n) = (d 1 k+1 (n),, d L k+1 (n)) t (δεδομένα εξόδου) Η παράμετρος n αναφέρεται στον αύξοντα αριθμό του δείγματος και όχι στο χρόνο. Ακολουθεί η ενεργοποίηση όλων των κόμβων του δικτύου, εκτός από αυτούς της εισόδου, σύμφωνα με τον τύπο (2.10) x m+1 N i (n) = f( m j=1 w m ij x i (n)). Πολλές φορές χρησιμοποιείται και ένας όρος bias (θ m j ), ο οποίος λειτουργεί αθροιστικά στον παραπάνω τύπο αλλά παραλείπεται σε αυτή την προσπάθεια περιγραφής του αλγορίθμου. Με αυτή τη μέθοδο και με δεδομένα τα στοιχεία εισόδου γίνεται η ενεργοποίηση όλων των κόμβων που βρίσκονται στα εσωτερικά επίπεδα, μέχρι τα στοιχεία του τελευταίου επιπέδου (εξόδου) που έχουν τη μορφή (2.11) y(n) = (x 1 k+1 (n),, x L k+1 (n)) t. Ο σκοπός της εκπαίδευσης του δικτύου είναι η εύρεση ενός συνόλου βαρών που να ελαχιστοποιεί το μέσο τετραγωνικό σφάλμα μεταξύ της εξόδου του νευρωνικού δικτύου και της επιθυμητής εξόδου d(n). (2.12) E = T n=1 d(n) y(n) 2 = T E(n) n=1. Αυτό επιτυγχάνεται προσαρμόζοντας ανάλογα τα βάρη των συνδέσεων προς την κατεύθυνση της κλίσης του σφάλματος με τη χρήση μια σταθεράς εκμάθησης γ (learning rate) που έχει συνήθως κάποια μικρή τιμή. 22

24 (2.13) E w ij m = t=1,,t E(n) w ij m (2.14) new w ij m = w ij m γ E w ij m Οι παραπάνω τύποι αναφέρονται στη μέθοδο του batch learning. Το batch learning έχει σκοπό τη βελτιστοποίηση (ελαχιστοποίηση) του Ε, όπως αναφέρθηκε παραπάνω και οι προσαυξήσεις των βαρών συσσωρεύονται μέχρι να γίνει η τελική τροποποίησή τους στο τέλος κάθε epoch. Υπάρχει, επίσης και το incremental learning, όπου η μεταβολή των βαρών γίνεται σταδιακά στο τέλος κάθε βήματος του αλγορίθμου εκμάθησης. Το incremental learning είναι μια στοχαστική μέθοδος βελτιστοποίησης των παραμέτρων του δικτύου, ενώ το batch learning ντετερμινιστική. Στην περίπτωση που έχουμε εκμάθηση μέσω του incremental learning οι παραπάνω τύποι αντικαθίστανται από τον εξής (2.15) new w ij m = w ij m γ E(n) w ij m. Ο αλγόριθμος του backpropagation κάνει επαναληπτικά την εφαρμογή των παραπάνω σχέσεων για κάθε epoch μέχρι να επιτύχει μείωση του σφάλματος σε τιμή μικρότερη από κάποιο προκαθορισμένο κατώφλι (threshold) ή μέχρι η μεταβολή του σφάλματος να πέσει κάτω από ένα άλλο προκαθορισμένο κατώφλι ή μέχρι να ολοκληρωθεί ο αριθμός των epochs που έχει τεθεί στην αρχή του training. Συνήθως απαιτείται κάποιος αρκετά μεγάλος αριθμός βημάτων (training epochs) για να εκπληρωθεί κάποιος από τους παραπάνω περιορισμούς. Το κάθε epoch έχει πολυπλοκότητα O(TM), όπου Μ είναι ο συνολικός αριθμός των συνδέσεων μεταξύ των κόμβων του δικτύου. Η προσέγγιση μέσω της μεθόδου gradient descent και του αλγορίθμου του backpropagation έχει το μειονέκτημα της αργής σύγκλισης, διότι τυπικά επιλέγεται κάποια μικρή σταθερά εκμάθησης για να αποφευχθεί η αποσταθεροποίηση του δικτύου. Υπάρχουν, όμως, τρόποι για την επίσπευση της σύγκλισης, όπως η χρήση δευτεροβάθμιων τεχνικών gradient descent που εκμεταλλεύονται την καμπυλότητα της κλίσης του σφάλματος, αλλά έχουν πολυπλοκότητα O(TM 2 ). Ένα ακόμη αρνητικό που έχουν οι τεχνικές gradient descent είναι ότι γίνεται αναζήτηση μόνο του τοπικού ελαχίστου του σφάλματος. Το πρόβλημα αυτό μπορεί να αντιμετωπιστεί με διάφορους τρόπους, όπως η προσθήκη θορύβου κατά την εκμάθηση του δικτύου, η επανάληψη όλης της διαδικασίας με διαφορετική αρχικοποίηση των βαρών ή με τη χρήση υπαρχόντων πληροφοριών των δεδομένων εισόδουεξόδου που μπορούν να φανούν χρήσιμες κατά το training. Backpropagation Through Time (BPTT) Ο αλγόριθμος του bakpropagation που χρησιμοποιείται στα feedforward δίκτυα δεν μπορεί να μεταφερθεί ως έχει στα αναδρομικά, για το λόγο ότι προϋποθέτει την ύπαρξη αποκλειστικά ακυκλικών συνδέσεων μεταξύ των κόμβων του δικτύου ούτως ώστε να γίνει η προς τα πίσω διάδοση του σφάλματος. Η λύση δίνεται με την εισαγωγή του backpropagation through time αλγορίθμου [3], [4], που ξεδιπλώνει τις συνδέσεις μεταξύ των κόμβων σε ξεχωριστά χρονικά βήματα, δημιουργώντας πανομοιότυπα αντίγραφα και ανακατευθύνει τις συνδέσεις μεταξύ αυτών ώστε να προκύψει ένα feedforward δίκτυο όπως αυτό της Εικόνας 5. 23

25 Εικ. 5: Το βασικό σχήμα της τεχνικής του BPTT. Αριστερά: Το αρχικό RNN. Δεξιά: Το feedforwad δίκτυο που προκύπτει μετά το ξεδίπλωμα στο χρόνο. Οι πίνακες των βαρών του συστήματος w in ij, w ij, w out ij, w back ij παραμένουν οι ίδιοι σε όλα τα αντίγραφα των επιπέδων. Τα δεδομένα του dataset αποτελούνται από μια χρονοσειρά δειγμάτων εισόδου-εξόδου που έχουν την παρακάτω μορφή (2.16) u(n) = (u 1 (n),, u K (n)) t (2.17) d(n) = (d 1 (n),, d L (n)) t Η διαδικασία της εκμάθησης ξεκινάει από το πρώτο επίπεδο και προχωράει σταδιακά στα επόμενα επίπεδα της στοίβας που έχει δημιουργηθεί από το ξεδίπλωμα των επιπέδων στο χρόνο. Σε κάθε αντίγραφο των επιπέδων τη χρονική στιγμή n διαβάζεται η είσοδος u(n), υπολογίζεται το x(n) των ενδιάμεσων επιπέδων με βάση τα u(n), x(n-1) και y(n-1) (όταν το τελευταίο δεν είναι 0) και τέλος υπολογίζεται η έξοδος y(n). Η συνάρτηση του σφάλματος που ελαχιστοποιείται είναι και πάλι η (2.12) E = T n=1 d(n) y(n) 2 = T n=1 E(n) με τη διαφορά ότι η έννοια του t έχει μετατραπεί από τον αύξοντα αριθμό του δείγματος εκπαίδευσης σε χρονική στιγμή. Ο αλγόριθμος που ακολουθεί το BPTT έχει ως εξής: Είσοδος: η χρονοσειρά των δεδομένων εκπαίδευσης και τα βάρη w ij που αντιστοιχούν στην συγκεκριμένη χρονική στιγμή. Έξοδος: τα νέα βάρη των συνδέσεων Υπολογιστικά βήματα του αλγορίθμου: 1. Forward pass, όπως περιγράφηκε παραπάνω μέχρι την έξοδο y(n). 2. Υπολογισμός από το τέλος προς την αρχή των επιπέδων (για n=t,,1) και για την κάθε ενεργοποίηση των κόμβων x i (n), y j (n) ενός όρου της διάδοσης του σφάλματος δ i (n), ο οποίος δίνεται από τους τύπους 24

26 (2.18) δ j (T) = (d j (T) y j (T)) f(u) για τους κόμβους εξόδου στο χρονικό επίπεδο Τ, L out (2.19) δ i (T) = [ j=1 δ j (T)w ji για τους εσωτερικούς κόμβους x i (T) στο χρονικό επίπεδο Τ, u u=z j (T) ] f(u) u u=z i (n) N back (2.20) δ j (n) = [(d j (n) y j (n)) + i=1 δ i (n + 1)w ij για τους κόμβους εξόδου των προηγούμενων χρονικών επιπέδων και N (2.21) δ i (n) = [ δ j (n + 1)w ji + L out j=1 j=1 δ j (n)w ji ] f(u) u u=z j (n) ] f(u) u u=z i (n) για τους εσωτερικούς κόμβους των προηγούμενων χρονικών επιπέδων. Το z i (n) είναι η μέγιστη τιμή που μπορούν να πάρουν οι συγκεκριμένοι κόμβοι. 3. Εκ νέου υπολογισμός των βαρών σύμφωνα με τις σχέσεις (2.22) new w ij = w ij + γ T n=1 δ i (n)x j (n 1) [υποθέτοντας x j (n 1) = 1 για n = 1] (2.23) new w in ij = w in ij + γ T n=1 δ i (n)u j (n) (2.24) new w out ij = w out ij + γ { T n=1 δ i(n)u j (n), αν τοj είναι κόμβος της εισόδου T n=1 δ i (n)x j (n 1), αν το j είναι εσωτερικός κόμβος (2.25) new w back ij + γ T n=1 δ i (n)y j (n 1) [υποθέτοντας y j (n 1) = 1 για n = 1] Το θέμα της αργής συγκλισης που αναφέρθηκε για το backpropagation στα feedforward δίκτυα εξακολουθεί να υπάρχει και στο BPTT και η πολυπλοκότητα του αλγορίθμου που περιγράφηκε είναι O(TN 2 ), με Ν τον αριθμό των εσωτερικών κόμβων. Συνήθως, χρειάζονται πολλά χιλιάδες epoch για να ολοκληρωθεί η διαδικασία του training. Η συνεχόμενη εκτέλεση αυτών των epoch έχει ως αποτέλεσμα τη δημιουργία ενός πολύπλοκου δυναμικού συστήματος που συχνά μπορεί να παρεκκλίνει της επιθυμητής συμπεριφοράς. Επομένως, είναι πιθανό να δημιουργηθούν διακλαδώσεις όταν οι τιμές αρχικοποίησης των βαρών του δικτύου είναι αρκετά διαφορετικές από τη δυναμική του συστήματος που προσπαθούμε να μοντελοποιήσουμε. Αποτέλεσμα αυτών των διακλαδώσεων μπορεί να είναι η αλλοίωση των πληροφοριών της κλίσης και η εκτόξευση του σφάλματος σε μη αποδεκτές (πολύ υψηλές) τιμές, το οποίο στην περίπτωση του BPTT δεν εγγυάται τη σύγκλιση σε κάποια κοντινή περιοχή του ελαχίστου του. Τα προβλήματα αυτά δεν συναντώνται στα feedforward δίκτυα για το λόγο ότι μοντελοποιούν μόνο απλές συναρτήσεις και όχι δυναμικά συστήματα. Τέλος, δεν υπάρχει κάποια συγκεκριμένη τεχνική για να προσπεραστούν αυτά τα προβλήματα και συνήθως χρειάζονται αρκετά πειράματα και υπολογιστικός χρόνος για να επιτευχθεί ένα ικανοποιητικό αποτέλεσμα. Για τους λόγους αυτούς, 25

27 η τεχνική του BPTT χρησιμοποιείται σχεδόν αποκλειστικά σε μικρά δίκτυα μεγέθους 3-20 κόμβων ανά επίπεδο και η χρήση μεγαλύτερων δικτύων αποδεικνύεται πολύ δαπανηρή από άποψη χρήσης υπολογιστικού εξοπλισμού και χρόνου. Ένα ακόμη μειονέκτημα που αφορά το batch learning που γίνεται στο BPTT, αλλά και το απλό backpropagation στα feedforward δίκτυα είναι ότι η μεταβολή των βαρών γίνεται αποκλειστικά στο τέλος κάθε epoch, μετά από ένα πλήρες πέρασμα των δεδομένων εκμάθησης. Το γεγονός αυτό καθιστά την τεχνική του backpropagation μη κατάλληλη για εφαρμογές που τρέχουν σε πραγματικό χρόνο και απαιτούν τη συνεχή ενημέρωση των βαρών. Σε τέτοιου είδους εφαρμογές χρησιμοποιείται συνήθως ένας άλλος αλγόριθμος εκμάθησης, αυτός του real time recurrent learning (RTRL) [3], που πραγματοποιεί την ενημέρωση των βαρών στο τέλος κάθε βήματος του αλγορίθμου. Real Time Recurrent Learning (RTRL) Σύμφωνα με αυτή την τεχνική, η επίδραση της αλλαγής των βαρών στη δυναμική του δικτύου μπορεί να φανεί διαφορίζοντας τις συναρτήσεις ενεργοποίησης (2.6) και (2.7). Για ευκολία και καλύτερη κατανόηση χρησιμοποιείται η σήμανση v i για την ενεργοποίηση όλων των κόμβων (ανεξάρτητα αν είναι κόμβοι εισόδου, εξόδου ή εσωτερικοί), με το i να παίρνει τιμές από 1 έως Ν για τους εσωτερικούς κόμβους, Ν+1 έως Ν+L για τους εξωτερικούς και Ν+L+1 έως Ν+L+K για τους κόμβους εισόδου. Τα βάρη μεταξύ των συνδέσεων αναφέρονται ως w kl. Η παράγωγος ενός κόμβου εισόδου ή ενδιάμεσου επιπέδου ως προς το βάρος w kl δίνεται από τη σχέση: (2.26) v i (n+1) = f N+L v (z w i (n)) [( w j (n) j=1 ij + δ ik v l (n))] i = 1,, N + L kl w kl όπου k,l<=n+l+k και z i (n) η μέγιστη τιμή του κόμβου. Το δ ik αναφέρεται στη συνάρτηση δέλτα του Kronecker (ισούται με 1 όταν i=k και είναι 0 αλλού) και ο όρος δ ik v l (n) στην επίδραση του βάρους w kl στον κόμβο k του συστήματος. Το άθροισμα που βρίσκεται στις αγκύλες είναι η συγκεντρωτική επίδραση των βαρών του δικτύου στο σύστημα. Η συνάρτηση (2.26) αποτελεί ένα δυναμικό σύστημα διακριτού χρόνου, διάστασης N+L με συντελεστές που μεταβάλλονται στο χρόνο. Η δυναμική μεταβλητή του συστήματος έχει τη μορφή (2.27) ( v 1 w kl,, v N+L w kl ) Για το λόγο ότι η αρχική κατάσταση του δικτύου είναι ανεξάρτητη από τα βάρη των συνδέσεών του, μπορούμε να αρχικοποιήσουμε το παραπάνω διάνυσμα με μηδενικές τιμές. Με αυτό τον τρόπο υπολογίζεται η (2.27) επαναλαμβάνοντας τη συνάρτηση (2.26) για διαδοχικά χρονικά βήματα ταυτόχρονα με τις συναρτήσεις ενεργοποίησης (2.6) και (2.7). Για τη λύση αυτή, γίνεται υπολογισμός της κλίσης του σφάλματος που δίνεται από τη σχέση (2.28) E = 2 T (v w i (n) d i (n)) v i(n) n=1 N+L i=n. kl w kl 26

28 Στην περίπτωση ενός batch learning gradient descent αλγορίθμου θα έπρεπε να γίνει συσσώρευση της κλίσης του σφάλματος της σχέσης (2.28) για ένα ολόκληρο epoch της ακολουθίας εκμάθησης και έπειτα να γίνει η ανανέωση των βαρών με τη σχέση (2.29) new w kl = w kl γ E w kl, όπου με γ συμβολίζεται και πάλι το learning rate. Μια εναλλακτική προσέγγιση που εισάγει το real time recurrent learning είναι η ανανέωση της κλίσης του σφάλματος μετά από την περάτωση κάθε βήματος σύμφωνα με τον τύπο L (2.30) w kl (n + 1) = w kl (n) γ (v i (n) d i (n)) v i(n) w kl. Η προσέγγιση αυτή καθιστά το RTRL κατάλληλο για εφαρμογές που απαιτούν τη σύγχρονη ενημέρωση των βαρών. Έχει, όμως, πολυπλοκότητα O(N+L) 4 για κάθε βήμα, λόγω του ότι πρέπει να επιλυθεί ένα σύστημα διάστασης (N+L) για την τελική προσαρμογή κάθε βάρους. Για το λόγο αυτό, της υψηλής πολυπλοκότητας, το RTRL χρησιμοποιείται κυρίως σε θέματα που απαιτούν συνεχόμενη προσαρμογή των βαρών και μπορούν να υλοποιηθούν με σχετικά μικρά δίκτυα. i=1 Extended Kalman Filter (EKF) Μια ακόμη δημοφιλής τεχνική που χρησιμοποιείται στη διαδικασία εκμάθησης των αναδρομικών νευρωνικών δικτύων είναι αυτή του extended kalman filter (EKF) [5], [6]. Αποτελεί μια γενίκευση του απλού kalman filter, που χρησιμοποιείται για την εκτίμηση των παραμέτρων που διέπουν γραμμικές στοχαστικές διαφορικές συναρτήσεις διακριτού χρόνου, σε μη γραμμικά συστήματα. Το EKF πετυχαίνει αυτό το σκοπό γραμμικοποιώντας αυτά τα συστήματα. Στην περίπτωση που έχουμε κάτι παραπλήσιο με μια σειρά Taylor, μπορούμε να γραμμικοποιήσουμε τη διαδικασία της πρόβλεψης στη γύρω περιοχή μιας τοπικής εκτίμησης μέσω της χρήσης των μερικών παραγώγων των συναρτήσεων που παίρνουν μέρος στη διαδικασία και να υπολογίσουμε την νέα εκτίμηση στην περίπτωση των μη γραμμικών σχέσεων. Για να γίνει, όμως, αυτό πρέπει αρχικά να προσαρμόσουμε κάποιες από τις συναρτήσεις που χρησιμοποιήσαμε μέχρι τώρα. Θεωρούμε, λοιπόν, μια απλή περίπτωση ενός συστήματος διακριτού χρόνου με επιπρόσθετη είσοδο και χωρίς θόρυβο παρατηρήσεων (2.31) x(n + 1) = f(x(n)) + q(n), (2.32) d(n) = h n (x(n)), όπου το x(n) είναι το διάνυσμα των εσωτερικών καταστάσεων του συστήματος και το d(n) η έξοδος αυτού. Το f αποτελεί τη συνάρτηση ενημέρωσης της κατάστασης του συστήματος (μη γραμμική συνάρτηση στα RNN) και το q(n) είναι μια εξωτερική είσοδος του συστήματος, που έχει τη μορφή μιας ασυσχέτιστης διαδικασίας λευκού Gaussian θορύβου και μπορεί να μεταφραστεί ως επιπλέον θόρυβος που εισάγεται κατά την εκτέλεση της διεργασίας. Το h(n) αναφέρεται σε μια διακριτού χρόνου συνάρτηση παρατήρησης (observation function). 27

29 Τη χρονική στιγμή n=0, εκτιμάται η κατάσταση x(0) του συστήματος από μια κανονική κατανομή με μέση τιμή x (0) και πίνακα διακύμανσης P(0). Η παρατήρηση του συστήματος μέχρι τη χρονική στιγμή n γίνεται μέσω των d(0),,d(n). Ο σκοπός του EKF είναι να κάνει μια εκτίμηση για την ακριβώς επόμενη χρονική στιγμή x (n+1), έχοντας ως δεδομένα την αρχική εκτίμηση των καταστάσεων του δικτύου και όλες τις προηγούμενες παρατηρήσεις της εξόδου. Για να επιτευχθεί αυτό γίνεται χρήση των ακόλουθων συναρτήσεων. (2.33) x (n) = F(x (n)) (2.34) P (n) = F(n)P(n 1)F(n) t + Q(n) (2.35) K(n) = P (n)h(n)[h(n) t P (n)h(n)] 1 (2.36) x (n + 1) = x (n) + K(n)ξ(n) (2.37) P(n + 1) = P (n) K(n)H(n) t P (n) Αυτές οι σχέσεις περιγράφουν τα δυο στάδια από τα οποία αποτελείται το EKF. Οι δυο πρώτες, (2.33) και (2.34), αναφέρονται στο πρώτο στάδιο και ο ρόλος τους είναι να κάνουν μια εκ των προτέρων πρόβλεψη της κατάστασης του x (n) και της διακύμανσης του σφάλματος P(n), βασιζόμενες αποκλειστικά στις προηγούμενες καταστάσεις των x (n) και P(n). Το δεύτερο στάδιο, που αποτελείται από τις συναρτήσεις (2.35)-(2.37), αναλαμβάνει το ρόλο της ενημέρωσης των παρατηρήσεων κάνοντας τις απαραίτητες διορθώσεις στην εκτίμηση των x (n) και P(n), δεδομένης της επιθυμητής εξόδου d(n). Πιο αναλυτικά, τα F(n) και H(n) είναι οι Ιακωβιανοί πίνακες των μερικών παραγώγων των f και h n αντίστοιχα. (2.38) F(n) = f(x) (2.39) H(n) = h n(x) x x x=x (n) x=x (n) Το ξ(n)=d(n)-h n (x (n)) είναι ο όρος του σφάλματος μεταξύ της παρατηρούμενης εξόδου και της εξόδου που υπολογίστηκε από την εκτιμήτρια x (n) κάνοντας χρήση της εξίσωσης (2.33). Το P(n), όπως αναφέραμε προηγουμένως, αποτελεί μια εκτίμηση της πιθανοτικής διακύμανσης του σφάλματος και το Q(n) είναι ο πίνακας διακύμανσης του λευκού θορύβου της διαδικασίας (ο πίνακας αυτός είναι διαγώνιος, δηλαδή έχει μη μηδενικά στοιχεία μόνο στα σημεία της κύριας διαγωνίου του). Η βασική ιδέα του φίλτρου Kalman είναι να γίνει πρώτα ενημέρωση των x (n) και P(n) μέσω των αρχικών εκτιμήσεων x *(n) και P * (n), χρησιμοποιώντας τις προηγούμενες γνωστές τιμές, με την εφαρμογή των εξισώσεων (2.33) και (2.34). Στη συνέχεια αυτές οι πληροφορίες, σε συνδυασμό με την τιμή της επιθυμητής εξόδου d(n), σχηματίζουν τον όρο του κέρδους του φίλτρου K(n) (σχέση (2.35)) που με τη σειρά του χρησιμοποιείται στην τελική ανανέωση των x (n+1) και P(n+1) (σχέσεις (2.36) και (2.37)). Στο απλό Kalman filter, τα F(n) και H(n) είναι σταθερές και 28

30 οι εκτιμήσεις των καταστάσεων συγκλίνουν σε μια μέση τιμή E(n). Αυτό δεν ισχύει πάντα στην περίπτωση των RNN, όπου οι συναρτήσεις f και h n είναι μη γραμμικές και η χρήση του EKF οδηγεί μόνο σε τοπική βέλτιστη εκτίμηση των καταστάσεων. Η παρακάτω διαδικασία αναφέρεται στην εφαρμογή του EKF για τον υπολογισμό των βαρών στα αναδρομικά νευρωνικά δίκτυα. Αρχικά, θεωρούμε ένα RNN με δεδομένα εκπαίδευσης εισόδου-εξόδου, (2.40) u(n) = (u 1 (n),, u K (n)) t (2.41) d(n) = (d 1 (n),, d L (n)) t για n+1,,t. Τα βάρη των συνδέσεων μεταξύ των επιπέδων της εισόδου, των εσωτερικών, της εξόδου και της εξόδου με των εσωτερικών συσσωρεύονται στους αντίστοιχους πίνακες, διαστάσεων NxK, NxN, Lx(K+N+L) και NxL όπως φαίνεται παρακάτω. W in = (w in ij ), W = (w ij ), W out = (w out ij ), W back = (w back ij ) Στο εξής, δε θα γίνεται διάκριση μεταξύ αυτών των πινάκων, αλλά θα αναφέρονται ως το διάνυσμα βαρών w που αποτελεί την κατάσταση του δυναμικού συστήματος. Η έξοδος d(n) μπορεί να περιγραφεί με τη χρήση μιας συνάρτησης h των βαρών και της εισόδου μέχρι τη στιγμή n, όπου θεωρούμε ότι τα παροδικά φαινόμενα αστάθειας του αρχικού δικτύου έχουν εξασθενήσει πλήρως. (2.42) d(n) = h(w, u(0),, u(n)) Τα δεδομένα της εισόδου που χρησιμοποιούνται στη συνάρτηση h μπορούν να ενοποιηθούν, δημιουργώντας για συντομία μια εξαρτώμενη από το χρόνο συνάρτηση, την h n. Θεωρούμε, περαιτέρω και μια ασυσχέτιστη διαδικασία λευκού Gaussian θορύβου, όπως αυτή που περιγράφηκε προηγουμένως ως θόρυβος της διεργασίας και την προσθέτουμε στην εξίσωση ανανέωσης των βαρών. Με τον τρόπο αυτό προκύπτουν οι επόμενες συναρτήσεις που βασίζονται στις σχέσεις (2.31) και (2.32). (2.43) w(n + 1) = w(n) + q(n) (2.44) d(n) = h n (w(n)) Η δυναμική των καταστάσεων αυτού του συστήματος είναι στατική, με μοναδική εξαίρεση τις μικρές μετατοπίσεις που προκαλούνται λόγω του θορύβου της διεργασίας. Η είσοδος του συστήματος u(n) δε λαμβάνει μέρος στην εξίσωση ανανέωσης των βαρών, αλλά βρίσκεται κρυμμένη στη χρονική εξάρτηση της συνάρτησης (2.45) των παρατηρήσεων. Ο στόχος της εκπαίδευσης του δικτύου είναι η σωστή εκτίμηση των στοιχείων του πίνακα των βαρών w(n), ξεκινώντας από μια τυχαία εκτίμηση των ŵ(0) και την ακολουθία εξόδου d(n),,d(n). Ο πίνακας της διακύμανσης P(n) αρχικοποιείται ως διαγώνιος πίνακας με μεγάλες τιμές στα στοιχεία της κύριας διαγωνίου, όπως λ.χ. το 100. Η απλούστερη μορφή των σχέσεων (2.43) και (2.44) σε σχέση με αυτές των (2.31) και (2.32) καθορίζουν και την απλούστευση της 29

31 γενίκευσης των (2.33)-(2.37). Πιο συγκεκριμένα, οι συναρτήσεις (2.33) και (2.34) δεν είναι πλέον απαραίτητες, εφόσον οι τιμές των βαρών είναι γνωστές και κατά συνέπεια οι (2.35)-(2.37) λαμβάνουν την εξής μορφή (2.45) K(n) = P(n)H(n)[H(n) t P(n)H(n)] 1 (2.46) w (n + 1) = w (n) + K(n)ξ(n) (2.47) P(n + 1) = P(n) K(n)H(n) t P(n) + Q(n) Μπορούμε, επιπλέον, να εισάγουμε μια μικρή σταθερά εκμάθησης η στη συνάρτηση ανανέωσης του κέρδους του φίλτρου και να πάρει τη μορφή (2.48) K(n) = P(n)H(n)[(1/η) + H(n) t P(n)H(n)] 1 Το EKF αποτελεί μια gradient descent τεχνική δευτέρου βαθμού, που χρησιμοποιεί πληροφορίες της καμπυλότητας της επιφάνειας του τετραγωνικού σφάλματος για καλύτερη και ταχύτερη προσέγγιση του προβλήματος. Η εκμετάλλευση της καμπυλότητας σε γραμμικά συστήματα χωρίς θόρυβο έχει την ικανότητα να συγκλίνει από το πρώτο, κιόλας, βήμα. Ακόμα και στην περίπτωση των μη γραμμικών συστημάτων, όμως, επιδεικνύει πολύ ταχύτερη σύγκλιση από άλλες τεχνικές. Επιπλέον, η χρήση του λευκού θορύβου της διεργασίας βελτιώνει περαιτέρω τη σταθερότητα του συστήματος και αποφεύγεται η περίπτωση του να κολλήσει σε μια περιοχή τοπικού ελαχίστου κατά την εκπαίδευση. Η χρήση του EKF απαιτεί την ενημέρωση των παραγώγων της H(n) των εξόδων του δικτύου ως προς τα βάρη αυτού μετά από κάθε ανανέωση της εκτίμησης των βαρών. Αυτές οι παράγωγοι μπορούν να υπολογιστούν με τη μέθοδο που χρησιμοποιήθηκε στην τεχνική του RTRL (σχέση (2.26)), με πολυπλοκότητα O(N 4 ). Η τεχνική αυτή είναι υπολογιστικά ακριβή αν δεν χρησιμοποιείται για την εκπαίδευση μικρών δικτύων. Εναλλακτικά, μπορεί κάποιος να καταφύγει στη λύση της χρήσης μιας αφαιρετικής μορφής του αλγορίθμου του BPTT, κάνοντας χρήση της συνάρτησης (2.44) με μορφή που να περιγράφει μια πεπερασμένη ακολουθία εξόδου αντί για μια μόνο έξοδο και χρησιμοποιώντας, έπειτα, μια διαδικασία ανάλογη των συναρτήσεων (2.18)-(2.21) για την προσέγγιση της H(n). Η πολυπλοκότητα αυτής της λύσης είναι O(pN 2 ), με p τον αριθμό των εξόδων της ακολουθίας. Μετά από τον υπολογισμό της H(n), η επόμενη πιο ακριβή διαδικασία της λειτουργίας του EKF είναι η ενημέρωση του πίνακα εκτίμησης της πιθανοτικής διακύμανσης του σφάλματος, με κόστος υπολογισμού O(LN 2 ). Η τεχνική του EKF, με τη χρήση της αφαιρετικής μορφής του BPTT για τον υπολογισμό της H(n), είναι αυτή που αποδίδει, συνήθως, τα καλύτερα αποτελέσματα όσον αφορά την εκπαίδευση των αναδρομικών νευρωνικών δικτύων. Η επιτυχία και η ποιότητα της εκπαίδευσης, όμως, εξαρτάται σε μεγάλο βαθμό από την εμπειρία στην επιλογή της κατάλληλης αρχιτεκτονικής του δικτύου, της σταθεράς εκμάθησης, του υπολογισμού της κλίσης και της μορφής των δεδομένων της εισόδου, όπως συμβαίνει και στις τεχνικές των BPTT και RTRL. 30

32 2.4 Long Short Term Memory Δίκτυα Εισαγωγή Ένα από τα χαρακτηριστικά των αναδρομικών νευρωνικών δικτύων, που τα έχει καταστήσει πολύ δημοφιλή στην κοινότητα του machine learning, είναι ότι έχουν τη δυνατότητα να συνδυάζουν πληροφορίες από προηγούμενα δεδομένα εκμάθησης και να τις χρησιμοποιούν κατά το training των τωρινών δειγμάτων. Η αλήθεια, όμως, είναι πως στην πράξη υπάρχουν κάποιοι περιορισμοί. Παραδείγματος χάρη, άμα αναλογιστούμε ένα μοντέλο φυσικής γλώσσας και η πρόθεσή μας είναι να προβλέψουμε την επόμενη λέξη του κειμένου μιας ακολουθίας, όπως τα σύννεφα βρίσκονται στον ουρανό, ένα απλό RNN θα μπορούσε με ευκολία να προβλέψει ότι η επόμενη λέξη πρέπει να είναι ο ουρανός. Στην περίπτωση, όμως, που θα είχαμε μια μεγαλύτερη ακολουθία, όπως, Γεννήθηκα και μεγάλωσα στην Ελλάδα μιλάω άπταιστα ελληνικά, οι πρόσφατες πληροφορίες που έχει το δίκτυο καταδεικνύουν ότι, προφανώς, ακολουθεί το όνομα μιας γλώσσας. Προκειμένου, όμως, να περιορίσουμε τις διαθέσιμες επιλογές χρειαζόμαστε την πληροφορία της Ελλάδας, που βρίσκεται αρκετά πιο πίσω στο κείμενο. Υπάρχει μεγάλη πιθανότητα, δηλαδή, σε αυτό το μοντέλο της γλώσσας, η σχετική θέση των πληροφοριών που απαιτούνται για την εξαγωγή του σωστού αποτελέσματος να είναι αρκετά απομακρυσμένη. Όσο το κενό μεταξύ των αλληλεξαρτήσεων μεγαλώνει, τα RNN με τις κλασικές μεθόδους εκμάθησης του gradient descent που περιγράφηκαν στην προηγούμενη ενότητα, καθίστανται ανίκανα να συνδυάσουν αυτές τις πληροφορίες, λόγω του ότι ο αριθμός των προηγούμενων βημάτων που χρησιμοποιούνται σαν μνήμη κατά το training είναι πεπερασμένος. Στην πράξη αυτό σημαίνει ότι η εκπαίδευση σε τέτοιου είδους ακολουθίες καταναλώνει πάρα πολύ χρόνο και πόρους και πολλές φορές το σφάλμα εκτοξεύεται σε υψηλές τιμές, προκαλώντας μεγάλες μεταβολές των βαρών του συστήματος σε κάθε επανάληψη της διαδικασίας εκμάθησης. Στην Εικόνα 6 φαίνεται η ευαισθησία κάθε βήματος στην είσοδο της στιγμής 1 και από τη σκίαση καταλαβαίνουμε πως αυτή μειώνεται μέχρι τα τελευταία βήματα που εξαφανίζεται εντελώς (εντονότερη σκίαση σημαίνει μεγαλύτερη εξάρτηση). Εικ. 6: Το πρόβλημα της εξασθένησης των συσχετίσεων στα RNN με την πάροδο του χρόνου. 31

33 Για να ξεπεραστεί αυτό το πρόβλημα των συσχετίσεων που βρίσκονται μακριά μεταξύ τους, έχουν δοκιμαστεί πολλές προσεγγίσεις, που ουσιαστικά αποτελούν μικρές ή μεγάλες μεταποιήσεις των αναδρομικών νευρωνικών δικτύων, όπως η εισαγωγή χρονικής καθυστέρησης, η εφαρμογή της διάδοσης του σφάλματος σε διακριτούς χρόνους ή η εισαγωγή κάποιων σταθερών στα δίκτυα. Η τεχνική, όμως, που έχει επικρατήσει και έχει να αναδείξει τα καλύτερα αποτελέσματα σε τέτοιου είδους αλλά και σε πολλές άλλες εφαρμογές, είναι αυτή των Long Short Term Memory δικτύων (LSTM). Εισήχθησαν πρώτη φορά το 1997 από τους Sepp Hochreiter και Jϋrgen Schmidhuber [7] και η συγκράτηση πληροφοριών στη μνήμη για μεγάλα χρονικά διαστήματα είναι το βασικό εξ' ορισμού χαρακτηριστικό της λειτουργίας τους. Σχεδόν όλα τα state of the art αποτελέσματα των αναδρομικών νευρωνικών δικτύων έχουν επιτευχθεί με τη χρήση αυτών Αρχιτεκτονική και Λειτουργία των Δικτύων LSTM Η αρχιτεκτονική των LSTM [8] μοιάζει αρκετά με αυτή των υπόλοιπων RNN, με την έννοια ότι απαρτίζονται και αυτά από ένα αριθμό μονάδων συνδεδεμένων αλυσιδωτά μεταξύ τους σε κάθε επίπεδο. Η διαφορά βρίσκεται στο ότι οι μονάδες (modules ή blocks) που βρίσκονται στα εσωτερικά επίπεδα του δικτύου περιέχουν κάποια επιπλέον στοιχεία και ονομάζονται σε αυτή την περίπτωση μονάδες μνήμης (memory blocks). Πιο συγκεκριμένα, κάθε μονάδα των LSTM αποτελείται από ένα ή περισσότερα κελιά μνήμης που συνδέονται μεταξύ τους και τρία ακόμη στοιχεία, τις πύλες εισόδου, εξόδου και επιλεκτικής συγκράτησης (forget gate), οι οποίες είναι αντιστοίχως υπεύθυνες για τις λειτουργίες εγγραφής, ανάγνωσης και επαναφοράς των κελιών. Η χρήση αυτών των πυλών διασφαλίζει την αποθήκευση και πρόσβαση στις πληροφορίες ακόμα και με την πάροδο μεγάλων χρονικών περιόδων ή πολλών βημάτων. Στη Εικόνα 7 φαίνεται η διατήρηση της πληροφορίας του βήματος 1 με την πάροδο του χρόνου σε ένα LSTM με ένα κρυφό επίπεδο. Ο συμβολισμός Ο και - σημαίνει ότι η εκάστοτε πύλη είναι αντίστοιχα ανοιχτή ή κλειστή. Παρατηρούμε, λοιπόν, ότι η μονάδα μνήμης είναι σε θέση να συγκρατήσει την πληροφορία του πρώτου βήματος, εφόσον η πύλη εισόδου είναι κλειστή και αυτή της επιλεκτικής συγκράτησης ανοιχτή. Για απλούστευση του παραδείγματος, οι πύλες είναι είτε πλήρως ανοιχτές (1), είτε κλειστές (0). Εικ. 7: Διατήρηση της πληροφορίας στα δίκτυα LSTM. 32

34 Στην Εικόνα 8 φαίνονται τα δομικά στοιχεία των μονάδων μνήμης των LSTM, καθώς και οι συνδέσεις μεταξύ αυτών. Κάθε γραμμή περιέχει ένα διάνυσμα που μεταφέρεται από την έξοδο ενός block στις εισόδους των επόμενων. Οι γραμμές που ενώνονται καταδεικνύουν τις συγχωνεύσεις και αυτές που διακλαδώνονται περιέχουν αντίγραφα της ίδιας πληροφορίας. Οι ροζ κύκλοι αφορούν τις πράξεις μεταξύ των διανυσμάτων και τα κίτρινα πλαίσια είναι διακριτά επίπεδα αναδρομικών δικτύων που χρησιμοποιούνται στην εκπαίδευση των LSTM και περιλαμβάνουν κάποιες συναρτήσεις, όπως η σιγμοειδής και η υπερβολική εφαπτομένη. Εικ. 8: Τα δομικά στοιχεία και οι συνδέσεις των μονάδων μνήμης στα LSTM. Το βασικό στοιχείο των LSTM είναι η οριζόντια γραμμή που φαίνεται να διασχίζει το επάνω μέρος του διαγράμματος και απεικονίζει την κατάσταση των μονάδων της μνήμης τους. Μπορεί να τη συγκρίνει κανείς με ένα ιμάντα μεταφοράς που διασχίζει ολόκληρη την αλυσίδα των blocks και δεν έχει παρά μόνο λίγες γραμμικές αλληλεπιδράσεις με τα υπόλοιπα στοιχεία. Είναι πολύ εύκολο, δηλαδή, η περιεχόμενη πληροφορία να περάσει αναλλοίωτη. Η αλληλεπίδραση με τα υπόλοιπα στοιχεία γίνεται μέσω των πυλών που αναφέραμε προηγουμένως. Αυτές αποτελούνται από μια σιγμοειδή συνάρτηση, που παίρνει τιμές από 0 εώς 1 και μια πράξη πολλαπλασιασμού ή πρόσθεσης που αναλαμβάνει να προσθέσει την πληροφορία στις ήδη υπάρχουσες της μονάδας μνήμης. Η τιμή της σιγμοειδούς συναρτήσεως καθορίζει το ποσοστό της πληροφορίας που θα περάσει για να προστεθεί στη μνήμη, με 0 να σημαίνει ότι δε θα επιτρέψει σε τίποτα να περάσει και με 1 η πληροφορία θα προσχωρήσει αυτούσια. Το πρώτο βήμα στη λειτουργία του LSTM είναι να αποφασίσει ποιο μέρος της πληροφορίας θα αποδεσμεύσει από τη μνήμη. Υπεύθυνο για την απόφαση αυτή είναι το forget gate του συστήματος, το οποίο δέχεται την έξοδο του προηγούμενου επιπέδου h t-1 και την είσοδο x t για να εξάγει μια τιμή 0-1, μέσω της σιγμοειδούς. Η συνάρτηση που διέπει αυτή τη σχέση είναι η (2.49) και τα στοιχεία του δικτύου που είναι υπεύθυνα για αυτή τη λειτουργία φαίνονται στην Εικόνα 9. Στο παράδειγμα της πρόβλεψης της επόμενης λέξης σε μια ακολουθία ενός μοντέλου φυσικής γλώσσας, η διαδικασία αυτή θα μπορούσε να είναι υπεύθυνη για την επιλογή του γένους που θα χρησιμοποιηθεί, εφόσον θέλουμε να είναι σε θέση να ξεχάσει τα προηγούμενα δεδομένα όταν εμφανιστεί υποκείμενο διαφορετικού γένους. 33

35 (2.49) f t = σ(w f [h t 1, x t ] + b f ) Εικ. 9: Forget Gate στα LSTM. Το επόμενο βήμα είναι αυτό που θα πάρει την απόφαση για το ποια στοιχεία της νέας πληροφορίας θα συγκρατηθούν στη μνήμη του δικτύου. Η διαδικασία αυτή απαρτίζεται από δυο βήματα, με το πρώτο να περιλαμβάνει την πύλη εισόδου που ξεχωρίζει ποιες από τις υπάρχουσες πληροφορίες θα παραμείνουν στη μνήμη (2.50) και το δεύτερο να δημιουργεί ένα νέο διάνυσμα Ĉ t με τις υποψήφιες τιμές που πρόκειται να προστεθούν σε αυτή (2.51). (2.50) i t = σ(w i [h t 1, x t ] + b i ) (2.51) C t = tanh(w C [h t 1, x t ] + b C ) Εικ. 10: Input Gate και είσοδος νέας πληροφορίας στα LSTM. Στη συνέχεια γίνεται η ενημέρωση της κατάστασης της μνήμης από C t-1 σε C t, πολλαπλασιάζοντας την παλιά κατάσταση C t-1 με τα δεδομένα της f t που αποφασίστηκε να αποδεσμεύσουμε στο προηγούμενο βήμα και προσθέτοντας ένα ποσοστό των νέων υποψήφιων τιμών i t * Ĉ t. Σε αυτό το σημείο στην περίπτωση του παραδείγματος με το μοντέλο της φυσικής 34

36 γλώσσας θα γινόταν η αφαίρεση των προηγούμενων πληροφοριών για το γένος του υποκειμένου και θα προσθέτονταν οι νέες. (2.52) C t = f t C t 1 + i t C t Εικ. 11: Ενημέρωση των πληροφοριών της μνήμης στα LSTM. Το τελευταίο βήμα αφορά την εξαγωγή του αποτελέσματος h t, που θα γίνει είσοδος στο επόμενο επίπεδο και αποτελεί μια φιλτραρισμένη εκδοχή της κατάστασης της μνήμης. Αρχικά, γίνεται το πέρασμα της πληροφορίας εισόδου από μια σιγμοειδή συνάρτηση για να προσδιορισθεί ποιο κομμάτι αυτής θα προωθηθεί ως την έξοδο (2.53). Έπειτα εισέρχεται το περιεχόμενο της μνήμης μέσω της συνάρτησης της υπερβολικής εφαπτομένης (για να ωθήσει τις τιμές του διανύσματος στο διάστημα -1 εως 1) και πολλαπλασιάζεται με την έξοδο της σιγμοειδούς για να γίνει η προώθηση μόνο των κομματιών που έχουν προσδιορισθεί (2.54). Στο μοντέλο της φυσικής γλώσσας αυτή η διαδικασία θα μπορούσε να περιέχει τις πληροφορίες ενός ρήματος, όπως το αν βρίσκεται στον ενικό ή στον πληθυντικό, για να καθοριστεί η συνέχεια της πρότασης. (2.53) o t = σ(w o [h t 1, x t ] + b o ) (2.54) h t = o t tanh(c t ) Εικ. 12: Έξοδος του LSTM. 35

37 Όσον αφορά τον αλγόριθμο εκμάθησης στα LSTM, όπως και στα υπόλοιπα RNN, υπάρχουν πολλές διαθέσιμες επιλογές. Η πιο συνηθισμένη τεχνική είναι ο κατά προσέγγιση υπολογισμός της κλίσης του σφάλματος μέσω συνδυασμού του Real Time Recurrent Learning και του Backpropagation Through Time. Το BPTT χρησιμοποιείται μόνο στους υπολογισμούς που λαμβάνουν χώρα στο πρώτο βήμα της εκπαίδευσης και έπειτα το ρόλο της μνήμης αναλαμβάνουν αποκλειστικά τα memory blocks του LSTM. Το κύριο πλεονέκτημα αυτής της διαδικασίας είναι η σύγχρονη ενημέρωση των βαρών με τη μέθοδο του RTRL, που την καθιστά κατάλληλη για εφαρμογές συνεχούς χρόνου ή για την πρόβλεψη χρονοσειρών. Ωστόσο, είναι δυνατός και ο υπολογισμός της κλίσης χωρίς να χρειαστεί να αφαιρέσουμε το κομμάτι του BPTT που παρουσιάζει καλύτερη ακρίβεια και έχει το πλεονέκτημα της ευκολίας αποσφαλμάτωσης σε σχέση με την προηγούμενη τεχνική Παραλλαγές των δικτύων LSTM Η παραπάνω μέθοδος αποτελεί το πιο διαδεδομένο LSTM δίκτυο, το vanilla LSTM [7], όπως περιγράφηκε από τους Hochreiter και Schmidhuber [8], με την προσθήκη του forget gate. Δεν υπάρχει, όμως, μόνο αυτή η περίπτωση. Στην πραγματικότητα σχεδόν κάθε δημοσίευση που αφορά τα LSTM χρησιμοποιεί μια ελαφρώς διαφορετική εκδοχή αυτού, ανάλογα με την εφαρμογή που αποσκοπεί. Οι διαφορές τους συνήθως είναι πολύ μικρές, αλλά αξίζει να αναφέρουμε κάποιες από αυτές τις παραλλαγές [9]. Η πιο δημοφιλής παραλλαγή εισήχθη από τους Gers και Schmidhuber και προσθέτει συνδέσεις από το διάνυσμα της μνήμης προς τα υπόλοιπα στοιχεία των blocks. Το γεγονός αυτό σημαίνει ότι επιτρέπεται οι πύλες να κοιτούν στην κατάσταση των κελιών προτού πάρουν την απόφαση για το ποια στοιχεία της νέας πληροφορίας θα κρατηθούν και ποια θα απορριφθούν. Η γραφική αναπαράσταση αυτής της τεχνικής δίνεται παρακάτω στην Εικόνα 13, καθώς και οι σχέσεις που είναι υπεύθυνες για την αποδέσμευση, συγκράτηση και εξαγωγή της νέας πληροφορίας (σχέσεις ). Εικ. 13: Παραλλαγή LSTM με peephole connections. (2.55) f t = σ(w f [C t 1, h t 1, x t ] + b f ) 36

38 (2.56) i t = σ(w i [C t 1, h t 1, x t ] + b i ) (2.57) o t = σ(w o [C t, h t 1, x t ] + b o ) Στην παραπάνω εικόνα και σχέσεις υπάρχουν συνδέσεις από το διάνυσμα της μνήμης προς όλες τις πύλες αποφάσεων, αλλά είναι και περιπτώσεις που χρησιμοποιούνται μόνο κάποιες από αυτές. Μια ακόμα συνήθης παραλλαγή είναι η χρήση διασυνδεδεμένων πυλών για την κατάσταση του input και forget. Με αυτή την τεχνική οι αποφάσεις για το ποια πληροφορία θα προστεθεί στη μνήμη του δικτύου και ποια θα απορριφθεί λαμβάνονται ταυτόχρονα. Δηλαδή, θα χρησιμοποιηθεί νέα πληροφορία όταν θα ξεχαστεί κάποια άλλη ή το δίκτυο θα απορρίψει κάποια προηγούμενη πληροφορία μόνο όταν έχει να εισάγει κάποια νέα. Μαθηματικό ισοδύναμο αυτού του τρόπου είναι η χρήση πυλών για τα input και forget που διέπονται από τη μεταξύ τους σχέση f t = 1 i t, όπως γίνεται φανερό από την παρακάτω εικόνα. Εικ. 14: Coupled Input και Forget Gate (CIFG). (2.58) C t = f t C t 1 + (1 f t ) C t Μια ακόμη παραλλαγή, που εισάγει αρκετές αλλαγές και απλοποιήσεις στην αρχιτεκτονική του κλασικού LSTM, είναι η τεχνική του Gated Recurrent Unit (GRU). Στην περίπτωση αυτή, οι πύλες input και forget συνδυάζονται σε μια μοναδική πύλη ενημέρωσης (update) του δικτύου και η πύλη εξόδου, που σε αυτή την παραλλαγή ονομάζεται reset gate, κατευθύνει μόνο τις αναδρομικές συνδέσεις στο διάνυσμα της κατάστασης του κελιού και από εκεί στην είσοδο του επόμενου block. Το μοντέλο που απορρέει από αυτή την τεχνική είναι αρκετά απλούστερο από το vanilla LSTM και η χρήση του έχει γίνει αρκετά δημοφιλής από τους ερευνητές. Οι κανόνες που διέπουν τη λειτουργία του, καθώς και μια γραφική αναπαράσταση φαίνονται παρακάτω. 37

39 Εικ. 15: Gated Recurrent Unit LSTM (GRU). (2.59) z t = σ(w z [h t 1, x t ]) (2.60) r t = σ(w r [h t 1, x t ]) (2.61) ĥ t = tanh(w[r t h t 1, x t ]) (2.62) h t = (1 z t ) h t 1 + z t ĥ t Οι τεχνικές που περιγράφηκαν μέχρι στιγμής αποτελούν τις πιο διαδεδομένες παραλλαγές των δικτύων LSTM, αλλά δεν υπάρχουν μόνο αυτές. Για την ακρίβεια οποιαδήποτε αλλαγή πραγματοποιηθεί στο δίκτυο, όπως η αφαίρεση της πύλης εισόδου ή της εξόδου κτλ, δίνει και μια διαφορετική εκδοχή των LSTM. Οι διαφορές τους είναι μικρές και δεν υπάρχει ένας γενικός κανόνας που καθιστά κάποιο από αυτά καλύτερο από τα άλλα, αφού σε μια εφαρμογή το ένα μπορεί να αποδίδει λίγο καλύτερα ενώ σε μια άλλη κάποιο άλλης μορφής LSTM. Σε γενικές γραμμές, το vanilla LSTM δείχνει πολύ καλή συμπεριφορά και απόδοση στα περισσότερα tasks και χρησιμοποιείται περισσότερο από τα υπόλοιπα. 38

40 2.5 Επιλογή Παραμέτρων στα RNN Εκτός από την επιλογή του καλύτερου μοντέλου αναδρομικών νευρωνικών δικτύων για κάθε εφαρμογή, υπάρχουν κάποιες βασικές παράμετροι που πρέπει να παραμετροποιηθούν και είναι αυτές που καθορίζουν σε μεγαλύτερο βαθμό την επιτυχία ή όχι του training. Στις περισσότερες από αυτές έχουμε ήδη αναφερθεί στην παρούσα διπλωματική εργασία, δεν έχουμε όμως αναλύσει πως γίνεται η επιλογή των κατάλληλων τιμών για αυτές. Οι βασικότερες είναι ο αριθμός των κρυφών επιπέδων του δικτύου, το πλήθος των κόμβων του κάθε επιπέδου, καθώς και τεχνικές όπως αυτή του ρυθμού απόρριψης των βαρών (dropout rate) που υποβοηθούν στη σύγκλιση Αριθμός Κρυφών Επιπέδων Ξεκινώντας, όσον αφορά των αριθμό των κρυφών επιπέδων (hidden layers) του δικτύου, αυτός εξαρτάται βασικά από το πρόβλημα που θέλουμε να προσομοιώσουμε. Υπάρχει μια γενική αρχή που λέει ότι αν τα δεδομένα της λύσης του προβλήματος είναι γραμμικά διαχωριζόμενα, τότε δεν υπάρχει η ανάγκη για χρήση κανενός κρυφού επιπέδου, αφού η συνάρτηση ενεργοποίησης μπορεί να εφαρμοστεί στο επίπεδο της εισόδου που, σε συνδυασμό με αυτό της εξόδου, είναι αρκετά για να μοντελοποιήσουν τέτοιου είδους προβλήματα. Στην περίπτωση, όμως, προβλημάτων που έχουν να κάνουν με περίπλοκα μη γραμμικά συστήματα χρησιμοποιούνται συνήθως, επιπλέον από αυτό της εισόδου, ένα ή δυο κρυφά επίπεδα. Πιο συγκεκριμένα, ένα κρυφό επίπεδο χρησιμοποιείται στην περίπτωση κάποιας μη γραμμικής συνάρτησης που συνδέει, μέσω συνεχούς διαγράμμισης, δεδομένα από ένα πεπερασμένο χώρο σε έναν άλλο, ενώ δυο κρυφά επίπεδα μπορούν να αναπαραστήσουν οποιοδήποτε αυθαίρετο κριτήριο απόφασης με αυθαίρετη ακρίβεια και οποιαδήποτε γραμμική ή μη γραμμική σχέση με οποιαδήποτε ακρίβεια (όσο μικρή επιθυμούμε). Αν η ακρίβεια είναι το μόνο ζητούμενο της προσέγγισης του προβλήματος μπορεί να χρησιμοποιηθεί και τρίτο κρυφό επίπεδο, αλλά η τεχνική αυτή θα αυξήσει κατά πολύ το χρόνο της εκπαίδευσης του συστήματος και δεν ενδείκνυται γενικότερα, αφού ένα ή δυο κρυφά επίπεδα είναι επαρκή για να επιλύσουν οποιοδήποτε σύνθετο μη γραμμικό πρόβλημα. Καταλήγοντας, οι περισσότεροι ερευνητές προτείνουν τη χρήση όσο το δυνατόν λιγότερων κρυφών επιπέδων, σύμφωνα πάντα με την εφαρμογή, για την εξοικονόμηση υπολογιστικών πόρων, χρόνου εκπαίδευσης και πολυπλοκότητας της λύσης [10] Πλήθος Κόμβων Κρυφών Επιπέδων Υπολογισμός χρειάζεται, επίσης, και για την επιλογή του αριθμού των νευρώνων των κρυφών επιπέδων του δικτύου. Όταν πρόκειται για τα επίπεδα της εισόδου και της εξόδου, ο αριθμός των nodes καθορίζεται από τα δεδομένα εισόδου-εξόδου της εφαρμογής, αλλά όταν πρόκειται για την καλύτερη επιλογή του πλήθους των κόμβων των εσωτερικών επιπέδων δεν υπάρχει κάποια πάγια τακτική που να εγγυάται το βέλτιστο αποτέλεσμα. Βασικό μέλημα είναι η αποφυγή γεγονότων όπως το overfitting και το underfitting στα δεδομένα του training, που συμβαίνουν όταν ο αριθμός των nodes είναι πολύ μεγάλος ή πολύ μικρός αντίστοιχα σε σχέση με το μέγεθος και την πολυπλοκότητα του προβλήματος. Άλλοι γνώμονες που πρέπει να ληφθούν υπόψη κατά την επιλογή του πλήθους των κόμβων είναι η ελαχιστοποίηση του χρόνου της εκπαίδευσης και η 39

41 βελτίωση της ακρίβειας της εξόδου. Στη συνέχεια αναφέρονται οι δημοφιλέστερες μέθοδοι που χρησιμοποιούνται για την επιλογή του αριθμού των nodes των κρυφών επιπέδων [11]. Η πιο γνωστή, ίσως, μέθοδος είναι αυτή του Kolmogorov, που υποστηρίζει ότι οποιαδήποτε συνεχής συνάρτηση μπορεί να αναπαρασταθεί από ένα νευρωνικό δίκτυο που περιέχει ακριβώς 2n+1 κόμβους σε ένα μόνο κρυφό επίπεδο, με το n να αποτελεί τον αριθμό των κόμβων εισόδου. Η θεωρία, όμως, αυτή έχει αποδειχθεί μη ακριβής για το λόγο ότι ισχύει μόνο για μια συγκεκριμένη συνάρτηση ενεργοποίησης των κόμβων που είναι αρκετά πιο πολύπλοκη από τις σιγμοειδείς που χρησιμοποιούνται τις περισσότερες φορές στην πράξη. Σε διαφορετική περίπτωση, το πλήθος των κόμβων για να διατηρηθεί μόνο ένα κρυφό επίπεδο μπορεί να φτάσει ακόμα και τον αριθμό των δειγμάτων εκπαίδευσης. Σαν επέκταση αυτού του θεωρήματος, ο Huang απέδειξε το 2003 ότι με δυο κρυφά επίπεδα, m νευρώνες στο επίπεδο της εξόδου και Ν αριθμό δειγμάτων για εκπαίδευση, ο αριθμός των κόμβων στα κρυφά επίπεδα δεν πρέπει να ξεπερνά τους 2 (m + 2)N κόμβους. Πιο συγκεκριμένα, προτείνει ο αριθμός των κόμβων στο 1 ο κρυφό επίπεδο να μην ξεπερνά τους (2.63) (m + 2)N + 2 N/(m + 2) και του 2 ου επιπέδου τους (2.64) m N/(m + 2). Τρόποι επιλογής του βέλτιστου αριθμού κόμβων στα εσωτερικά επίπεδα αποτελούν, ακόμα, η εξαντλητική αναζήτηση που ελέγχει όλες τις πιθανές τοπολογίες του συστήματος, αλλά δεν είναι καθόλου πρακτική εξαιτίας του χρόνου που απαιτεί η εφαρμογή της και η δοκιμή τυχαίου αριθμού από nodes και η μετέπειτα διόρθωση σύμφωνα με το σφάλμα. Άλλες μέθοδοι που χρησιμοποιούνται είναι οι ευριστικές, που κάνουν χρήση της εμπειρικής γνώσης που έχει συσσωρευθεί από την επίλυση προηγούμενων προβλημάτων με νευρωνικά δίκτυα και χρησιμοποιούνται κυρίως σαν σημείο εκκίνησης της αναζήτησης για τις προηγούμενες τεχνικές. Κάποιες από αυτές είναι ότι ο αριθμός των κόμβων των κρυφών επιπέδων πρέπει να κυμαίνεται στο 70-90% του πλήθους των κόμβων εισόδου, ότι ο συνολικός αριθμός τους δεν πρέπει να ξεπερνάει το διπλάσιο του πλήθους των κόμβων εισόδου ή ότι το μέγεθος κάθε εσωτερικού επιπέδου πρέπει να είναι ανάμεσα σε αυτά της εισόδου και εξόδου. Μια, ακόμα, μέθοδος που αξίζει να σημειωθεί είναι αυτή που έχοντας ένα δεδομένο αριθμό nodes προσθέτει διαδοχικά ή αφαιρεί συνδέσεις μεταξύ τους μέχρι να επιτύχει το καλύτερο αποτέλεσμα. Τέτοιου είδους τεχνικές δουλεύουν πολύ αποδοτικά, αλλά η πολυπλοκότητά τους συμβάλλει στο να μη χρησιμοποιούνται συχνά. Τέλος, μπορεί να μην υπάρχει ξεκάθαρος τρόπος για τη βέλτιστη επιλογή των κόμβων των εσωτερικών επιπέδων, αλλά έχει φανεί πειραματικά ότι καλύτερα αποτελέσματα έχουν οι μέθοδοι που χρησιμοποιούν τον ίδιο ή περίπου τον ίδιο αριθμό κόμβων σε όλα τα κρυφά επίπεδα. 40

42 2.5.3 Dropout Μια πολύ καλή προσέγγιση που βελτιώνει σχεδόν πάντοτε την απόδοση των μεθόδων που χρησιμοποιούνται στο machine learning, αλλά υπολογιστικά και χρονικά πολύ ακριβή, είναι η χρήση πολλών μοντέλων με διαφορετικές αρχιτεκτονικές και πολλές τοπολογίες και ο συνδυασμός των εξόδων τους. Η επιλογή των κατάλληλων παραμέτρων, όμως, για όλες αυτές τις περιπτώσεις εξακολουθεί να είναι το μείζον πρόβλημα, όπως και ότι το πλήθος των δεδομένων του training πολλές φορές δεν επαρκεί για τη δημιουργία αρκετών subsets για κάθε δίκτυο. Μια παρόμοια τεχνική με αυτή τη μέθοδο, που ξεπερνάει τα προβλήματα που συναντώνται κατά την εφαρμογή της, είναι αυτή της χρήσης του dropout [12]. Ο όρος dropout αναφέρεται στην απόσυρση κάποιων νευρώνων, κρυφών ή μη, των νευρωνικών δικτύων και επιτυγχάνει το συνδυασμό πολλών διαφορετικών τοπολογιών και την αποφυγή του overfitting, χωρίς να απαιτεί σημαντικά περισσότερο χρόνο και επαναλήψεις κατά την εκπαίδευση. Με την απόσυρση κάποιου από τους νευρώνες εννοούμε την προσωρινή έξοδό του από το δίκτυο και μαζί την απόσυρση όλων των εισερχόμενων και εξερχόμενων συνδέσεων του, όπως φαίνεται στην εικόνα 16. Το ποιοι νευρώνες θα απορριφθούν σε κάθε επανάληψη του training γίνεται με τυχαίο τρόπο. Στην απλούστερη περίπτωση, ο κάθε νευρώνας έχει μια συγκεκριμένη πιθανότητα παραμονής p, όπου το p μπορεί να επιλεχθεί με τη χρήση ενός συνόλου επαλήθευσης ή μπορεί να τεθεί σε μια τιμή κοντά στο 0,5 που μοιάζει κοντά στην ιδανική για ένα μεγάλο εύρος εφαρμογών. Η τιμή αυτή αφορά, κυρίως, νευρώνες των εσωτερικών επιπέδων, ενώ για το επίπεδο της εισόδου χρησιμοποιείται, συνήθως, μια τιμή κοντά στο 1 ή καθόλου dropout. Εικ. 16: Εφαρμογή του dropout στα Νευρωνικά Δίκτυα. Αριστερά: Νευρωνικό δίκτυο με 2 κρυφά επίπεδα. Δεξιά: Το ίδιο δίκτυο μετά το dropout. Η εφαρμογή του dropout σε ένα νευρωνικό δίκτυο ισούται με την εκπαίδευση ενός αραιωμένου δικτύου που πηγάζει από το αρχικό, με κόμβους τους νευρώνες που δεν αφαιρέθηκαν κατά την εφαρμογή αυτού. Έτσι, ένα δίκτυο με n νευρώνες μπορεί να θεωρηθεί ως ένα σύμπλεγμα από 2 n πιθανών αραιωμένων δικτύων, που μοιράζονται τα ίδια βάρη, με τον αριθμό των παραμέτρων τους να παραμένει ίδιος με τον αρχικό, μικρότερος ή ίσος του n 2. Σε κάθε επανάληψη κατά το training δημιουργείται και εκπαιδεύεται ένα άλλο δίκτυο και πολλά από τα 2 n δίκτυα μπορεί να μην έχουν την ευκαιρία να εκπαιδευτούν ποτέ. Κατά την εφαρμογή του δικτύου, που έχει προκύψει από την εκπαίδευση με τη χρήση dropout, χρησιμοποιούνται όλοι οι κόμβοι με μια 41

43 ποσοστιαία μείωση των βαρών τους ίδια με την πιθανότητα p της παραμονής σε κάθε επανάληψη. Ο τρόπος αυτός επιτυγχάνει τη συγκέντρωση όλων των αραιωμένων δικτύων σε ένα και οδηγεί σε μικρότερο σφάλμα γενικοποίησης και σε καλύτερα αποτελέσματα. 42

44 3. Υλοποίηση ενός RNN στο Matlab 3.1 Εισαγωγή Σε αυτό το κεφάλαιο γίνεται περιγραφή και ανάλυση της υλοποίησης ενός recurrent neural network στο προγραμματιστικό περιβάλλον του Matlab. Η ανάλυση περιλαμβάνει την παρουσίαση της δομής του recurrent multilayer perceptron (RMLP) που χρησιμοποιείται και του αλγόριθμου εκμάθησης με τη χρήση του back-propagation through time (BPTT) σε συνδυασμό με ένα είδος extended kalman filter, του decoupled extended kalman filter (DEKF), που το συνοδεύουν. Έπειτα, ακολουθούν κάποια πειράματα που πραγματοποιήθηκαν για την εξακρίβωση της ορθής λειτουργίας του δικτύου. 3.2 Περιγραφή της λειτουργίας του RNN Το Μοντέλο που χρησιμοποιήθηκε Το μοντέλο ανάπτυξης του recurrent neural network βασίζεται πάνω σε ένα recurrent multilayer perceptron που χρησιμοποιείται σαν ελεγκτής για τη διαχείριση μη γραμμικών δυναμικών συστημάτων. Το RMLP μπορεί να θεωρηθεί σαν ένα feedforward δίκτυο επαυξημένο με αναδρομικές συνδέσεις, αποτελείται από τα layers της εισόδου και της εξόδου και ενδιάμεσα κρυφά επίπεδα, ο αριθμός των οποίων μπορεί να τεθεί δυναμικά κατά την εκκίνηση του κάθε μοντέλου. Στο συγκεκριμένο δίκτυο, οι αναδρομικές συνδέσεις που υπάρχουν στα εσωτερικά επίπεδα εξαρτώνται μόνο από την κατάσταση του δικτύου στο προηγούμενο βήμα. Παρακάτω θα γίνει ανάλυση της διαδικασίας εκμάθησης του δικτύου που περιλαμβάνει δυο κρυφά επίπεδα. 43

45 Εικ. 17: Δομή του Recurrent MLP με δυο κρυφά επίπεδα. Με x Ι (n) και x ΙΙ (n) σημαίνονται οι έξοδοι του πρώτου και δεύτερου κρυφού επιπέδου, x o (n) είναι η έξοδος του επιπέδου της εξόδου και με u(n) το διάνυσμα της εισόδου. Οι κανόνες λειτουργίας του RMLP της εικόνας 17 μπορούν να εκφραστούν από τους επόμενους μαθηματικούς τύπους, (3.1) x I (n + 1) = f I (w I [ x I (n) u(n) ]) (3.2) x II (n + 1) = f II (w II [ x II (n) x I (n) ]) (3.3) x o (n + 1) = f o (w o [ x o (n) x II (n) ]) όπου f I, f II και f o είναι οι συναρτήσεις ενεργοποίησης του 1 ου, του 2 ου και του επιπέδου της εξόδου αντίστοιχα (σε αυτή την υλοποίηση στη θέση όλων των συναρτήσεων ενεργοποίησης χρησιμοποιήθηκε η υπερβολική εφαπτομένη, tanh). Τα w I, w II και w o αφορούν τους πίνακες βαρών του 1 ου επιπέδου, του 2 ου και του επιπέδου της εξόδου DEKF και BPTT Το decoupled extended kalman filter αποτελεί μια απλουστευμένη εκδοχή του EKF (ή αλλιώς global EKF) [13], που επιτυγχάνει μικρότερη πολυπλοκότητα και έχει λιγότερες απαιτήσεις από άποψη μνήμης. Το γεγονός αυτό επιτυγχάνεται λόγω του ότι δεν υπολογίζεται σε κάθε βήμα της διαδικασίας ολόκληρος ο πίνακας της διακύμανσης των βαρών και όλων των συνδέσεων μεταξύ 44

46 τους, αλλά αντ αυτού χωρίζονται τα βάρη σε αμοιβαία αποκλειόμενα group και γίνεται ο υπολογισμός πολλών μικρότερων πινάκων αποφεύγοντας, έτσι, το κόστος υπολογισμού πολλών συνδέσεων, οι οποίες έχουν καθολικά την τιμή 0. Χαρακτηριστικά αναφέρεται ότι η πολυπλοκότητα του GEKF είναι O(Ν ο M 2 ) και οι απαιτήσεις σε μνήμη O(M 2 ), ενώ οι αντίστοιχες απαιτήσεις του DEKF είναι O(Ν ο 2 M+Ν ο g (M i 2 )) και O( g (M i 2 )), όπου M i είναι ο αριθμός των βαρών κάθε group και g το πλήθος των group. Η λειτουργία του μοιάζει κατά πολύ με αυτή του EKF, που περιγράφηκε στην Ενότητα Με δεδομένο το RMLP της προηγούμενης υποενότητας, γράφουμε τις σχέσεις των βαρών που έχουν ως εξής: (3.4) w(n + 1) = w(n) + ω(ν) (3.5) x o (n) = f(n)(w(n), u(n), v(n)) + ν(n) όπου w(n) είναι οι συνδέσεις των βαρών ολόκληρου του δικτύου και x o (n) η έξοδός του. Με v(n) συμβολίζεται το διάνυσμα που περιέχει τις αναδρομικές εισόδους και με ν(n) αυτό του θορύβου των μετρήσεων. Το u(n) είναι και πάλι η είσοδος του δικτύου, το ω(n) ο τεχνητός θόρυβος της διεργασίας, που έχει μηδενική τιμή διακύμανσης και f είναι η συνάρτηση ενεργοποίησης του δικτύου. Με την εφαρμογή της σειράς Taylor και κρατώντας μόνο το γραμμικό μέρος αυτής, η εξίσωση (3.5) επεκτείνεται ως εξής: (3.6) d (n) = C(n)w(n) + ν(n) Το d (n) είναι η εκτίμηση πρώτης τάξης της εξόδου x o (n) και το C(n) ένας p επί W πίνακας του γραμμικοποιημένου μοντέλου που ορίζεται από τον πίνακα μερικών παραγώγων (3.7) C(n) = f 1 f 1 f 1 w 1 w 2 w W f 2 f 2 f 2 [ w 1 f p w 1 w 2 w W f p f p w 2 w W ], με το p να είναι ο αριθμός των εξόδων του δικτύου και το W ο αριθμός των συνδέσεων μεταξύ των βαρών αυτού. Ο υπολογισμός του πίνακα αυτού γίνεται μέσω του BPTT, που αναλαμβάνει το ξεδίπλωμα του αναδρομικού δικτύου σε πολλαπλά feedforward δίκτυα και κάνει τη διόρθωση των βαρών από το τελευταίο επίπεδο προς τα αρχικά αξιοποιώντας την κλίση του σφάλματος της εξόδου. Εφαρμόζοντας, έπειτα, το κλασικό Kalman filter στο γραμμικοποιημένο μοντέλο εξάγονται οι παρακάτω σχέσεις: g i=1 (3.8) Γ(n) = [ C i (n)k i (n, n 1)C i T (n) + R(n) (3.9) G i (n) = K i (n, n 1)C i T (n)γ(n) (3.10) α(n) = d(n) d (n) ] 1 45

47 (3.11) w i (n + 1) = w i (n) + G i (n)α(n) (3.12) K i (n + 1, n) = K i (n, n 1) G i (n)c i (n)k i (n, n 1) + Q i (n) Το g αναφέρεται στον αριθμό των group που ορίζονται από τις μεταξύ συνδέσεις των βαρών, το Γ(n) είναι ο γενικός παράγοντας μετατροπής που χρησιμοποιείται στο RMLP και το α(n) η μεταβολή της εξόδου του. Με G i (n) συμβολίζεται το κέρδος του φίλτρου και με K i (n+1,n) ο πίνακας συσχέτισης του σφάλματος. Το d(n) αφορά την επιθυμητή έξοδο του δικτύου και το w i (n) το διάνυσμα των βαρών του group i τη χρονική στιγμή n. Τέλος, τα R(n) και Q(n) είναι οι πίνακες που περιέχουν τα στοιχεία της κύριας διαγωνίου των πινάκων διακύμανσης των θορύβων ν(n) και ω(n) αντίστοιχα. Στη σχέση (3.11) υπάρχει και ο όρος η(n) ο οποίος κάνει εφαρμογή του learning rate κατά την εκπαίδευση, ξεκινώντας από μια σχετικά μεγάλη τιμή (0,7-1) για γρήγορη σύγκλιση και μειώνεται σταδιακά κατά τις επαναλήψεις του training για την επίτευξη του σωστότερου προσδιορισμού των βαρών. Ο αλγόριθμος αυτός αποτελεί το decoupled EKF, ενώ αν θέσει κανείς g=1 έχουμε άμεση μετάβαση στο global EKF. Αν πάλι χρησιμοποιήσουμε κάθε κόμβο του δικτύου ως ένα ξεχωριστό group, όπως έχει γίνει σε αυτή την υλοποίηση, τότε δημιουργείται ένα παρακλάδι του DEKF, το node-decoupled EKF, το οποίο κρίνεται πολύ αποδοτικό σε τέτοιου είδους υλοποιήσεις, χωρίς να θυσιάζεται η τελική επίδοση του δικτύου και ο χρόνος της διαδικασίας εκμάθησης. 3.3 Περιγραφή των Εργαλείων που Αναπτύχθηκαν Η υλοποίηση του RNN πραγματοποιείται μέσω μιας συλλογής από m-αρχεία του Matlab, τα οποία λειτουργούν ως εργαλεία για τη δημιουργία της δομής του δικτύου, της εκπαίδευσης αυτού και του μετέπειτα ελέγχου μέσω νέων δεδομένων. Πιο συγκεκριμένα, τα εργαλεία αυτά αποτελούνται από τα εξής αρχεία: 1. mainrnn.m - το οποίο είναι υπεύθυνο για την αρχικοποίηση των μεταβλητών που αποτελούν τα χαρακτηριστικά και διέπουν τη λειτουργία του δικτύου (όπως ο αριθμός εισόδων, εξόδων, επιπέδων και κόμβων) και εκκινεί, επίσης, τις διαδικασίες του training και των ελέγχων της ακρίβειας που ακολουθούν αυτό. 2. weights_init.m - που δημιουργεί τον πίνακα των βαρών του συστήματος και τον αρχικοποιεί με τυχαίες τιμές του διαστήματος [-0.25, 0.25]. 3. trainrnn.m - που πραγματοποιεί την εκπαίδευση του δικτύου εφαρμόζοντας τις τεχνικές BPTT, DEKF και του cross validation. 4. datagen_*.m - είναι η συνάρτηση που παράγει τα δεδομένα εκπαίδευσης και ελέγχου του εκάστοτε πειράματος. 5. annealing.m - μια συνάρτηση που αναλαμβάνει τη σταδιακή μείωση της τιμής ενός χαρακτηριστικού (όπως π.χ. του learning rate) με ισόποσες μεταβολές, σύμφωνα με τον αριθμό των επαναλήψεων της διαδικασίας της εκπαίδευσης [14]. 46

48 6. runrnn.m - πραγματοποιεί την προς τα εμπρός διάδοση της εκπαίδευσης των δεδομένων. 7. tanh1.m - η μαθηματική υλοποίηση της συνάρτησης ενεργοποίησης (της υπερβολικής εφαπτομένης). 8. d_tanh1.m - η παράγωγος πρώτης τάξης της συναρτήσεως ενεργοποίησης (της υπερβολικής εφαπτομένης). 9. RNN_evaluation.m - κάνει την εφαρμογή του δικτύου στα δεδομένα ελέγχου, αφού έχει πραγματοποιηθεί η διαδικασία της εκπαίδευσης. 10. plot_result.m - παρουσιάζει, όταν αυτό είναι δυνατό, οπτικά (σε διάγραμμα) τα αποτελέσματα της εξόδου του δικτύου προς αυτά των επιθυμητών τιμών τους. 3.4 Πειράματα και Αποτελέσματα Έπειτα από την ολοκλήρωση των εργαλείων που υλοποιούν το δίκτυο και τη λειτουργία του, έγιναν κάποια πειράματα για να ελεγχθεί η ορθή λειτουργία του σε πραγματικές συνθήκες. Τα πειράματα αυτά χωρίστηκαν σε δυο φάσεις, με καθεμία από αυτές να προσπαθεί να προσεγγίσει τη συμπεριφορά κάποιας μαθηματικής συνάρτησης με γνώμονα την ακρίβεια, που ελέγχεται μέσω της τιμής του σφάλματος της διαδικασίας. Το σφάλμα και σε αυτή την περίπτωση είναι το mean square error (MSE) που δίνεται από τον επόμενο τύπο: (3.13) MSE = 1 N N k=1 (out(k)2 y(k) 2 ) Το Ν αναφέρεται στον συνολικό αριθμό των προς εκπαίδευση στοιχείων, το out(k) είναι η έξοδος του RNN τη στιγμή k και το y(k) η επιθυμητή έξοδος. Στο πρώτο πείραμα το νευρωνικό δίκτυο εκπαιδεύτηκε σε μια πολυωνυμική συνάρτηση 1 ου βαθμού και έπειτα σε πολυώνυμα μεγαλύτερου βαθμού (2 ου, 3 ου, 4 ου και 5 ου βαθμού). Σε αυτό το πείραμα υπήρχε μια είσοδος (το x ) και μια έξοδος (το Υ ή out ). Ως training και test dataset χρησιμοποιήθηκαν 1000 δείγματα με τιμές εισόδου από 0 ως 1. Σε όλα τα πειράματα χρησιμοποιήθηκε ο ίδιος αριθμός nodes και layers (2 layers με 8 nodes το καθένα) και ο ίδιος αριθμός επαναλήψεων. Χρησιμοποιήθηκαν τυχαίες συναρτήσεις, όπως φαίνονται παρακάτω μαζί με το MSE τους. Τα γραφήματα σε κάθε συνάρτηση, με τη σειρά που εμφανίζονται, αφορούν την επιθυμητή συνάρτηση (με μπλε), τη συνάρτηση που παράγουν οι έξοδοι του δικτύου (με κόκκινο) και την τομή τους. 47

49 1. Y 1 (x) = 0.87x+0.07 MSE 1 = 1.2* Y 2 (x) = x 2 MSE 2 = 3.5* Y 3 (x) = ((6x-2) 3-2(6x-2) 2-4(6x-2)+12)/30 MSE 3 = 2.5* Y 4 (x) = ((5x-2) 4-5(5x-2) 2 +20)/70 MSE 4 = 2.06*

50 5. Y 5 (x) = ((15x-7) 5-45(15x-7) 3 +4(15x-7)+10000)/60000 MSE 5 = 7.9*10-5 Σύμφωνα με τα, μέχρι στιγμής, αποτελέσματα του πειράματος παρατηρείται ότι υπάρχει μια μικρή διαφορά στην ακρίβεια με την οποία «μαθαίνει» μια συνάρτηση 1ου-3ου βαθμού και συναρτήσεις μεγαλύτερου βαθμού. Η διαφορά αυτή είναι της μιας τάξης μεγέθους (από 10-5 στο 10-4). Για συναρτήσεις μεγαλύτερου βαθμού, το δίκτυο δείχνει να τις «μαθαίνει» με παρόμοια ακρίβεια ανεξαρτήτως της τάξης τους και οι μικρές διακυμάνσεις στο mse εξαρτώνται από τη μορφή της συνάρτησης (όπως η κλίση και τα τοπικά ακρότατα). Στη συνέχεια, πραγματοποιήθηκε μια τελευταία δοκιμή, στα πλαίσια αυτού του πειράματος, που αφορούσε την εκμάθηση μιας ημιτονοειδούς συνάρτησης, όπως φαίνεται παρακάτω. 6. Y(x) = 0.4x+0.14sin(5x)+0.5 MSE = 5.84*10-4 Στα πλαίσια του 2 ου πειράματος αυξήθηκε ο αριθμός των εισόδων ανάλογα με το βαθμό του πολυωνύμου. Οι συναρτήσεις που εξετάζονται τώρα έγιναν της μορφής a 1 x 1 n + a 2 x 2 n-1 + a n x n +c. Οι είσοδοι x 1, x 2,, x n παίρνουν πάλι τιμές από 0 ως 1. Διατηρώντας όλες τις παραμέτρους ίδιες όπως και στο προηγούμενο πείραμα και με τυχαίες συναρτήσεις που φαίνονται παρακάτω, τα αποτελέσματα ήταν τα εξής: 49

51 1. Y 1 (x1,x2,x3) = 0.45x x x MSE 1 = 1.49* Y 2 (x1,x2,x3,x4,x5) = 0.35x x x x x MSE 2 = 6.92*

52 4. Μεθοδολογία 4.1 Εισαγωγή Σε αυτό το κεφάλαιο αναλύεται η διαδικασία που ακολουθήθηκε για την επίτευξη της παραγωγής hashtag από tweet των χρηστών του κοινωνικού δικτύου Twitter, που είναι και ο σκοπός τούτης της διπλωματικής εργασίας. Αρχικά, περιγράφεται ο τρόπος με τον οποίο πραγματοποιήθηκε η συλλογή δεδομένων, που χρησιμοποιήθηκαν για την εκπαίδευση του αναδρομικού νευρωνικού δικτύου από το Twitter. Τα δεδομένα που συλλέχθηκαν υπέστησαν κάποια προεπεξεργασία για να έρθουν στην κατάλληλη μορφή προς εκπαίδευση, η οποία περιγράφεται στις επόμενες ενότητες και έπειτα αναλύονται τα προβλήματα που δημιουργήθηκαν κατά την εκπαίδευση και ο τρόπος με τον οποίο αυτά ξεπεράστηκαν. Το κυριότερο πρόβλημα που αντιμετωπίστηκε είναι αυτό της σύνδεσης των δυο ακολουθιών διαφορετικού μήκους (εισόδου και εξόδου) μέσω ενός LSTM δικτύου και οι παράμετροι που χρησιμοποιήθηκαν για την βελτιστοποίηση και αξιολόγηση της απόδοσης αυτού. 4.2 Συλλογή και Επεξεργασία Δεδομένων από το Twitter Twitter Το Twitter είναι μια ιστοσελίδα κοινωνικής δικτύωσης, ιδρύθηκε τον Μάρτιο του 2006 από τον Jack Dorsey και από τα πρώτα στάδια της ζωής του γνώρισε ραγδαία ανάπτυξη. Η βασική του ιδέα είναι ότι οι χρήστες μπορούν να δημοσιεύσουν ανά πάσα στιγμή μηνύματα κειμένου, γνωστά ως τιτιβίσματα ή tweet. Όπως σε κάθε κοινωνικό δίκτυο, έτσι και στο Twitter υπάρχουν σχέσεις μεταξύ των χρηστών του δικτύου. Βασική έννοια στις σχέσεις μεταξύ των χρηστών είναι αυτή του ακόλουθου (follower). Κάθε χρήστης μπορεί να ακολουθήσει οποιονδήποτε άλλον χρήστη επιθυμεί, χωρίς να χρειάζεται η συγκατάθεση του δεύτερου. Με αυτόν τον τρόπο γίνεται ακόλουθός του και ενημερώνεται αυτόματα για τα tweet που δημοσιεύει. Άλλη μια βασική έννοια στο Twitter, που θα μας απασχολήσει ιδιαιτέρως, είναι αυτή του hashtag. Hαshtag είναι η λέξη ενός τιτιβίσματος που ακολουθεί τον ειδικό χαρακτήρα #. Το hashtag εκφράζει, συνήθως, το θέμα του τιτιβίσματος και βοηθάει στην ομαδοποίηση των τιτιβισμάτων που έχουν το ίδιο θέμα. Όμοια ο ειδικός ακολουθούμενος από το όνομα κάποιου χρήστη χρησιμοποιείται για να απευθυνθούμε σε αυτόν τον χρήστη και να ξεκινήσουμε μια συζήτηση μαζί του. Επίσης υπάρχει η δυνατότητα να προωθήσουμε ένα τιτίβισμα στους ακόλουθούς μας κάνοντάς το αναδημοσίευση ή, αλλιώς, retweet. Σε αυτήν την περίπτωση χρησιμοποιείται το σύμβολο RT. 51

53 Σήμερα, το Twitter μετρά περισσότερους από 320 εκατομμύρια ενεργούς χρήστες που δημοσιεύουν πάνω από 500 εκατομμύρια tweet την ημέρα. Τα tweet αποτελούνται αποκλειστικά από μηνύματα κειμένου μήκους έως 140 χαρακτήρων, γεγονός που αναγκάζει τους χρήστες να χωρέσουν ολόκληρο το περιεχόμενο της πληροφορίας σε αυτό τον περιορισμό και προσφέρει μια ομοιομορφία στα δεδομένα που δημοσιεύονται, γεγονός που τα καθιστά κατάλληλα για περαιτέρω επεξεργασία από τους αναλυτές. Ένα ποσοστό των μηνυμάτων αυτών είναι διαθέσιμο σε προγραμματιστές και ερευνητές μέσω των δημόσιων διεπαφών προγραμματισμού εφαρμογών (Application Programming Interfaces ή πιο γνωστές ως APIs) που παρέχει το Twitter [15]. Το public API του Twitter αποτελείται από δύο τύπους εφαρμογών με διαφορετική σχεδίαση και δυνατότητες. Οι τύποι αυτοί είναι το REST API και το Streaming API. Το REST API βασίζεται στην αρχιτεκτονική REST, που χρησιμοποιείται ευρέως στο σχεδιασμό web εφαρμογών και δίνει την δυνατότητα χρήσης όλων των βασικών λειτουργιών του Twitter, όπως tweet, follow, retweet, unfollow, mention, κτλ. Εκτός από τις βασικές, υπάρχουν κάποιες επιπλέον δυνατότητες, όπως η άντληση ολόκληρου του χρονολογίου (timeline) ενός χρήστη, η πρόσβαση στη λίστα των followers και following αυτού και άλλα. Το Streaming API απευθύνεται σε εφαρμογές που αντλούν μεγάλο όγκο δεδομένων σε πραγματικό χρόνο. Ουσιαστικά παρέχει ένα real time δείγμα του δημόσιου χρονολογίου (public timeline), το οποίο αποτελεί το σύνολο των tweet που δημοσιεύονται στο Twitter Twitter Streaming API Σε αυτή την υποενότητα περιγράφεται ο τρόπος με τον οποίο αξιοποιήθηκε το Streaming API του Twitter για την πρόσβαση και εξαγωγή δεδομένων από το κοινωνικό δίκτυο για τη δημιουργία του dataset, που θα αξιοποιηθεί στο πείραμα της αυτόματης παραγωγής hashtag από tweet, της παρούσας διπλωματικής εργασίας [16]. Το Streaming API δημιουργεί, αρχικά, μια μόνιμη, με μικρή καθυστέρηση (low latency), σύνδεση με το Twitter και έκτοτε αντλεί tweet από αυτό για όσο χρόνο η σύνδεση παραμένει ενεργή. Ο όγκος των tweet που αντλείται με αυτή τη μέθοδο ανέρχεται σε ένα δείγμα της τάξης του 1% του συνολικού όγκου των δημόσιων tweet που είναι προσβάσιμα από όλους τους χρήστες. Το Twitter προσφέρει διαφορετικά endpoints στα οποία συνδέεται το Streaming API, καθένα από τα οποία είναι σχεδιασμένο για διαφορετικές περιπτώσεις χρήσης. Αυτά είναι: Public Streams Περιέχουν ροές δεδομένων που κυκλοφορούν δημόσια στο Twitter. Είναι κατάλληλα για να ακολουθείς συγκεκριμένα θέματα στο Twitter ή συγκεκριμένους χρήστες καθώς και για data mining. 52

54 User Streams Περιέχουν ροές που αφορούν σχεδόν όλα τα δεδομένα που σχετίζονται με ένα συγκεκριμένο χρήστη του Twitter. Site Streams Αποτελεί την έκδοση των User Streams για πολλούς χρήστες. Τα Site Streams απευθύνονται σε εφαρμογές που συνδέονται στο Twitter εκ μέρους πολλών χρηστών. Υπάρχει, επίσης, το Firehose, το οποίο απαιτεί ειδική άδεια για τη σύνδεση σε αυτό που παρέχεται μόνο σαν εμπορική εφαρμογή. Με τη χρήση αυτού, ο χρήστης έχει πρόσβαση σε όλα τα δημόσια tweet που δημιουργούνται. Για τις ανάγκες της συλλογής του dataset της παρούσης διπλωματικής εργασίας θα χρησιμοποιηθεί το Public Stream ως το endpoint άντλησης δεδομένων από το Twitter. Η σύνδεση με οποιοδήποτε API του Twitter μπορεί να πραγματοποιηθεί μόνο με πιστοποιημένα αιτήματα. Για την πιστοποίηση των αιτημάτων, το Twitter χρησιμοποιεί σαν μέθοδο αυθεντικοποίησης το Open Authentication (Oauth), που παρέχει έναν ασφαλή τρόπο για την πραγματοποίηση της σύνδεσης με το Stream των tweet, χωρίς τη χρήση των κωδικών του μέλους. Για να χρησιμοποιήσει ένας χρήστης το Twitter API, θα πρέπει να δημιουργήσει μία εφαρμογή στη σχετική σελίδα του δικτύου, μέσω της οποίας θα επικοινωνεί τελικά με αυτό και η οποία θα παρέχει σε αυτόν τους 4 απαραίτητους κωδικούς για την πιστοποίηση μέσω του Oauth. Με αυτόν τον τρόπο, ο κωδικός του χρήστη δεν εμφανίζεται πουθενά και δεν κοινοποιείται σε άλλες εφαρμογές ή τρίτους. Κατά την εκτέλεση κάθε αιτήματος μέσω του Streaming API ο χρήστης έχει τη δυνατότητα να επιλέγει κάποιες παραμέτρους, οι οποίες θα περιορίσουν τα δεδομένα που αντλούνται από το endpoint σε αυτά που το περιεχόμενό τους είναι και το επιθυμητό. Η δυνατότητα αυτή είναι εξαιρετικά χρήσιμη, καθώς ο χρήστης μπορεί να ορίσει της παραμέτρους που επιθυμεί, έτσι ώστε να εμποδίσει την εισροή δεδομένων που είναι άνευ σημασίας για την εκάστοτε εφαρμογή που υλοποιείται. Κάποιες από αυτές τις παραμέτρους (φίλτρα) είναι η γλώσσα (language) που είναι γραμμένα τα tweet και επιλέγεται χρησιμοποιώντας το πρόθεμά της από τη λίστα BCP-47, το location, που εμφανίζει μόνο tweet που έχουν γίνει από χρήστες που βρίσκονται σε μια συγκεκριμένη τοποθεσία, το track που κάνει αναζήτηση μιας συγκεκριμένης λέξης ή φράσης και πολλές άλλες που αναφέρονται αναλυτικά στην ιστοσελίδα με τα προγραμματιστικά εργαλεία (developer tools) του Twitter Συλλογή και Προεπεξεργασία Δεδομένων Για τη συλλογή των δεδομένων από tweet των χρηστών χρησιμοποιήθηκε ένα python script, το οποίο αντλούσε δεδομένα μέσω του Twitter Streaming API με μοναδικό φίλτρο η γλώσσα να είναι τα αγγλικά (για tweet στα ελληνικά η ροή ήταν πολύ αργή για να συγκεντρωθεί σε ένα σύντομο χρονικό διάστημα ένας ικανοποιητικός αριθμός δειγμάτων). Μετά από μια περίοδο λειτουργίας 12 ημερών (το script τραβούσε δεδομένα για περίπου 8 ώρες ημερησίως) 53

55 συσσωρεύθηκαν σε ένα text αρχείο περί τα 93.4 GB δεδομένων που προέρχονταν από tweet σε μορφή JSON (JavaScript Object Notation). Το JSON είναι μια μορφή δεδομένων κειμένου που περιέχει διάφορα attributes τα οποία το κάνουν εύκολο στην ανάγνωση από τους ανθρώπους και στην ανάλυση από τους ηλεκτρονικούς υπολογιστές. Ένα παράδειγμα ενός tweet σε μορφή JSON φαίνεται παρακάτω. {"favorited": false, "contributors": null, "truncated": false, "text": Everyone on the Trump side looks like they're attending a funeral. \n\nrip Republican Party!\n\n#Debates", "is_quote_status": false, "in_reply_to_status_id": null, "user": {"follow_request_sent": null, "profile_use_background_image": true, "default_profile_image": false, "id": , "verified": false, "profile_image_url_https": " "profile_sidebar_fill_color": "DDEEF6", "profile_text_color": "333333", "followers_count": 123, "profile_sidebar_border_color": "C0DEED", "id_str": " ", "profile_background_color": "C0DEED", "listed_count": 0, "profile_background_image_url_https": " "utc_offset": , "statuses_count": 4821, "description": null, "friends_count": 590, "location": null, "profile_link_color": "19CF86", "profile_image_url": " "following": null, "geo_enabled": true, "profile_banner_url": " "profile_background_image_url": " "name": "Keith Moore", "lang": "en", "profile_background_tile": false, "favourites_count": 1521, "screen_name": "2amHuddleHouse", "notifications": null, "url": null, "created_at": "Tue Jan 31 20:33: ", "contributors_enabled": false, "time_zone": "Central Time (US & Canada)", "protected": false, "default_profile": false, "is_translator": false}, "filter_level": "low", "geo": null, "id": , "favorite_count": 0, "lang": "en", "retweeted_status": {"contributors": null, "truncated": false, "text": "Everyone on the Trump side looks like they're attending a funeral. \n\nrip Republican Party!\n\n#Debates", "is_quote_status": false, "in_reply_to_status_id": null, "id": , "favorite_count": 2, "source": "<a href=\" rel=\"nofollow\">twitter for iphone</a>", "retweeted": false, "coordinates": null, "entities": {"user_mentions": [], "symbols": [], "hashtags": [{"indices": [92, 100], "text": "Debates"}], "urls": []}, "in_reply_to_screen_name": null, "id_str": " ", "retweet_count": 3, "in_reply_to_user_id": null, "favorited": false, "user": {"follow_request_sent": null, "profile_use_background_image": true, "default_profile_image": false, "id": , "verified": true, "profile_image_url_https": " "profile_sidebar_fill_color": "E4386C", "profile_text_color": "565656", "followers_count": 21667, "profile_sidebar_border_color": "0A0A0A", "id_str": " ", "profile_background_color": "FFFFFF", "listed_count": 255, "profile_background_image_url_https": " "utc_offset": , "statuses_count": 20753, "description": 'That fascinatingly snide girl at the party whom everyone wants to dish with' according "friends_count": 770, "location": "Los Angeles, CA", "profile_link_color": "FA7FA4", "profile_image_url": " "following": null, "geo_enabled": true, "profile_banner_url": " "profile_background_image_url": " "name": "Erin Darling", "lang": "en", "profile_background_tile": false, "favourites_count": 7710, "screen_name": "ErinADarling", "notifications": null, "url": " "created_at": "Tue Mar 10 04:33: ", "contributors_enabled": false, "time_zone": "Pacific Time (US & Canada)", "protected": false, "default_profile": false, "is_translator": false}, "geo": null, "in_reply_to_user_id_str": null, "lang": "en", "created_at": "Mon Oct 10 01:03: ", "filter_level": "low", "in_reply_to_status_id_str": null, "place": null}, "entities": {"user_mentions": [{"id": , "indices": [3, 16], "id_str": " ", "screen_name": "ErinADarling", "name": "Erin Darling"}], "symbols": [], "hashtags": [{"indices": [110, 118], "text": "Debates"}], "urls": []}, "in_reply_to_user_id_str": null, "retweeted": false, "coordinates": null, "timestamp_ms": " ", "source": "<a href=\" rel=\"nofollow\">twitter Web Client</a>", "in_reply_to_status_id_str": null, "in_reply_to_screen_name": null, "id_str": " ", "place": null, "retweet_count": 0, "created_at": "Mon Oct 10 01:04: ", "in_reply_to_user_id": null} Εικ. 18: Παράδειγμα ενός tweet σε JSON Format. Όπως παρατηρούμε, τα χαρακτηριστικά που συνοδεύουν τον κορμό του tweet, που είναι το κείμενο αυτού (πεδίο text ), καταλαμβάνουν και τον περισσότερο χώρο του εγγράφου. Προκειμένου να καθαρίσουν τα δεδομένα από την περίσσεια πληροφορία και να συγκρατήσουμε μόνο το περιεχόμενο του tweet και το πεδίο με τα hashtag επιστρατεύθηκε ένα δεύτερο script σε γλώσσα python που αποθήκευε αυτές μόνο τις πληροφορίες, εξαιρώντας όλα τα υπόλοιπα πεδία, σε δυο ξεχωριστά αρχεία κειμένου. Αφού έγινε ο διαχωρισμός καταλήξαμε σε ένα σύνολο δεδομένων το οποίο περιείχε εγγραφές. 54

56 Το αρχείο που περιείχε το πεδίο text της ενότητας hashtag βρισκόταν σε πολύ ευανάγνωστη μορφή και κατάλληλη για training. Η μόνη επεξεργασία που έγινε ήταν η προσθήκη του συμβόλου # πριν από κάθε hashtag. Αντιθέτως, όμως, το αρχείο με τα tweet περιείχε ακόμα πολλές πληροφορίες που δεν πρόσφεραν κάτι από άποψη περιεχομένου και νοήματος σε αυτό και θα δυσκόλευαν την προσαρμογή των βαρών του δικτύου κατά την εκπαίδευση. Τέτοιου είδους πληροφορίες ήταν οι διάφοροι σύνδεσμοι που υπήρχαν σε ιστοσελίδες, εικόνες, βίντεο κτλ., οι αναφορές σε άλλους χρήστες (@username), διάφορα προθέματα που χρησιμοποιούνταν (&amp, &lt,...), η αλλαγή σειράς με το πλήκτρο enter (\n), η υπόδειξη που υποδήλωνε ότι το συγκεκριμένο tweet ήταν retweet ενός άλλου χρήστη και άλλα. Η διαγραφή αυτού του περιεχομένου έγινε με ένα shell script που, εκτός αυτών που ήδη αναφέρθηκαν, αναλάμβανε και το σβήσιμο όλων των συμβόλων και των σημείων στίξης που θα οδηγούσαν σε νέες εγγραφές του λεξιλογίου που θα δημιουργούταν πριν το training (δηλαδή το λεξιλόγιο θα περιείχε ξεχωριστές εγγραφές π.χ. για τη λέξη cover αν αυτή βρισκόταν σε δυο tweet, στο ένα στη μέση της πρότασης και στο άλλο στο τέλος που θα ακολουθούταν από τελεία ή θαυμαστικό). Για τον ίδιο λόγο, το να αποφευχθούν οι διπλοεγγραφές στο λεξιλόγιο, όλοι οι χαρακτήρες των tweet μετατράπηκαν σε lowercase και όλων των hashtag σε uppercase και, τέλος, διαγράφηκαν τα hashtag από το περιεχόμενο των tweet. Παρακάτω δίνεται ένα παράδειγμα ενός tweet πριν και μετά τη μέχρι στιγμής προεπεξεργασία. Mother of murdered son in Arkansas sues United States! A Clinton COVER UP! #LockThemUp mother of murdered son in arkansas sues united states a clinton cover up Η ύπαρξη πολλών bot στο Twitter (κυρίως διαφημιστικών) που δημοσιεύουν το ίδιο ακριβώς περιεχόμενο σε τακτά χρονικά διαστήματα δημιουργούν πολλές διπλοεγγραφές στο σύνολο δεδομένων. Το ίδιο κάνουν και τα retweet που αναδημοσιεύουν αυτούσιο το περιεχόμενο άλλων χρηστών και τώρα είναι αναγνωρίσιμο μέσω της προεπεξεργασίας που έχει γίνει στο προηγούμενο βήμα (αφού έχει σβηστεί η αναφορά στον αρχικό χρήστη που έγραψε το tweet). Η αλήθεια είναι ότι οι διπλοεγγραφές δεν επηρεάζουν τόσο την εκπαίδευση του δικτύου, αλλά μπορούν να οδηγήσουν πιο εύκολα στο overfitting αυτού και για αυτό το λόγο διαγράφηκαν από το σύνολο δεδομένων, μέσω ενός ακόμα awk script, καταλήγοντας έτσι με ένα τελικό dataset που περιέχει tweet και hashtag που αντιστοιχούν σε αυτά. 55

57 4.3 Προβλήματα Μετάφρασης και RNN Εισαγωγή Περιγραφή του Προβλήματος Τα αναδρομικά νευρωνικά δίκτυα μπορούν, με τις κατάλληλες τροποποιήσεις, να χρησιμοποιηθούν σε εφαρμογές που επεξεργάζονται αρχεία κειμένου, όπως η παραγωγή γραπτού λόγου ή η μετάφραση από μια γλώσσα σε μια άλλη. Η τεχνική που χρησιμοποιείται για το πέρασμα από αριθμητικά δεδομένα σε χαρακτήρες, σύμβολα και λέξεις είναι η δημιουργία ενός λεξιλογίου που περιέχει το σύνολο των δυνατών εισόδων του δικτύου. Έτσι, ένα λεξιλόγιο που θα παράγει λέξεις από γράμματα και έπειτα προτάσεις από λέξεις θα αποτελείται από το σύνολο των χαρακτήρων και των συμβόλων της γλώσσας (π.χ. α-ω, Α-Ω,.,!,...), αποθηκευμένα σε έναν πίνακα με το index του πίνακα να αποτελεί την είσοδο του δικτύου. Παρομοίως, μια εφαρμογή που έχει αναλάβει το ρόλο της μετάφρασης θα έχει στο λεξιλόγιό της έναν πίνακα με το σύνολο των λέξεων της γλώσσας αυτής (ή το σύνολο των διαφορετικών λέξεων που συναντώνται στα δεδομένα) που θα αφορά την είσοδο του δικτύου και άλλον έναν πίνακα με όλες τις λέξεις της γλώσσας στην οποία γίνεται η μετάφραση. Λόγω της ιδιομορφίας του θέματος και της ομοιότητάς του με το task της μετάφρασης, η παραγωγή hashtag από tweet αντιμετωπίζεται σαν ένα τέτοιο πρόβλημα που επιχειρεί να μεταφράσει το δεδομένα από tweet σε hashtag. Ένα πρόβλημα που προκύπτει και γίνεται αμέσως αντιληπτό όταν ασχολούμαστε με ακολουθίες, όπως αυτές των προτάσεων, είναι το διαφορετικό μήκος αυτών. Τα RNN, παρά την ευελιξία και την προσαρμοστικότητα που παρέχουν, μπορούν να εφαρμοστούν μόνο σε εφαρμογές των οποίων ο αριθμός των εισόδων και αυτός των εξόδων είναι καθορισμένος στην αρχή του προβλήματος και σταθερός. Αυτός ο περιορισμός είναι πολύ σημαντικός σε τέτοιου είδους προβλήματα που έχουν να κάνουν με προτάσεις και οι τρόποι αντιμετώπισής του είναι περιορισμένοι. Ο πιο διαδεδομένος είναι να καθοριστεί το μήκος εισόδου και αντίστοιχα αυτό της εξόδου σύμφωνα με το μήκος της μεγαλύτερης ακολουθίας του συνόλου εκπαιδεύσεως και να συμπληρωθούν οι υπόλοιπες ακολουθίες με κενά στο τέλος Αντιμετώπιση του προβλήματος με τις Ακολουθίες Διαφορετικού Μήκους Η state of the art προσέγγιση, που προσπαθεί να επιλύσει το πρόβλημα με το μεταβλητό μήκος των προτάσεων, βασίζεται σε μια τεχνική που ανέπτυξαν οι Kalchbrenner και Blunsom το 2013 [17]. Σύμφωνα με αυτή τη μέθοδο, το τέλος της πρότασης, είτε αυτή χρησιμοποιείται ως είσοδος είτε ως έξοδος, σηματοδοτείται με την εισαγωγή του χαρακτήρα <EOS> (end of sentence). Επιπλέον, η όλη διαδικασία κάνει χρήση δυο δικτύων, ενός για την κωδικοποίηση της εισόδου σε ένα διάνυσμα και ενός για την αποκωδικοποίηση αυτού του διανύσματος στην ακολουθία της εξόδου. Όπως φαίνεται γραφικά παρακάτω, το μοντέλο διαβάζει την ακολουθία εισόδου που αποτελείται από τις λέξεις ABC και παράγει στη συνέχεια την πρόταση WXYZ που 56

58 αποτελεί την έξοδο του δικτύου. Και στις δυο περιπτώσεις το κάθε δίκτυο σταματά να κάνει την εκπαίδευση ή την πρόβλεψη αντίστοιχα όταν συναντήσει τη λέξη <EOS>. Εικ. 19: Το μοντέλο χρήσης 2 δικτύων (κωδικοποιητή-αποκωδικοποιητή). Αναλυτικότερα, ο κωδικοποιητής διαβάζει την ακολουθία της εισόδου (πρόταση) λέξη προς λέξη μέχρι να φτάσει στο χαρακτήρα <EOS>. Έπειτα, δεδομένης αυτής της ακολουθίας (4.1) x = (x 1,..., x Tx ) υπολογίζει το μετασχηματισμό της h t (4.2) h t = f(x t, h t 1 ), όπου η f είναι μια μη γραμμική συνάρτηση ενεργοποίησης που υπολογίζει το επόμενο βήμα των κρυφών επιπέδων έχοντας ως είσοδο την προηγούμενή της κατάσταση και την λέξη της εισόδου. Από το τελευταίο κρυφό επίπεδο του κωδικοποιητή υπολογίζεται το διάνυσμα εξόδου c του πρώτου νευρωνικού δικτύου σύμφωνα με το οποίο θα γίνει η αποκωδικοποίηση. Το g στην παρακάτω σχέση είναι απλά ένας γραμμικός μετασχηματισμός του h Tx. (4.3) c = g(h Tx ). Ο αποκωδικοποιητής, έπειτα, παράγει με τη σειρά κάθε λέξη της ακολουθίας της εξόδου μέχρι να δημιουργηθεί το <EOS>. Οι λέξεις αυτές παράγονται με δεδομένα το διάνυσμα c της εξόδου του κωδικοποιητή, την προηγούμενη κατάσταση του κρυφού επιπέδου του αποκωδικοποιητή s t-1 και την προηγούμενη λέξη που εξήγαγε το δίκτυο y t-1, σύμφωνα με την επόμενη σχέση. (4.4) s t = f(y t 1, s t 1, c). Μετά τον υπολογισμό της κατάστασης του τελευταίου κρυφού επιπέδου, ο αποκωδικοποιητής υπολογίζει την κατανομή της πιθανότητας όλων των πιθανών λέξεων της εξόδου σύμφωνα με τον τύπο: (4.5) p(y t,j = 1 y t 1,, y 1, c) = exp (w j h {t} ), K exp (w j h {t} ) j =1 57

59 όπου y t,j είναι η μεταβλητή που δείχνει στον αύξοντα αριθμό της j λέξης του λεξιλογίου τη χρονική στιγμή t και σύμφωνα με αυτό τον τύπο μόνο μια μεταβλητή θα έχει τιμή (=1) κάθε στιγμή. Στην αμέσως επόμενη εικόνα φαίνεται γραφικά η λειτουργία αυτού του μοντέλου. Εικ. 20: Η λειτουργία του μοντέλου κωδικοποιητή-αποκωδικοποιητή Ανάλυση του Μοντέλου που χρησιμοποιήθηκε Παρά το γεγονός ότι τα RNN είναι πολύ ισχυρά μοντέλα που μπορούν να λειτουργήσουν σύμφωνα με τις αρχές και τις ιδιαιτερότητες που υπάρχουν στις εφαρμογές της μετάφρασης, θα ήταν εξαιρετικά δύσκολο και χρονοβόρο αλλά και υπολογιστικά ακριβό να εκπαιδευτούν σε τέτοιου είδους δεδομένα λόγω των πολλών μακρινών εξαρτήσεων που υπάρχουν σε αυτά (long term dependencies). Για το λόγο αυτό, στην υλοποίηση του δικτύου επιλέχθηκε ένα μοντέλο LSTM που είναι γνωστό ότι αποδίδει σαφώς καλύτερα σε προβλήματα με μακρινές χρονικές εξαρτήσεις [19], [20]. Το LSTM που χρησιμοποιήθηκε για αυτό το σκοπό μοιάζει αρκετά με αυτό που περιγράφηκε στην ενότητα 2.4.2, αλλά είναι αρκετά απλούστερο στην υλοποίηση, αφού περιέχει μόνο δυο πύλες (αυτές των reset και update) στα δομικά στοιχεία (κόμβους) των κρυφών επιπέδων, αντί για 4 που έχει το vanilla LSTM. Έτσι, για την ενεργοποίηση του κρυφού κόμβου j υπολογίζεται πρώτα το reset gate σύμφωνα με τον τύπο: (4.6) r j = σ ([W r x] j + [U r h (t 1) ] j ), όπου το σ σηματοδοτεί τη σιγμοειδή συνάρτηση ενεργοποίησης, το x την είσοδο και το h t- 1 την προηγούμενη κατάσταση του κρυφού επιπέδου. Οι πίνακες U r και W r είναι οι πίνακες των βαρών της εισόδου και των κρυφών επιπέδων αντίστοιχα. Σύμφωνα με αυτό τον τύπο, όταν 58

60 η τιμή της συνάρτησης είναι κοντά στο 0 ο εσωτερικός κόμβος δε λαμβάνει υπόψη την προηγούμενή του κατάσταση και επανενεργοποιείται (reset) με τη χρήση μόνο των στοιχείων της τωρινής εισόδου. Με τον τρόπο αυτό οι εσωτερικοί κόμβοι είναι σε θέση να απορρίψουν στο μέλλον τις πληροφορίες που δεν είναι σχετικές με τα τωρινά δείγματα της εκπαίδευσης, προσφέροντας ευελιξία στο δίκτυο. Με παρόμοιο τρόπο υπολογίζεται και το update gate, που ελέγχει το ποσό της πληροφορίας του προηγούμενου κόμβου που θα περάσει στον επόμενο από τον τύπο: (4.7) z j = σ ([W z x] j + [U z h (t 1) ] j ). Τέλος, η ενεργοποίηση του κόμβου j τη χρονική στιγμή t υπολογίζεται από τον τύπο: (t) (t 1) (t) (4.8) h j = zj h j + (1 zj )h j, όπου, (4.9) h j (t) = φ ([Wx] j + [U(r h (t 1) )] j ), με το σύμβολο να δηλώνει τον πολλαπλασιασμό των στοιχείων που βρίσκονται στις αντίστοιχες θέσεις των διανυσμάτων και το φ την υπερβολική εφαπτομένη (tanh). Με την ύπαρξη reset και update πυλών στους κόμβους του δικτύου γίνεται δυνατή η συντήρηση της πληροφορίας που αφορά τις χρονικές εξαρτήσεις των δειγμάτων. Έτσι, οι κόμβοι που συγκρατούν τις εξαρτήσεις κοντινού χρόνου θα έχουν reset gate που θα ενεργοποιείται αρκετά συχνά κατά την εκπαίδευση, ενώ οι κόμβοι με τις μακρινές εξαρτήσεις θα έχουν συνεχή ενημέρωση των update gates. Μια, ακόμη, εμπειρική τεχνική που χρησιμοποιήθηκε κατά το training είναι η αντιστροφή των προτάσεων εισόδου του μοντέλου. Αυτή η μέθοδος, που περιγράφεται από τους Ilya Sutskever, Oriol Vinyals και Quoc V. Le [18], βοηθά σημαντικά στο training και στην απόδοσή του για το λόγο ότι εισάγει πολλές εξαρτήσεις κοντινού χρόνου στο σύνολο δεδομένων της εκπαίδευσης. Με τον τρόπο αυτό, οι πρώτες λέξεις των προτάσεων, που περιέχουν συνήθως και το μεγαλύτερο μέρος του νοήματός τους, βρίσκονται στο τέλος της ακολουθίας εισόδου και άρα πιο κοντά στην παραγόμενη ακολουθία εξόδου, χωρίς να δυσχεραίνουν κάπως τη διαδικασία εκμάθησης. Έτσι, δημιουργείται μια μορφή επικοινωνίας μεταξύ των ακολουθιών εισόδου και εξόδου. 59

61 4.4 Perplexity Όσον αφορά την αξιολόγηση της απόδοσης ενός μοντέλου φυσικής γλώσσας, μια πολύ συνηθισμένη μέθοδος είναι αυτή του perplexity [21]. Σε ένα σύνολο από m ακολουθίες δεδομένων s 1,..., s m, που αποτελούνται από ακολουθίες λέξεων x 1,..., x m, μπορούμε να μετρήσουμε την πιθανότητα p(s i ) της κάθε πρότασης s i. Ένα μέτρο της απόδοσης του μοντέλου που αξιολογείται θα μπορούσε να είναι η πιθανότητα που δίνεται σε ολόκληρο το σύνολο δεδομένων m (4.10) i=1 p(s i ), με το μεγαλύτερο γινόμενο των πιθανοτήτων να εκφράζει και το καλύτερο μοντέλο. Όταν το μοντέλο αποτελείται από M αριθμό λέξεων, τότε η μέση λογαριθμική πιθανότητα του μοντέλου εκφράζεται με το γινόμενο των πιθανοτήτων όλων των λέξεων του λεξιλογίου διαιρεμένο με το πλήθος τους. (4.11) 1 m log M 2 i=1 p(s i ) = 1 m log M i=1 2 p(s i ) = l. Συνεπώς και εδώ όσο μεγαλύτερη είναι η μέση πιθανότητα τόσο καλύτερο είναι και το μοντέλο που εξετάζεται. Το perplexity ορίζεται ως η αρνητική δύναμη του 2 στη μέση λογαριθμική πιθανότητα του μοντέλου, όπως φαίνεται από την παρακάτω σχέση, με το l να υποδηλώνει το δεύτερο μέρος της εξίσωσης (3.24). (4.12) Perplexity = 2 l Από τα παραπάνω συμπεραίνεται ότι όσο μικρότερη τιμή έχει το perplexity, τόσο καλύτερο είναι το μοντέλο της φυσικής γλώσσας που μοντελοποιείται. 60

62 5. Πειράματα και Αποτελέσματα 5.1 Εισαγωγή Σε αυτό το κεφάλαιο θα γίνει η περιγραφή των τελικών πειραμάτων που πραγματοποιήθηκαν για την αυτόματη παραγωγή hashtag από tweet του Twitter και η παρουσίαση των αποτελεσμάτων τους σε ένα δοκιμαστικό σύνολο δεδομένων. Στα πειράματα αυτά χρησιμοποιούνται μέθοδοι και παράγοντες που παίζουν ρόλο στην εκμάθηση του δικτύου, οι οποίοι έχουν περιγραφεί στα προηγούμενα κεφάλαια και είναι βελτιστοποιημένοι ως προς την καλύτερη απόδοση και συμπεριφορά αυτού. Για το σκοπό αυτό, δηλαδή για τον καταλληλότερο προσδιορισμό των μεταβλητών που έχουν ενεργό ρόλο στο training, έχουν προηγηθεί αρκετές προηγούμενες προσπάθειες εύρεσης των καταλληλότερων τιμών. 5.2 Πληροφορίες του Συνόλου Δεδομένων Το σύνολο δεδομένων που χρησιμοποιήθηκε για την εκπαίδευση του δικτύου και για τη διεξαγωγή των πειραμάτων που θα περιγραφούν παρακάτω, είναι αυτό της Ενότητας με τα ζεύγη από tweet με τα hashtag που αντιστοιχούν σε αυτά. Από το σύνολό τους, περίπου το 95% χρησιμοποιήθηκε ως σύνολο εκπαίδευσης και το υπόλοιπο περίπου 5% ως test set (90%-5%-5% για training, evaluation και test set στο 2 ο πείραμα). Στο σύνολο εκπαίδευσης αντιστοιχούν tweet με hashtag, ενώ στο test set Έπειτα από το καθάρισμα που έγινε πριν την εκπαίδευση, διαγράφοντας tweet που περιείχαν λιγότερες από 4 λέξεις στο περιεχόμενό τους ή περισσότερες από 40, ο τελικός αριθμός ζευγών tweet και hashtag που απέμεινε για την εκπαίδευση και τον έλεγχο στο τέλος είναι και αντίστοιχα. Το σύνολο δεδομένων της εκπαίδευσης περιέχει, τελικά, tweet με λέξεις με το λεξιλόγιο, που αποτελείται από τις μοναδικές εγγραφές αυτών, να είναι μεγέθους λέξεων και hashtag με λεξιλόγιο Ο μέσος όρος λέξεων που υπάρχει σε κάθε tweet είναι 12,49 και για τα hashtag 1,58. Για πλήθος του λεξιλογίου των tweet επιλέχθηκαν οι πιο συχνά εμφανιζόμενες λέξεις, αριθμός που αντιστοιχεί χονδρικά σε όσες λέξεις εμφανίζονται τουλάχιστον 2 φορές στο σύνολο δεδομένων και για τα hashtag τα πιο διαδεδομένα από αυτά, που αντιστοιχούν σε όσα εμφανίζονται τουλάχιστον 3 φορές. 61

63 Αξίζει να σημειωθεί ότι, όσον αφορά τα hashtag κυρίως, αλλά και τα περιεχόμενα των tweet, όσα αναγράφονται σε αυτά ποικίλουν και ανάλογα με την κάθε περίοδο υπάρχουν διαφορετικές τάσεις και θέματα που απασχολούν τους χρήστες και γράφουν για αυτά. Με αυτό τον τρόπο δημιουργούνται τα trends του Twitter που αποτελούνται κάθε στιγμή από τα πιο δημοφιλή hashtag εκείνης της περιόδου που εξετάζεται, είτε είναι μια ώρα, μέρα, εβδομάδα, μήνας κ.τ.λ.. Στον παρακάτω πίνακα γίνονται εμφανή, στην πρώτη στήλη, τα 20 κορυφαία worldwide trends που υπήρχαν στο Twitter για την περίοδο Οκτωβρίου 2016, μαζί με τον αριθμό εμφάνισής τους στο σύνολο δεδομένων. Στην επόμενη στήλη ακολουθούν οι πιο διαδεδομένες λέξεις που περιέχονται στα tweet των χρηστών και στην τελευταία οι πιο δημοφιλείς λέξεις αυτών, χωρίς να συμπεριλαμβάνονται οι πιο συνηθισμένες λέξεις της αγγλικής γλώσσας (it, the, his, should, ). Αύξων Αριθμός Hashtag Αριθμός Εμφάνισης Λέξεις στα Tweet Αριθμός Εμφάνισης Λέξεις στα Tweet (χωρίς άρθρα κτλ) Αριθμός εμφάνισης 1 #QUOTES 9563 a great #JOB 8928 to day #DEBATE 8094 the time #TRUMP 7852 of love #DEBATENIGHT 7186 is need #SOUNDCLOUD 6893 in today #NEWS 6080 for game #NOWPLAYING 6072 and trump #MAGA 4378 i man #HIRING 4101 you win #JOBS 3933 on people #MPN 3849 with life #WIN 3823 it take #QUOTE 3347 this want #FREE 3227 be girl #MUSIC 3062 that video #BUSINESS 2903 have free #BBOTT 2796 at year #IMWITHHER 2736 my think #CUBS 2694 area never Πίνακας συχνότερης εμφάνισης λέξεων στο σύνολο δεδομένων. 62

64 5.3 Πληροφορίες για την Εκπαίδευση του Δικτύου Η βασική ιδέα των πειραμάτων περιλαμβάνει την υλοποίηση ενός μεγάλου LSTM δικτύου για την εκπαίδευση πάνω σε πολλά ζεύγη tweet και hashtag. Ο στόχος της εκπαίδευσης είναι η μεγιστοποίηση της λογαριθμικής πιθανότητας της σωστής παραγωγής hashtag T δεδομένου του tweet της εισόδου S, σύμφωνα με την παρακάτω σχέση: (5.1) 1/ S log p(t S) (T,S) S Όπου S είναι το σύνολο των δεδομένων. Με το τέλος της εκπαίδευσης, παράγονται hashtag κάνοντας εύρεση των πιο κατάλληλων από αυτά με τη χρήση του LSTM: (5.2) T = argmax T p(t S) Η αναζήτηση των καταλληλότερων hashtag πραγματοποιείται με τη χρήση ενός αποκωδικοποιητή δέσμης (beam decoder), ο οποίος συγκρατεί ένα μικρό αριθμό από B μερικές λύσεις του προβλήματος, όπου οι λύσεις αυτές αποτελούν το πρόθεμα κάποιας παραγωγής από hashtag. Σε κάθε βήμα γίνεται επέκταση αυτών των λύσεων με κάθε πιθανό hashtag που υπάρχει στο λεξιλόγιο. Από αυτά συγκρατούνται τα B καλύτερα σύμφωνα με τη λογαριθμική πιθανότητα του μοντέλου μέχρι την παραγωγή του συμβόλου <EOS>. Αφού προσαρτηθεί και αυτό το σύμβολο σε κάποια υπόθεση, αυτή με τη σειρά της αφαιρείται από τη δέσμη και προστίθεται στο σύνολο των ολοκληρωμένων υποθέσεων, πλήθους Β, με τη μεγαλύτερη λογαριθμική πιθανότητα να αποτελεί τη λύση (τελική απάντηση) του δικτύου. Ως δίκτυο εκπαίδευσης για το συγκεκριμένο πρόβλημα επιλέχθηκε το LSTM που περιγράφηκε στην Ενότητα με 4 επίπεδα των 768 κόμβων, αφότου διαπιστώθηκε ότι τα deep LSTM (αυτά με πάνω απο 3 κρυφά επίπεδα) αποδίδουν σημαντικά καλύτερα από τα μικρότερα σε τέτοιου είδους προβλήματα με μεγάλα σύνολα δεδομένων, έχοντας μεγαλύτερο αριθμό παραμέτρων. Το σύνολο δεδομένων είναι αυτό που αναφέρθηκε στην προηγούμενη Ενότητα 5.2 με το λεξιλόγιο των λέξεων για τα tweet και hashtag αντίστοιχα. Για κάθε έξοδο χρησιμοποιήθηκε η τεχνική του naïve softmax για κάθε ένα από τα hashtag. Οι προτάσεις των tweet εισέρχονται στο δίκτυο με αντεστραμμένη τη φορά των λέξεων για τους λόγους που αναφέρθηκαν στην Ενότητα Οι υπόλοιπες παράμετροι εκπαίδευσης του δικτύου είναι: Η αρχικοποίηση όλων των παραμέτρων του LSTM με μια ομοιόμορφη κατανομή από 0,08 εώς -0,08. Η εκπαίδευση των δεδομένων σε βάθος χρόνου 20 εποχών (epochs) με τη χρήση του stochastic gradient descent (SGD) με σταθερό ρυθμό εκμάθησης 0,7, ο οποίος μειώνεται στο μισό μετά από κάθε epoch από το 15 ο epoch και μετά. Η εκπαίδευση των δειγμάτων σε δέσμες των 128 ζευγών (batches) tweet-hashtag και έπειτα διαίρεση της κλίσης (gradient) με αυτό τον αριθμό (128). 63

65 Παρότι τα LSTM δεν υποφέρουν από το πρόβλημα της υπερβολικής μείωσης των κλίσεων (gradient) κατά την εκπαίδευση, μπορούν να έχουν το αντίστροφο πρόβλημα, δηλαδή την υπερβολική αύξηση αυτών. Για το λόγο αυτό εισήχθη ο περιορισμός που πετυχαίνει την κλιμάκωση της κλίσης, όταν αυτή ξεπερνά ένα ανώτατο όριο που έχει τεθεί. Με αυτή την τεχνική, για κάθε batch που εκπαιδεύεται υπολογίζεται το s = g 2, όπου το g είναι η τιμή της κλίσης διαιρεμένη με το 128. Αν αυτό ξεπερνά την τιμή 5 (s>5), θέτουμε g=5g/s. Με τη χρήση των παραπάνω παραμέτρων πραγματοποιήθηκαν δυο πειράματα, που παρήγαγαν δυο ξεχωριστά μοντέλα για την παραγωγή hashtag από tweet. Η μόνη διαφορά αυτών των δυο είναι η εκπαίδευση με την ύπαρξη ενός συνόλου επικύρωσης στο δεύτερο, που αντιστοιχεί στο 5% των δεδομένων (ίσο με το σύνολο των δειγμάτων ελέγχου). Ο λόγος για τον οποίο αναπτύχθηκε και ένα μοντέλο χωρίς τη χρήση αυτού είναι για να υπάρχει μεγαλύτερη ελευθερία στην επιλογή των παραγόμενων hashtag από το δίκτυο και να μην τιμωρείται η υλοποίηση που δεν πετυχαίνει την ακριβή αντιστοίχιση αυτών με τα πρωτότυπα hashtag. 5.4 Εφαρμογή των Μοντέλων Ο όγκος του συνόλου δεδομένων και των παραμέτρων καθιστά αυτόματα ανίκανη την εκπαίδευση των παρόντων μοντέλων στη CPU. Για το λόγο αυτό επιλέχθηκε η υλοποίηση του Zoph_RNN 1 από το github που κάνει παραλληλοποίηση και χρήση της GPU (μιας ή περισσότερων) και επιλέον επιτρέπει την άμεση εφαρμογή των παραμέτρων της προηγούμενης ενότητας κατά την εκπαίδευση. Ακόμη, όμως και με την εφαρμογή αυτής της υλοποίησης, οι απαιτήσεις των δικτύων από άποψη μνήμης ήταν τόσο μεγάλες που δεν μπορούσαν να εφαρμοστούν στον προσωπικό μου υπολογιστή με την NVIDIA Gtx 660 κάρτα γραφικών των 2 GB. Για την εύρεση ενός κατάλληλου συστήματος, ικανού για την εκπαίδευση του μοντέλου, παραχωρήθηκε από τον επιβλέποντα καθηγητή μου είσοδος σε ένα ισχυρότερο σύστημα του αμερικάνικου πανεπιστημίου του Duke 2 με 2 κάρτες γραφικών NVIDIA Tesla K20c των MB μνήμης η καθεμία. Το τελικά πειράματα που εφαρμόστηκαν σε αυτό το σύστημα απαιτούσαν περίπου 4 GB μνήμης, με τα 1,6 GB να είναι αφιερωμένα στην εφαρμογή του softmax και τα υπόλοιπα 2,4 GB στις παραμέτρους των τεσσάρων κρυφών επιπέδων. Η συνολική διάρκεια της εκπαίδευσης, για το κάθε πείραμα, ήταν σχεδόν μια ημέρα (23 ώρες) με μέσο ρυθμό επεξεργασίας λέξεων το δευτερόλεπτο και μέγεθος minibatch

66 5.5 Αποτελέσματα της Εκπαίδευσης Για την αξιολόγηση της απόδοσης των δικτύων που εκπαιδεύτηκαν χρησιμοποιήθηκε η τεχνική του perplexity (Ενότητα 4.4). Μετά το τέλος του training η τιμή αυτής για το πρώτο πείραμα ήταν στο 4,66, τιμή πολύ κοντά στην καλύτερη (4.59) που επετεύχθη στο epoch 18. Το δεύτερο πείραμα τελείωσε με perplexity 24,58. Για την έκδοση των αποτελεσμάτων της εκπαίδευσης που πραγματοποιήθηκε χρησιμοποιήθηκε το test set των δειγμάτων, στο οποίο εφαρμόστηκε η μέθοδος αποκωδικοποίησης με μέγεθος δέσμης (beam) 12. Από αυτά τα tweet παρήχθησαν τα καλύτερα hashtag σύμφωνα με τα μοντέλα που εκπαιδεύτηκαν και αυτά με τη μεγαλύτερη τιμή της λογαριθμικής τους πιθανότητας έγιναν οι τελικές έξοδοι του κάθε δικτύου. Από το σύνολο του test set, χωρίς να υπολογίζονται τα tweet τα οποία περιείχαν hashtag που δεν βρίσκονταν στο λεξιλόγιο, η πρώτη υλοποίηση ήταν σε θέση να παράγει hashtag για περίπου το 66% αυτών (παρήχθησαν hashtag για από τα δείγματα του συνόλου), ενώ για τη δεύτερη ο αριθμός αυτός ήταν πολύ μικρότερος, περίπου 40% ( από τα ). Παρακάτω παρατίθεται ένας πίνακας που περιέχει μερικά ενδιαφέροντα συγκριτικά αποτελέσματα που παρήγαγαν τα εκπαιδευμένα δίκτυα των δυο πειραμάτων στο δοθέν test set. Τα περιεχόμενα του πίνακα αποτελούνται από το αρχικό tweet, τα hashtag που παρήγαγε το πρώτο δίκτυο, τα hashtag που παρήγαγε το δεύτερο δίκτυο και τα hashtag που αντιστοιχούσαν κανονικά στο tweet όπως δημοσιεύτηκε αρχικά στο Twitter. 1. Αρχικό tweet on bdj pure 80's johnny hates jazz i don't want to be a hero Παραγόμενα hashtag 1 #NOWPLAYING #80S #RADIO #80SRADIO #DANCE Παραγόμενα hashtag 2 #NOWPLAYING #80S #RADIO #80SRADIO Αρχικά hashtag #NOWPLAYING #80S #RADIO #80SRADIO #DANCE 2. Αρχικό tweet eur/pln touched a yesterday high at (11 11 gmt) Παραγόμενα hashtag 1 #FOREX #FX #FINANCE Παραγόμενα hashtag 2 #FOREX #FX #FINANCE Αρχικά hashtag #FOREX #FX #FINANCE #EURPLN 3. Αρχικό tweet only a small group of students protesting at the union buildings Παραγόμενα hashtag 1 #FEESMUSTFALL Παραγόμενα hashtag 2 -- Αρχικά hashtag #FEESMARCH 4. Αρχικό tweet i crushed a 2 2 mi run with a pace of 7'32 with nike+ sportwatch gps Παραγόμενα hashtag 1 #NIKEPLUS #MAKEITCOUNT Παραγόμενα hashtag 2 #NIKEPLUS Αρχικά hashtag #NIKEPLUS 5. Αρχικό tweet me i'm chewbacca a senior malemix Παραγόμενα hashtag 1 #ADOPT #POODLE #NKLA #DOGS #LOVE 65

67 Παραγόμενα hashtag 2 Αρχικά hashtag 6. Αρχικό tweet #ADOPT #CHIHUAHUA #NKLA #DOGS #LOVE #FOSTER #COCKERSPANIEL #PEKINGESE #NKLA #DOGS #LOVE walcott hails ozil aggression theo walcott believes mesut ozil has adopted a more aggressive style of Παραγόμενα hashtag 1 #BPL #ARSENAL Παραγόμενα hashtag 2 #CFC Αρχικά hashtag #SSN 7. Αρχικό tweet what's that you say a freeze warning perfect let's keep the thermostat set to cool Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 Αρχικά hashtag 8. Αρχικό tweet Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 Αρχικά hashtag 9. Αρχικό tweet Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 Αρχικά hashtag 10. Αρχικό tweet Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 Αρχικά hashtag 11. Αρχικό tweet Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 Αρχικά hashtag 12. Αρχικό tweet Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 Αρχικά hashtag 13. Αρχικό tweet Παραγόμενα hashtag 1 Παραγόμενα hashtag 2 #BUDGET2017 #MODERNDAYCURSES #NEWSPROBLEMS #AMNEWSER here is an average human loses about 200 head hairs per day #FACT #BOTTER #FACT #BOTTER #FACT #DEVELOPING hillary leaked a national secret it is highly classified about how long it takes to launch a nuclear weapon #WIKILEAKS #MAGA #DEBATENIGHT #THURSDAYTHOUGHTS i won a game by 109 point at las vegas stage 3 game win streak #BOWLING_KING #BOWLING_KING #BOWLING_KING be that person today that makes people smile in a genuine way #WORLDMENTALHEALTHDAY #WORLDMENTALHEALTHDAY #WORLDMENTALHEALTHDAY inter vs southampton over 3 5 tarjetas amarillas a 1 66 en #PRONOSTICOS #BET365 #PRONOSTICOS #BET365 #PRONOSTICOS #BET365 skipper heaton gets some training with a twist alongside super bowl winner it was training with a #SPORTS #NEWS #CFC 66

68 Αρχικά hashtag #SUPERBOWL 14. Αρχικό tweet montpelier vermont is the only state capital without a mcdonalds Παραγόμενα hashtag 1 #DIDYOUKNOW #FACT #INTERESTING #RANDOM Παραγόμενα hashtag 2 -- Αρχικά hashtag #FACT 15. Αρχικό tweet a good destiny is when two people find each other without even looking Παραγόμενα hashtag 1 #TRUEACHIEVEMENT Παραγόμενα hashtag 2 -- Αρχικά hashtag #ALDUBBRIDALSHOWER 16. Αρχικό tweet what old game should be remade with 2016 graphics Παραγόμενα hashtag 1 #Q #REDDIT #ASKREDDIT #QUESTIONS Παραγόμενα hashtag 2 -- Αρχικά hashtag #Q #REDDIT #ASKREDDIT #QUESTIONS 17. Αρχικό tweet remove items from a list while iterating in python Παραγόμενα hashtag 1 #PYTHON #TECH #INTERNET #QUESTION #HOWTO Παραγόμενα hashtag 2 #PYTHON #TECH #INTERNET #QUESTION #HOWTO Αρχικά hashtag #PYTHON #ITERATION 18. Αρχικό tweet great i've played paradise island 2 for 214 days in a row Παραγόμενα hashtag 1 #PARADISEISLAND2 #GAMEINSIGHT Παραγόμενα hashtag 2 #PARADISEISLAND2 #GAMEINSIGHT Αρχικά hashtag #GAMEINSIGHT #PARADISEISLAND2 19. Αρχικό tweet a cdl regional truck driver mcfarland truck lines (la vista ne) stay in the midwest Παραγόμενα hashtag 1 #JOB #DETROIT Παραγόμενα hashtag 2 #JOB #LANSING Αρχικά hashtag #JOB #NEBRASKA 20. Αρχικό tweet won the debate and i will vote for her come election day your boss is a lying sob no respect 4 you Παραγόμενα hashtag 1 #NEVERTRUMP #IMWITHHER Παραγόμενα hashtag 2 -- Αρχικά hashtag #HILLARYCLINTON 21. Αρχικό tweet how a reputation is built Παραγόμενα hashtag 1 -- Παραγόμενα hashtag 2 #THINGSNOTTAUGHTATSCHOOL Αρχικά hashtag #PRIICONF16 2. Πίνακας χαρακτηριστικών αποτελεσμάτων της εκπαίδευσης του δικτύου. 67

69 Σε αυτό το σημείο θα γίνει ποιοτική ανάλυση των χαρακτηριστικών αποτελεσμάτων του πίνακα, καθώς και η ερμηνεία αυτών. Σύμφωνα με τον παραπάνω πίνακα και σχετικά με το πρώτο πείραμα και τα παραγόμενα hashtag παρατηρούμε ότι: Πολλά από τα παραγόμενα hashtag του δικτύου είναι ακριβώς ίδια με τα αυθεντικά hashtag που υπήρχαν στα tweet (παραδείγματα 1, 10, 11, 12, 16).. Κάποια από αυτά είναι τα ίδια αλλά με διαφορετική σειρά εμφάνισης (παράδειγμα 18). Υπάρχουν κάποια παραδείγματα όπου τα παραγόμενα hashtag είναι παραπλήσιας σημασίας με τα αρχικά, όπως το 3, το 8 και το 19. Το 19 αναφέρεται σε μια mid-west πολιτεία της Αμερικής και η διαφορά του δικτύου με το αρχικό είναι στην επιλογή αυτής της πολιτείας (Nebraska ή Detroit), που και οι δυο βρίσκονται προς τα δυτικά. Σε μερικά tweet το δίκτυο παράγει τα ίδια μεν αλλά λιγότερα ή περισσότερα hashtag από τα αρχικά (παραδείγματα 2, 4, 5, 14). Σε ορισμένα δίνει μια πιο γενική απάντηση από ότι τα αρχικά hashtag (παραδείγματα 13, 17). Υπάρχουν tweet, τα οποία λαμβάνουν ένα πιο συγκεκριμένο hashtag σύμφωνα με το νόημά τους από αυτό που είχαν αρχικά, όπως τα παραδείγματα 6, 9, 15 και 20. Το δίκτυο είναι σε θέση να αναγνωρίσει την διαφορετική γλώσσα του παραδείγματος 12 και το περιεχόμενό του, παράγοντας τα σωστά hashtag, όπως κάνει και το δίκτυο του δεύτερου πειράματος. Τα αποτελέσματα του δεύτερου πειράματος είναι αρκετά εμφανές ότι μοιάζουν σε μεγάλο βαθμό με αυτά του πρώτου. Παρακάτω γίνονται κάποιες παρατηρήσεις σχετικά με το δεύτερο πείραμα σε σύγκριση με το πρώτο και τα αρχικά hashtag που είχαν τα tweet: Τα περισσότερα παραγόμενα hashtag συμπίπτουν ακριβώς με αυτά του πρώτου πειράματος (παραδείγματα 2, 8, 10, 11, 12, 17, 18). Υπάρχουν αρκετές περιπτώσεις που το μοντέλο του δεύτερου πειράματος δεν παράγει κάποιο hashtag για το δοθέν tweet, ενώ το μοντέλο του πρώτου παράγει (παραδείγματα 3, 14-16, 20). Γίνονται πιο ασφαλείς προβλέψεις σε σχέση με το πρώτο μοντέλο, παράγοντας σε πολλά ναι μεν τα ίδια, αλλά λιγότερα σε πλήθος hashtag (όπως στα παραδείγματα 1 και 4). Τα hashtag που παράγονται είναι πολλές φορές πιο γενικά από αυτά που παράγονται στο πρώτο μοντέλο (παραδείγματα 7 και 19). Υπάρχουν λίγες περιπτώσεις όπου παράγονται hashtag σε tweet, τα οποία δεν παράγει το μοντέλο του πρώτου πειράματος, όπως στο παράδειγμα

70 5.6 Σχολιασμός των Αποτελεσμάτων Από τον σχολιασμό των αποτελεσμάτων μέσω των παραδειγμάτων που παρουσιάστηκαν εξάγονται κάποια χρήσιμα συμπεράσματα σχετικά με τον τρόπο λειτουργίας των δυο δικτύων που υλοποιήθηκαν. Δεν αποτελούν, όμως, απόδειξη της ακρίβειας των πειραμάτων σε σχέση με τα αρχικά hashtag που είχαν τα tweet όταν δημοσιεύτηκαν. Η φύση του προβλήματος είναι τέτοια ώστε δυσχεραίνει σε μεγάλο βαθμό την προσπάθεια της αξιολόγησης των αποτελεσμάτων αυτού, για το λόγο ότι υπάρχει ένας μεγάλος αριθμός από hashtag που θα μπορούσε να αντιστοιχεί σε κάθε tweet και ο έλεγχος μόνο με τα αρχικά hashtag που είχε το καθένα από αυτά αδικεί τα μοντέλα που αναπτύχθηκαν. Το βασικό μέλημα, λοιπόν, της διαδικασίας της αξιολόγησης των αποτελεσμάτων θα πρέπει να είναι η αναγνώριση του νοήματος κάθε tweet και αν τα hashtag που παρήχθησαν σχετίζονται ή όχι με το νόημα αυτού. Σε αυτή την ενότητα γίνεται προσπάθεια αξιολόγησης και σύγκρισης των δυο πειραμάτων μέσω δυο διαφορετικών μεθόδων που περιγράφονται στη συνέχεια. 1 η Μέθοδος Αξιολόγησης Για την αξιολόγηση της ακρίβειας των αποτελεσμάτων σε σχέση με τον εντοπισμό του νοήματος των tweet πρέπει να γίνει, αρχικά, μια ομαδοποίηση του συνόλου των hashtag που περιέχονται στο λεξιλόγιο σχετικά με το νόημα αυτών. Σαν πρώτη προσέγγιση εφαρμόστηκε η μέθοδος του Lexical Vectors 3 (LexVec) [22], [23], η οποία πετυχαίνει την αναπαράσταση των λέξεων ενός κειμένου σε διανύσματα πολλών διαστάσεων, λαμβάνοντας υπόψη τη σχετική θέση τους στο κείμενο πάνω στο οποίο γίνεται η εκπαίδευση. Τα διανύσματα που παράγονται, κατατάσσουν τις λέξεις στο χώρο, υπολογίζοντας ένα πίνακα που περιέχει τον αριθμό εμφάνισής τους σε σχέση με τις λέξεις που συνορεύουν πριν και μετά από αυτές στο κείμενο, με αποτέλεσμα οι λέξεις (hashtag) που εμφανίζονται από κοινού στα tweet να τοποθετούνται σε γειτονικά σημεία και οι λέξεις που δεν σχετίζονται μεταξύ τους (δεν εντοπίζονται από κοινού στα tweet) να είναι πιο απομακρυσμένες. Ο αριθμός των διαστάσεων που επιλέχθηκε για να ταιριάζει καλύτερα στο λεξιλόγιο των hashtag καθορίστηκε, μετά από δοκιμές, στις 300. Για την απεικόνιση αυτών σε διαγράμματα και την μετέπειτα κατάταξή τους σε ομάδες, χρησιμοποιήθηκε ένας αλγόριθμος t- sne 4 [24], που ανέλαβε τη μείωση των διαστάσεων από 300 σε 2. Στις εικόνες που ακολουθούν φαίνεται η αναπαράσταση των hashtag σε δυο διαστάσεις, καθώς και μεγεθυμένες υποπεριοχές της πρώτης εικόνας που απαρτίζονται από hashtag με συγγενές νόημα. Για την ευκολία ανάγνωσης χρησιμοποιήθηκαν μόνο τα 1000 πιο δημοφιλή hashtag του λεξιλογίου

71 Εικ. 21: Συνολική απεικόνιση των hashtag σε 2 διαστάσεις. Εικ. 22: Απεικόνιση υποπεριοχών που σχετίζονται με i) ενημέρωση και δραστηριότητες ελεύθερου χρόνου, ii) τις αμερικάνικες εκλογές. 70

Το Πολυεπίπεδο 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 Μία

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

Το μοντέλο 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 Βιολογικός Νευρώνας Δενδρίτες, που αποτελούν τις γραμμές εισόδου των ερεθισμάτων (βιολογικών σημάτων) Σώμα, στο οποίο γίνεται η συσσώρευση των ερεθισμάτων και

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών

Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών 7. Εισαγωγή (ορισμός προβλήματος, αριθμητική ολοκλήρωση ΣΔΕ, αντικατάσταση ΣΔΕ τάξης n με n εξισώσεις ης τάξης) 7. Μέθοδος Euler 7.3

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

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

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

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

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

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

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

Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών

Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών. Εισαγωγή (ορισμός προβλήματος, αριθμητική ολοκλήρωση ΣΔΕ, αντικατάσταση ΣΔΕ τάξης n με n εξισώσεις ης τάξης). Μέθοδος Euler 3. Μέθοδοι

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

Φίλτρα Kalman. Αναλυτικές μέθοδοι στη Γεωπληροφορική. ιατύπωση του βασικού προβλήματος. προβλήματος. μοντέλο. Πρωτεύων μοντέλο

Φίλτρα Kalman. Αναλυτικές μέθοδοι στη Γεωπληροφορική. ιατύπωση του βασικού προβλήματος. προβλήματος. μοντέλο. Πρωτεύων μοντέλο Φίλτρα Kalman Εξαγωγή των εξισώσεων τους με βάση το κριτήριο ελαχιστοποίησης της Μεθόδου των Ελαχίστων Τετραγώνων. Αναλυτικές Μέθοδοι στη Γεωπληροφορική Μεταπτυχιακό Πρόγραμμα ΓΕΩΠΛΗΡΟΦΟΡΙΚΗ ιατύπωση του

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

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

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

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

ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ

ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ 1 ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ Σε αυτό το μέρος της πτυχιακής θα ασχοληθούμε λεπτομερώς με το φίλτρο kalman και θα δούμε μια καινούρια έκδοση του φίλτρου πάνω στην εφαρμογή της γραμμικής εκτίμησης διακριτού

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

E[ (x- ) ]= trace[(x-x)(x- ) ]

E[ (x- ) ]= trace[(x-x)(x- ) ] 1 ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ Σε αυτό το μέρος της πτυχιακής θα ασχοληθούμε λεπτομερώς με το φίλτρο kalman και θα δούμε μια καινούρια έκδοση του φίλτρου πάνω στην εφαρμογή της γραμμικής εκτίμησης διακριτού

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

Υπολογιστική Νοημοσύνη. Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks

Υπολογιστική Νοημοσύνη. Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks Υπολογιστική Νοημοσύνη Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks Γενικά Ένα νευρωνικό δίκτυο λέγεται αναδρομικό, εάν υπάρχει έστω και μια σύνδεση από έναν νευρώνα επιπέδου i προς έναν νευρώνα επιπέδου

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

ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΜΑΘΗΣΗ ΔΙΚΤΥA LVQ και SOM. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΜΑΘΗΣΗ ΔΙΚΤΥA LVQ και SOM. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΜΑΘΗΣΗ ΔΙΚΤΥA LVQ και SOM Μάθηση χωρίς επίβλεψη (unsupervised learning) Σύνολο εκπαίδευσης D={(x n )}, n=1,,n. x n =(x n1,, x nd ) T, δεν υπάρχουν τιμές-στόχοι t n. Προβλήματα μάθησης χωρίς

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

ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση

ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση ΚΕΦΑΛΑΙΟ 18 18 Μηχανική Μάθηση Ένα φυσικό ή τεχνητό σύστηµα επεξεργασίας πληροφορίας συµπεριλαµβανοµένων εκείνων µε δυνατότητες αντίληψης, µάθησης, συλλογισµού, λήψης απόφασης, επικοινωνίας και δράσης

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

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

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

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

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης.

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης. Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης. Ένα από τα γνωστότερα παραδείγματα των ΕΑ είναι ο Γενετικός

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

Εισαγωγή στα Προσαρµοστικά Συστήµατα

Εισαγωγή στα Προσαρµοστικά Συστήµατα ΒΕΣ 06 Προσαρµοστικά Συστήµατα στις Τηλεπικοινωνίες Εισαγωγή στα Προσαρµοστικά Συστήµατα Νικόλας Τσαπατσούλης Επίκουρος Καθηγητής Π..407/80 Τµήµα Επιστήµη και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου

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

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

Ακαδηµαϊκό Έτος , Εαρινό Εξάµηνο ιδάσκων Καθ.: Νίκος Τσαπατσούλης ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ, ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΒΕΣ 6: ΠΡΟΣΑΡΜΟΣΤΙΚΑ ΣΥΣΤΗΜΑΤΑ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΕΣ Ακαδηµαϊκό Έτος 26 27, Εαρινό Εξάµηνο Καθ.: Νίκος Τσαπατσούλης ΕΡΩΤΗΣΕΙΣ ΓΙΑ ΕΠΑΝΑΛΗΨΗ Το

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

Παρουσίαση 2 η : Αρχές εκτίμησης παραμέτρων Μέρος 1 ο

Παρουσίαση 2 η : Αρχές εκτίμησης παραμέτρων Μέρος 1 ο Εφαρμογές Ανάλυσης Σήματος στη Γεωδαισία Παρουσίαση η : Αρχές εκτίμησης παραμέτρων Μέρος ο Βασίλειος Δ. Ανδριτσάνος Αναπληρωτής Καθηγητής Γεώργιος Χλούπης Επίκουρος Καθηγητής Τμήμα Μηχανικών Τοπογραφίας

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

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

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

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

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

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

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

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

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

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

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

Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΜΥ 795: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ Ακαδημαϊκό έτος 2010-11 Χειμερινό Εξάμηνο Practice final exam 1. Έστω ότι για

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

Εισόδημα Κατανάλωση 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 Πληθυσμός Δείγμα Δείγμα Δείγμα Ο ρόλος της Οικονομετρίας Οικονομική Θεωρία Διατύπωση της

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

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

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

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

καθ. Βασίλης Μάγκλαρης

καθ. Βασίλης Μάγκλαρης ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα 005 - Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Ενισχυτική Μάθηση - Δυναμικός Προγραμματισμός: 1. Markov Decision Processes 2. Bellman s Optimality Criterion 3. Αλγόριθμος

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

Παρεμβολή & πρόγνωση άγνωστης συνάρτησης μέσω σημειακής προσαρμογής

Παρεμβολή & πρόγνωση άγνωστης συνάρτησης μέσω σημειακής προσαρμογής Ειδικά Θέματα Συνορθώσεων & Εφαρμογές 8 ο εξάμηνο, Ακαδημαϊκό έτος 2018-2019 Παρεμβολή & πρόγνωση άγνωστης συνάρτησης μέσω σημειακής προσαρμογής (Least squares collocation) Χριστόφορος Κωτσάκης Τμήμα Αγρονόμων

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

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

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

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

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

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

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

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

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

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

ΣΤΟΧΑΣΤΙΚΑ ΣΗΜΑΤΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ

ΣΤΟΧΑΣΤΙΚΑ ΣΗΜΑΤΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ ΣΤΟΧΑΣΤΙΚΑ ΣΗΜΑΤΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ Ακαδηµαϊκό Έτος 007-008 ιδάσκων: Ν. Παπανδρέου (Π.. 407/80) Πανεπιστήµιο Πατρών Τµήµα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής 1η Εργαστηριακή Άσκηση Αναγνώριση

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

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,

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

Βέλτιστη παρεμβολή και πρόγνωση άγνωστης συνάρτησης με τη μέθοδο της σημειακής προσαρμογής

Βέλτιστη παρεμβολή και πρόγνωση άγνωστης συνάρτησης με τη μέθοδο της σημειακής προσαρμογής Ειδικά Θέματα Συνορθώσεων & Εφαρμογές 8 ο εξάμηνο, Ακαδημαϊκό έτος 2016-2017 Βέλτιστη παρεμβολή και πρόγνωση άγνωστης συνάρτησης με τη μέθοδο της σημειακής προσαρμογής (Least squares collocation) Χριστόφορος

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

Κεφάλαιο 12: Υδραυλική ανάλυση δικτύων διανομής

Κεφάλαιο 12: Υδραυλική ανάλυση δικτύων διανομής Κεφάλαιο 12: Υδραυλική ανάλυση δικτύων διανομής Εννοιολογική αναπαράσταση δίκτυων διανομής Σχηματοποίηση: δικτυακή απεικόνιση των συνιστωσών του φυσικού συστήματος ως συνιστώσες ενός εννοιολογικού μοντέλου

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

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

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

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

Χρονικές σειρές 2 Ο μάθημα: Εισαγωγή στις χρονοσειρές

Χρονικές σειρές 2 Ο μάθημα: Εισαγωγή στις χρονοσειρές Χρονικές σειρές 2 Ο μάθημα: Εισαγωγή στις χρονοσειρές Εαρινό εξάμηνο 2018-2019 μήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό μήμα, Πανεπιστήμιο

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

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

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

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

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Βασισμένο σε μια εργασία των Καζαρλή, Καλόμοιρου, Μαστοροκώστα, Μπαλουκτσή, Καλαϊτζή, Βαλαή, Πετρίδη Εισαγωγή Η Εξελικτική Υπολογιστική

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

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

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

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

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

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

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

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

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα 005 - Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Δυναμικός Προγραμματισμός με Μεθόδους Monte Carlo: 1. Μάθηση Χρονικών Διαφορών (Temporal-Difference Learning) 2. Στοχαστικός

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

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

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

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

Αστικά υδραυλικά έργα

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

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

Βέλτιστα Ψηφιακά Φίλτρα: Φίλτρα Wiener, Ευθεία και αντίστροφη γραµµική πρόβλεψη

Βέλτιστα Ψηφιακά Φίλτρα: Φίλτρα Wiener, Ευθεία και αντίστροφη γραµµική πρόβλεψη ΒΕΣ 6 Προσαρµοστικά Συστήµατα στις Τηλεπικοινωνίες Βέλτιστα Ψηφιακά Φίλτρα: Φίλτρα Wiener, Ευθεία και αντίστροφη γραµµική πρόβλεψη 7 Nicolas sapatsoulis Βιβλιογραφία Ενότητας Benvenuto []: Κεφάλαιo Wirow

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

Ψηφιακή Επεξεργασία Σημάτων

Ψηφιακή Επεξεργασία Σημάτων Ψηφιακή Επεξεργασία Σημάτων Ενότητα 3: Συστήματα Διακριτού Χρόνου Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Συστήματα Διακριτού Χρόνου Εισαγωγή στα Συστήματα Διακριτού Χρόνου Ταξινόμηση Συστημάτων ΔΧ

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

ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ Tel.: +30 2310998051, Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Σχολή Θετικών Επιστημών Τμήμα Φυσικής 541 24 Θεσσαλονίκη Καθηγητής Γεώργιος Θεοδώρου Ιστοσελίδα: http://users.auth.gr/theodoru ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

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

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

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

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

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

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

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

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ. Διάλεξη 3: Περιγραφή αριθμητικών μεθόδων (συνέχεια)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ. Διάλεξη 3: Περιγραφή αριθμητικών μεθόδων (συνέχεια) ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ Διάλεξη 3: Περιγραφή αριθμητικών μεθόδων (συνέχεια) Χειμερινό εξάμηνο 2008 Προηγούμενη παρουσίαση... Εξετάσαμε

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

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

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

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

Μια εισαγωγή στο φίλτρο Kalman

Μια εισαγωγή στο φίλτρο Kalman 1 Μια εισαγωγή στο φίλτρο Kalman Το 1960, R.E. Kalman δημόσιευσε το διάσημο έγγραφό του περιγράφοντας μια επαναλαμβανόμενη λύση στο γραμμικό πρόβλημα φιλτραρίσματος διακριτών δεδομένων. Από εκείνη τη στιγμή,

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

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

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

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

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

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

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

Ανάπτυξη και δηµιουργία µοντέλων προσοµοίωσης ροής και µεταφοράς µάζας υπογείων υδάτων σε καρστικούς υδροφορείς µε χρήση θεωρίας νευρωνικών δικτύων

Ανάπτυξη και δηµιουργία µοντέλων προσοµοίωσης ροής και µεταφοράς µάζας υπογείων υδάτων σε καρστικούς υδροφορείς µε χρήση θεωρίας νευρωνικών δικτύων Ανάπτυξη και δηµιουργία µοντέλων προσοµοίωσης ροής και µεταφοράς µάζας υπογείων υδάτων σε καρστικούς υδροφορείς µε χρήση θεωρίας νευρωνικών δικτύων Περίληψη ιδακτορικής ιατριβής Τριχακης Ιωάννης Εργαστήριο

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

Στοχαστικές Ανελίξεις (2) Αγγελική Αλεξίου

Στοχαστικές Ανελίξεις (2) Αγγελική Αλεξίου Στοχαστικές Ανελίξεις (2) Αγγελική Αλεξίου alexiou@unipi.gr 1 Στοχαστικές Διαδικασίες 2 Στοχαστική Διαδικασία Στοχαστικές Ανελίξεις Α. Αλεξίου 3 Στοχαστική Διαδικασία ως συλλογή από συναρτήσεις χρόνου

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη μιας προσαρμοστικής πολιτικής αντικατάστασης αρχείων, με χρήση

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

Προσαρµοστικοί Αλγόριθµοι Υλοποίησης Βέλτιστων Ψηφιακών Φίλτρων: Ο αναδροµικός αλγόριθµος ελάχιστων τετραγώνων (RLS Recursive Least Squares)

Προσαρµοστικοί Αλγόριθµοι Υλοποίησης Βέλτιστων Ψηφιακών Φίλτρων: Ο αναδροµικός αλγόριθµος ελάχιστων τετραγώνων (RLS Recursive Least Squares) ΒΕΣ 6 Προσαρµοστικά Συστήµατα στις Τηλεπικοινωνίες Προσαρµοστικοί Αλγόριθµοι Υλοποίησης Βέλτιστων Ψηφιακών Φίλτρων: Ο αναδροµικός αλγόριθµος ελάχιστων τετραγώνων RLS Rcrsiv Last Sqars 27 iclas sapatslis

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

Κινητά Δίκτυα Υπολογιστών

Κινητά Δίκτυα Υπολογιστών Κινητά Δίκτυα Υπολογιστών Καθ. Κώστας Μπερμπερίδης Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Σκοποί ενότητας Εξοικείωση του φοιτητή με την έννοια της προσαρμοστικής ισοστάθμισης καναλιού 2 Περιεχόμενα

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

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

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

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

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΕΙΣΑΓΩΓΗ ΣΤΗN ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ 3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ Μ. Καρλαύτης Ν. Λαγαρός Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη

Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη 6 ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» Φλώρινα, 20-22 Απριλίου 2012 Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη Σάββας Νικολαΐδης 1 ο

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

Αφαίρεση του Φαινομένου του Μικροφωνισμού σε Ακουστικά Βαρηκοΐας

Αφαίρεση του Φαινομένου του Μικροφωνισμού σε Ακουστικά Βαρηκοΐας Αφαίρεση του Φαινομένου του Μικροφωνισμού σε Ακουστικά Βαρηκοΐας Νιαβής Παναγιώτης Επιβλέπων: Καθ. Γ. Μουστακίδης Περιεχόμενα Εισαγωγή Μικροφωνισμός σε ακουστικά βαρηκοΐας Προσαρμοστική αναγνώριση συστήματος

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

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

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ Βασίλης Δ. Ανδριτσάνος Δρ. Αγρονόμος - Τοπογράφος Μηχανικός ΑΠΘ Επίκουρος Καθηγητής ΤΕΙ Αθήνας 3ο εξάμηνο http://eclass.teiath.gr Παρουσιάσεις,

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

Εισαγωγικά για την αναγνώριση έκφρασης προσώπου (Facial Expression Recognition)

Εισαγωγικά για την αναγνώριση έκφρασης προσώπου (Facial Expression Recognition) Ο στόχος της διπλωματικής είναι η αναγνώριση του συναισθήματος ενός συγκεκριμένου ανθρώπου από μια αλληλουχία εικόνων στις οποίες παίρνει διάφορες εκφράσεις. Αυτό θα γίνει κάνοντας χρήση τεχνικών βαθιάς

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

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

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

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

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

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

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

προβλήµατος Το φίλτρο Kalman διαφέρει από τα συνηθισµένα προβλήµατα ΜΕΤ σε δύο χαρακτηριστικά: παραµέτρων αγνώστων

προβλήµατος Το φίλτρο Kalman διαφέρει από τα συνηθισµένα προβλήµατα ΜΕΤ σε δύο χαρακτηριστικά: παραµέτρων αγνώστων Φίλτρα Kalman Εξαγωγή των εξισώσεων τους µε βάση το κριτήριο ελαχιστοποίησης της Μεθόδου των Ελαχίστων Τετραγώνων. Αναλυτικές Μέθοδοι στη Γεωπληροφορική Μεταπτυχιακό Πρόγραµµα ΓΕΩΠΛΗΡΟΦΟΡΙΚΗ ιατύπωση του

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

Μέθοδοι πολυδιάστατης ελαχιστοποίησης

Μέθοδοι πολυδιάστατης ελαχιστοποίησης Μέθοδοι πολυδιάστατης ελαχιστοποίησης με παραγώγους Μέθοδοι πολυδιάστατης ελαχιστοποίησης Δ. Γ. Παπαγεωργίου Τμήμα Μηχανικών Επιστήμης Υλικών Πανεπιστήμιο Ιωαννίνων dpapageo@cc.uoi.gr http://pc64.materials.uoi.gr/dpapageo

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

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

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

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

Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ

Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου Γεωργαρά Αθηνά (A.M. 2011030065) ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

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

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: Μαθηµατική διατύπωση µοντέλου επίλυσης απλού δικτύου διανοµής

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

Σειρά: Επεξεργασία Δεδομένων Εκδοση/Ημ.νία: #3.1/ Συγγραφέας: Μίχος Θεόδωρος, Φυσικός

Σειρά: Επεξεργασία Δεδομένων Εκδοση/Ημ.νία: #3.1/ Συγγραφέας: Μίχος Θεόδωρος, Φυσικός Σειρά: Επεξεργασία Δεδομένων Εκδοση/Ημ.νία: #3.1/018-0-15 Συγγραφέας: Μίχος Θεόδωρος, Φυσικός 1. Μέθοδος Ελαχίστων Τετραγώνων Μια από τις πρώτες δουλειές που μαθαίνει ένας φοιτητής θετικών επιστημών μόλις

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

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

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

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

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

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

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

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

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

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

Μεταπτυχιακό Πρόγραμμα Φυσικού Τμήματος «Υπολογιστική Φυσική» Θέμα εργασίας στο A Μέρος του μαθήματος «Προσομοίωση Χαοτικών Συστημάτων»

Μεταπτυχιακό Πρόγραμμα Φυσικού Τμήματος «Υπολογιστική Φυσική» Θέμα εργασίας στο A Μέρος του μαθήματος «Προσομοίωση Χαοτικών Συστημάτων» Μεταπτυχιακό Πρόγραμμα Φυσικού Τμήματος «Υπολογιστική Φυσική» Θέμα εργασίας στο A Μέρος του μαθήματος «Προσομοίωση Χαοτικών Συστημάτων» Οδηγίες: Σχετικά με την παράδοση της εργασίας θα πρέπει: Το κείμενο

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

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

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

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

Πανεπιστήμιο Πατρών Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών. Διάλεξη 5

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

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

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

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson ΜΙΑ ΣΥΜΒΑΣΗ: Προκειμένου να καταστήσουμε πιο συμπαγή το συμβολισμό H : ορίζουμε Ετσι έχουμε *=[ ] an *=[ ]. H : * * ΣΗΜΕΙΩΣΗ: Στη συνέχεια εκτός αν ορίζεται

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

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

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

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

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

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΤΕΧΝΙΚΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΤΕΧΝΙΚΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΕΥΑΓΓΕΛΙΑΣ Π. ΛΟΥΚΟΓΕΩΡΓΑΚΗ Διπλωματούχου Πολιτικού Μηχανικού ΟΛΟΚΛΗΡΩΜΕΝΟ

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