Machine Learning paper on Multi-layer Perceptron: Regression with Conjugate Gradient and Levenberg Marquardt Algorithms (Presentation in Greek language).
3. Νευρωνικά Δίκτυα Πολλαπλών Στρωμάτων
(Multilayer Perceptron - MLP) 1/3
είναι δίκτυα εμπρόσθιας τροφοδότησης (feedforward)
εκπαιδεύονται μετά από μια διαδικασία, η οποία
παρουσιάζει στο δίκτυο σετ δεδομένων εισόδου και
εξόδους – στόχους
χρησιμοποιούν μη γραμμικές συναρτήσεις ενεργοποίησης
χαρακτηρίζονται από την ιδιότητα της καθολικής
προσέγγισης (global approximation)
ο πιο διαδεδομένος κανόνας για την εκπαίδευσή τους είναι
ο backpropagation (BP)
4. Νευρωνικά Δίκτυα Πολλαπλών Στρωμάτων
(Multilayer Perceptron - MLP) 2/3
Αποτελούνται από:
ένα σύνολο κόμβων εισόδου,
ένα ή περισσότερα κρυφά
στρώματα που αποτελούνται από
νευρώνες που εκτελούν
υπολογισμούς και
ένα στρώμα εξόδου, το οποίο
επίσης αποτελείται από νευρώνες
που εκτελούν υπολογισμούς
Γενική τοπολογία ενός δικτύου MLP
5. Νευρωνικά Δίκτυα Πολλαπλών Στρωμάτων
(Multilayer Perceptron - MLP) 3/3
Σύμφωνα με την ιδιότητα της καθολικής προσέγγισης, ένα
MLP δίκτυο δύο στρωμάτων, μπορεί να προσεγγίσει όσο καλά
επιθυμούμε οποιαδήποτε συνεχή συνάρτηση, αρκεί:
να έχουμε αρκετούς κρυφούς νευρώνες
οι νευρώνες του κρυφού στρώματος να έχουν την
συνάρτηση ενεργοποίησης υπερβολικής εφαπτομένης
(MatLab - tansig)
οι νευρώνας εξόδου να έχουν τη γραμμική συνάρτηση
ενεργοποίησης (MatLab - purelin)
Υπερβολική
εφαπτομένη
Γραμμική
συνάρτηση
6. Εκπαίδευση ενός Τεχνητού
Νευρωνικού Δικτύου (ΤΝΔ)
Βασικός στόχο της εκπαίδευσης ενός ΤΝΔ είναι να βρεθεί
ένας τρόπος αλλαγής των βαρών που θα έχει σαν
αποτέλεσμα την αύξηση της ικανότητας του δικτύου να
παρέχει στο μέλλον μία επιθυμητή έξοδο μετά από μία
δεδομένη είσοδο.
Supervised learning: η έξοδος είναι εκ των προτέρων
γνωστή
Unsupervised learning: έχουμε μόνο τις εισόδους
Reinforcement Learning: δεν έχουμε άμεση πρόσβαση
στην "σωστή" έξοδο, αλλά μπορούμε να πάρουμε κάποια
μέτρηση της ποιότητας μιας εξόδου μετά την είσοδο
6
8. Δίκτυα Backpropagation (BP) 1/2
8
Είναι Feedforward (FF) ΤΝΔ
Supervised learning - Για κάθε είσοδο που δίνεται στο
δίκτυο, υπολογίζονται οι έξοδοι εφαρμόζοντας τις
συναρτήσεις μετάβασης σε κάθε μονάδα κρυφού ή
εξωτερικού στρώματος.
Διαδικασία Βackpropagation - Οι διαφορές μεταξύ του
υπολογιζόμενου και του επιθυμητού αποτελέσματος
λαμβάνονται υπ' όψιν και προπαγανδίζονται προς τα πίσω
στις κρυμμένες μονάδες έτσι ώστε να καθορίσουν τις
απαραίτητες αλλαγές (κανόνας εκμάθησης) στα βάρη
σύνδεσης μεταξύ των μονάδων.
10. Παλινδρόμηση (Regression)
Είναι η διαδικασία προσδιορισμού της σχέσης μιας
μεταβλητής y (εξαρτημένη μεταβλητή ή έξοδος) µε µια ή
περισσότερες άλλες μεταβλητές x1, x2, …, xn (ανεξάρτητες
μεταβλητές ή είσοδοι).
Σκοπός της είναι η πρόβλεψη της τιμής της εξόδου όταν είναι
γνωστές οι είσοδοι.
Το πιο διαδεδομένο μοντέλο είναι το γραμμικό (linear), όπου η
αναμενόμενη τιμή της εξόδου μοντελοποιείται µε µία
γραμμική συνάρτηση.
Αφορά στη δημιουργία μοντέλων πρόβλεψης αριθμητικών
τιμών (π.χ. πρόβλεψη ισοτιμίας νομισμάτων ή τιμής μετοχής).
10
11. Conjugate Gradient BP (CG)
Λέγεται και Συζυγής Κατάβαση Δυναμικού με
Οπισθοδρόμηση,
μπορεί να χρησιμοποιηθεί στην εκπαίδευση δικτύων
πολλών στρωμάτων,
δεν απαιτεί τον υπολογισμό της δεύτερης παραγώγου,
έχει τη δυνατότητα της τετραγωνικής σύγκλισης,
στο MatLab, ο αλγόριθμος εκπαίδευσης που
χρησιμοποιήθηκε είναι ο Fletcher-Powell Conjugate
Gradient αλγόριθμος (traincgf).
11
12. Levenberg – Marquardt BP (LM)
Ο αλγόριθμος αυτός μπορεί να θεωρηθεί σαν γενίκευση
του αλγορίθμου Ελάχιστων Μέσων Τετραγώνων,
βασίζεται στον κανόνα μάθησης με ανάστροφη διόρθωση,
είναι γρήγορος και έχει σταθερή σύγκλιση,
στα ΤΝΔ είναι κατάλληλος για την επίλυση μικρού και
μεσαίου μεγέθους προβλημάτων,
στο Matlab, η υλοποίησή του πραγματοποιείται με τη
χρήση της συνάρτησης trainlm, η οποία ενημερώνει τις
τιμές βάρους και πόλωσης σύμφωνα με τη βελτιστοποίηση
του LM.
12
13. Wine Quality Dataset 1/2
13
Το σύνολο των δεδομένων προέρχεται από το Κέντρο
Εκμάθησης Μηχανών και Ευφυών Συστημάτων του UC
Irvine (http://cml.ics.uci.edu) μέσα από την έρευνα
των των Ρ. Cortez, Α. Cerdeira, F. Almeida, Τ. Matos
και J. Reis,
είναι οργανωμένα σε δύο αρχεία, το πρώτο με 1599
κόκκινα κρασιά και το δεύτερο με 4898 λευκά κρασιά,
το κάθε δεδομένο περιέχει 11 χημικά χαρακτηριστικά
καθώς και ένα χαρακτηριστικό ποιότητας (βαθμός 1
έως 10).
15. Μέθοδοι Αξιολόγησης Αποτελεσμάτων 1/6
Hold-out 1/2
15
το σύνολο δεδομένων διαχωρίζεται σε δύο ανεξάρτητα
σύνολα δεδομένων:
εκπαίδευσης (training set): χρησιμοποιείται για την
εκπαίδευση του ταξινομητή και κρατάμε συνήθως το 80%
του συνόλου των δεδομένων
ελέγχου (test set): χρησιμοποιείται για δοκιμές ελέγχου
(εκτίμηση του σφάλματος)
Διαχωρισμός δειγμάτων σε test και training
16. Μέθοδοι Αξιολόγησης Αποτελεσμάτων 2/6
Hold-out 2/2
16
Η μέθοδος hold-out είναι µια απλή μέθοδος η οποία
είναι εύκολη στην υλοποίηση, παρόλα αυτά, έχει δύο
βασικά μειονεκτήματα:
Στην περίπτωση που έχουμε μικρό σύνολο δεδομένων,
δεν είναι δυνατό να κρατήσουμε δείγματα για δοκιμή.
Μπορεί ο χωρισμός στις δύο ομάδων να είναι τέτοιος
που να παραπλανήσει το σφάλμα.
Λύση στα παραπάνω προβλήματα – το cross-validation
17. Μέθοδοι Αξιολόγησης Αποτελεσμάτων 3/6
Cross-Validation
17
Στις μεθόδους cross-validation χρησιμοποιείται ολόκληρο
το σύνολο δεδομένων για εκπαίδευση και για έλεγχο,
διεξάγονται πολλαπλάσια πειράματα εις βάρος του
υψηλότερου υπολογιστικού κόστους,
περιλαμβάνονται:
Random Subsampling (τυχαία δειγματοληψία),
K-Fold Cross-Validation (διασταυρωμένη επικύρωση
σε Κ μέρη) και
Leave-one-out Cross-Validation (εξαίρεσε ένα)
18. Μέθοδοι Αξιολόγησης Αποτελεσμάτων 4/6
random subsampling 1/3
18
Ακολουθεί παρόμοια λογική µε την hold-out
Εφαρμόζουμε τυχαία δειγματοληψία χωρίς
επανατοποθέτηση,
επιλέγουμε Ν πρότυπα για το σύνολο ελέγχου,
τα εναπομένοντα πρότυπα σχηματίζουν το σύνολο
εκπαίδευσης
μειώνεται η επιρροή που μπορεί να επιφέρει η κατανομή των
στιγμιότυπων στο σύνολο δεδομένων.
διαδικασία επαναλαμβάνεται Κ φορές ώστε να επιτευχθεί η
μεγαλύτερη δυνατή μείωση της επιρροής
19. Μέθοδοι Αξιολόγησης Αποτελεσμάτων 5/6
random subsampling 2/3
19
Τυχαία δειγματοληψία
Το συνολικό ποσοστό λάθους Ε υπολογίζεται ως ο μέσος όρος των
σφαλμάτων Εi
21. Διακοπή εκπαίδευσης στην
βέλτιστη εποχή
21
Ξεκινάμε με
τυχαία βάρη,
άρα υψηλό
σφάλμα γιατί
είναι
ανεκπαίδευτο
Βέλτιστη
πολυπλοκότητα
Εδώ σταματά η
εκπαίδευση.
Βρισκόμαστε ανάμεσα
στην υπομοντελοποίηση
και υπερμοντελοποίηση.
33. Συμπεράσματα
Το δίκτυο δεν εκπαιδεύεται σωστά σε υψηλές και χαμηλές
βαθμολογίες λόγω μικρού μεγέθους δείγματος.
Ο αλγόριθμος LM είναι πολύ πιο ταχύτερος από τον CG.
Ο αλγόριθμος LM απαιτεί πολύ μικρότερο αριθμό εποχών
σε σχέση με τον CG.
Το ποσοστό του συντελεστή συσχέτισης μεταξύ
προβλέψεων και στόχων R (που δίνει η παλινδρόμηση),
καθώς και το ποσοστό σφάλματος είναι περίπου ίδιο και
για τους δύο αλγόριθμους, στην αντίστοιχη κατηγορία
κρασιών.
33
Σε ένα πολύ-επίπεδο δίκτυο το πρώτο επίπεδο που συναντούν τα δεδομένα εισαγωγής ονομάζεται επίπεδο εισόδου (input layer), το τελευταίο ονομάζεται επίπεδο εξόδου (output layer) και τα ενδιάμεσα ονομάζονται κρυφά επίπεδα (hidden layers).
Τα multilayer feedforward backpropagation δίκτυα αποτελούνται από επίπεδα νευρώνων τα οποία συνδέονται μεταξύ τους νευρώνα προς νευρώνα.
Λόγω του ότι επιθυμούμε το δίκτυο να μας επιλύσει μη-γραμμικά προβλήματα, η συνάρτηση μεταφοράς που θα υλοποιεί ο κάθε νευρώνας θα πρέπει να είναι μη-γραμμική.
Η συνάρτηση που χρησιμοποιούμε για την εκπαίδευση του δικτύου είναι η train() και συντάσσεται ως εξής:
net = train(net, X, T);
όπου net είναι το αρχικοποιημένο δίκτυο, Χ είναι το διάνυσμα εισόδου, και Τ είναι το διάνυσμα του στόχου
Αποδεκτά χαμηλό το σφάλμα
To validation set χρησιμοποιείται για εύρεση της καλύτερης εποχής ώστε να διακόψει την εκπαίδευση. By default οι εποχές είναι 1000.
Υπάρχει και η λύση του κατώτατου ορίου σφάλματος.
Ο λόγος που επιλέξαμε διακοπή εκπαίδευσης με validation set είναι για να αποφύγουμε την υπερμοντελοποίηση που μειώνει την ικανότητα γενίκευσης.