ΚΕΦΑΛΑΙΟ 5 Matlab GUI για FWSVM και Global SVM Προκειμένου να γίνουν οι πειραματικές προσομοιώσεις του κεφαλαίου 4, αναπτύξαμε ένα γραφικό περιβάλλον (Graphical User Interface) που εξασφαλίζει την εύκολη χρήση και σύγκριση των μεθόδων Fuzzy Weighted SVR with fuzzy partition και Global SVR. Ακολουθεί η περιγραφή του τρόπου με τον οποίο χρησιμοποιούμε αυτό το γραφικό περιβάλλον για να λύσουμε προβλήματα προσέγγισης συναρτήσεων. Βήμα 1: Εκκίνηση της εφαρμογής Καθώς είμαστε στο περιβάλλον του Matlab, μπαίνουμε στο φάκελο <FW_SVM(With KM)> χρησιμοποιώντας το παράθυρο Current Directory στο αριστερό μέρος της οθόνης. Πληκτρολογούμε fwsvm στο Command Window και πατάμε το πλήκτρο Enter. Βήμα 2: Κεντρικό Μενού Όλα τα παραπάνω έχουν ως αποτέλεσμα την εμφάνιση του κεντρικού μενού της εφαρμογής μας: Σχήμα 5.1 Κεντρικό Μενού 66
Οι λειτουργίες των pushbuttons που φαίνονται στο σχήμα 5.1 είναι: Create 1-D Input Data: Εισάγει στο σύστημα τα δεδομένα του παραδείγματος της ενότητας 4.1 (Ημιτονοειδής Συνάρτηση) Create 2-D Input Data: Εισάγει στο σύστημα τα δεδομένα του παραδείγματος της ενόητητας 4.2 (Συνάρτηση με Δύο Μεταβλητές Εισόδου) Load Data From File: Ανοίγει το παράθυρο Select File to Open, από το οποίο μπορούμε να αναζητήσουμε αρχεία με δεδομένα σε μορφή XLS(Έγγραφο Excel) για να τα εισάγουμε στο σύστημα. Σχήμα 5.2 Το παράθυρο αναζήτησης αρχείων XLS Σε αυτό το σημείο οφείλουμε να επαναλάβουμε μια σημαντική λεπτομέρεια για τα δεδομένα που εισάγουμε στην εφαρμογή: Πρέπει πάντα να φροντίζουμε η πρώτη στήλη του πίνακα του αρχείου XLS να είναι η μονοδιάστατη έξοδος του συστήματος. Quit: Έξοδος από την εφαρμογή, επιστροφή στο Command Window του Matlab. 67
Βήμα 3: Επιλογή της μεθόδου παλινδρόμησης Εφόσον προηγουμένως έχουμε επιλέξει τα δεδομένα πάνω στα οποία θα δουλέψουμε, εμφανίζεται το παράθυρο το οποίο μας ζητά να καθορίσουμε τη μέθοδο που θα χρησιμοποιήσουμε για να κάνουμε την παλινδρόμηση (Fuzzy Weighted SVR with Fuzzy Partition ή Global SVR) : Σχήμα 5.3 Επιλογή της μεθόδου παλινδρόμησης Πατώντας το Back επιστρέφουμε στο κεντρικό μενού, πατώντας το Next προχωράμε σύμφωνα με την επιλογή μας. Βήμα 4: Εισαγωγή Παραμέτρων Εφόσον έχουμε επιλέξει τα προς επεξεργασία δεδομένα και τη μέθοδο που θα ακολουθήσουμε, μένει απλώς να εισάγουμε στην εφαρμογή τις κατάλληλες παραμέτρους για να πραγματοποιηθεί η παλινδρόμηση. Στη γενική περίπτωση που έχουμε εισάγει ένα αρχείο XLS (έχουμε δηλαδή πατήσει Load Data From File στο κεντρικό μενού) και: έχουμε επιλέξει τη μέθοδο Global SVR στο Βήμα 3, τότε εμφανίζεται το εξής παράθυρο: 68
Σχήμα 5.4 Εισαγωγή παραμέτρων για την Global SVR Σε αυτή τη φόρμα ζητείται από το χρήστη να εισάγει τιμές για τις εξής παραμέτρους: 1) Number Of Folds (K): Εφόσον γίνεται K-Fold-Cross Validation θα πρέπει να ε- πιλεχθεί το πλήθος των Folds που θα δημιουργηθεί από τα δεδομένα που έχουμε εισάγει. Σε όλες τις προσομοιώσεις που εκτελέσαμε στο προηγούμενο κεφάλαιο είχαμε 5 2) Kernel Option (Gkp): Είναι η παράμετρος των SVR-παραμέτρων 3) Regularization Constant: Είναι η παράμετρος των SVR-παραμέτρων 4) Epsilon: Είναι η παράμετρος των SVR-παραμέτρων Πατώντας το Back επιστρέφουμε στο παράθυρο του βήματος 3, ενώ με το Next υλοποιούμε την παλινδρόμηση των δεδομένων. Επίσης, αν έχει επιλεχθεί τo checkbox Scale Data, θα γίνει διαβάθμιση των δεδομένων σύμφωνα με τη σχέση 4.7 και όσα αναφέραμε στην ενότητα 4.4 Αν έχει επιλεχθεί το checkbox Show Output θα εμφανισθούν στο Command Window τα αποτελέσματα της παλινδρόμησης με το K-Fold-Cross Validation. 69
έχουμε επιλέξει τη μέθοδο Fuzzy Weighted SVR στο βήμα 3, τότε εμφανίζεται η παρακάτω φόρμα: Σχήμα 5.5 Εισαγωγή παραμέτρων για τη Fuzzy Weighted SVR with Fuzzy Partition Οι έξτρα παράμετροι που πρέπει να εισάγουμε στο σύστημα για να μας δώσει την εκτιμώμενη απόκριση των δεδομένων μας με Fuzzy Weighted SVR είναι οι παράμετροι ομαδοποίησης: Α) Number Of Clusters (C): Είναι το πλήθος των τοπικών μοντέλων παλινδρόμησης LRM που θέλουμε να δημιουργήσουμε. Β) Exponent (m): Είναι η σταθερά βάρους m της ενότητας 3.1 Γ) ita: Είναι η σταθερά επικάλυψης που καθορίζει την περιοχή επικάλυψης των υποσυνόλων εκπαίδευσης (σχέση 3.5). 70
Πατώντας το Back επιστρέφουμε στο παράθυρο του βήματος 3, ενώ με το Next υλοποιούμε την παλινδρόμηση των δεδομένων. Για την περίπτωση στην οποία έχουμε επιλέξει στο κεντρικό μενού μία εκ των επιλογών Create 1-D Input Data ή Create 2-D Input Data θα τονίσουμε ότι μας ζητούνται σε αυτό το βήμα οι ίδιες παράμετροι. Το μόνο επιπλέον στοιχείο που πρέπει να ορίσουμε είναι το πεδίο τιμών των μεταβλητών των εξισώσεων 4.3 και 4.4 αντίστοιχα. Βήμα 5: Εμφάνιση αποτελεσμάτων Όπως αναφέραμε και παραπάνω, τα αποτελέσματα των μεθόδων εμφανίζονται στο Command Window του Matlab στη στήλη Estimated Output. Δίπλα στη στήλη αυτή εμφανίζεται και η στήλη με την πραγματική απόκριση των δεδομένων (Real Output) για να εκτιμηθεί εύκολα η απόδοση των μεθόδων. Επίσης, στο Command Window εμφανίζονται και οι τιμές των συναρτήσεων σφάλματος RMSE και MAE, καθώς και οι χρόνοι υλοποίησης του αλγορίθμου (Total Computing Time και LRM Construction Time). Επιπλέον, αν η είσοδος είναι μονοδιάστατη, θα εμφανιστεί το διάγραμμα με την απόκριση των LRMs(εφόσον έχουμε FWSVR approach), καθώς και το διάγραμμα με την ολική απόκριση του μοντέλου. 71