Επιλέγοντας το καλύτερο πλαίσιο AutoML

Μια σύγκριση μεταξύ των τεσσάρων συστημάτων αυτόματης μηχανικής μάθησης σε 87 σύνολα δεδομένων.

Αδιθιά Μπαλάνι και Αλέξανδρος Άλεν

Εισαγωγή

Η Αυτόματη Εκμάθηση Μηχανών (AutoMail) θα μπορούσε να φέρει την AI σε επαφή με ένα πολύ μεγαλύτερο κοινό. Παρέχει ένα σύνολο εργαλείων που βοηθούν τις ομάδες επιστημών δεδομένων με ποικίλα επίπεδα εμπειρίας να επισπεύσουν τη διαδικασία της επιστήμης των δεδομένων. Αυτός είναι ο λόγος για τον οποίο η AutoML έχει αναγγελθεί ως η λύση για τον εκδημοκρατισμό του AI. Ακόμα και με μια έμπειρη ομάδα, ίσως μπορέσετε να χρησιμοποιήσετε το AutoML για να αξιοποιήσετε στο έπακρο τους περιορισμένους πόρους. Ενώ υπάρχουν ιδιόκτητες λύσεις που παρέχουν μηχανική μάθηση ως υπηρεσία, αξίζει να εξετάσουμε τις τρέχουσες λύσεις ανοιχτού κώδικα που αντιμετωπίζουν αυτή την ανάγκη.

Στο προηγούμενο κομμάτι μας, διερευνήσαμε το τοπίο AutoML και επισημάναμε ορισμένα πακέτα που μπορούν να λειτουργήσουν για τις ομάδες επιστήμης δεδομένων. Σε αυτό το κομμάτι θα διερευνήσουμε τις τέσσερις λύσεις "πλήρους αγωγού" που αναφέρθηκαν: auto_ml, auto-sklearn, TPOT και η λύση AutoML του H2O.

Τα πλεονεκτήματα και οι αδυναμίες κάθε πακέτου παρουσιάζονται λεπτομερώς στο πλήρες έντυπό μας, "Συστήματα αυτόματης μάθησης μηχανών συγκριτικής αξιολόγησης". Το έγγραφο περιέχει επίσης πρόσθετες πληροφορίες σχετικά με τη μεθοδολογία και μερικά επιπλέον αποτελέσματα.

Μεθοδολογία

Προκειμένου να παρασχεθεί μια ακριβής και δίκαιη αξιολόγηση, επιλέχθηκαν 87 ανοιχτά σύνολα δεδομένων, 30 ταξινόμηση κατάταξης και 57 ταξινόμησης, από το OpenML, ένα online αποθετήριο των τυποποιημένων συνόλων δεδομένων εκμάθησης μηχανής που εκτίθενται μέσω ενός API REST με συνεπή τρόπο. Η διάσπαση των συνόλων δεδομένων παρέχει ένα ευρύ δείγμα πίνακα δεδομένων που μπορεί να βρεθεί σε ένα πρόβλημα μάθησης των επιχειρήσεων. Έχει δοθεί μεγάλη προσοχή στην επιλογή συνόλων δεδομένων για την πρόληψη της μόλυνσης των συνόλων επικύρωσης. Για παράδειγμα, το auto-sklearn χρησιμοποιεί μια θερμή εκκίνηση που έχει ήδη εκπαιδευτεί σε ένα σύνολο συνόλων δεδομένων OpenML. Δεδομένα όπως αυτά αποφεύχθηκαν.

Κάθε ένα από τα τέσσερα πλαίσια, auto_ml, auto-sklearn, TPOT και H2O δοκιμάστηκαν με τις προτεινόμενες παραμέτρους τους, σε 10 τυχαία σπόρους ανά σύνολο δεδομένων. Η βαθμολογία F1 (σταθμισμένη) και το μέσο τετραγωνικό σφάλμα επελέγησαν ως κριτήρια αξιολόγησης για προβλήματα ταξινόμησης και παλινδρόμησης αντίστοιχα.

Ένας περιορισμός 3 ωρών χρησιμοποιήθηκε για να περιοριστεί κάθε μέθοδος AutoML σε ένα χρονικό διάστημα που αντικατοπτρίζει μια αρχική διερευνητική αναζήτηση που εκτελείται από πολλές ομάδες επιστημών δεδομένων. Αυτό έχει ως αποτέλεσμα υπολογιζόμενο χρόνο υπολογισμού 10.440 ωρών. Ως εκ τούτου, αποφασίσαμε να αξιολογήσουμε τα μοντέλα χρησιμοποιώντας την υπηρεσία παρτίδας AWS για να χειριστούμε την παραλληλισμό αυτής της εργασίας χρησιμοποιώντας συμβολές EC2 βελτιστοποιημένες με υπολογισμό C4 που διαθέτουν 2 vCPUs και 4 GB μνήμης ανά διαδρομή.

Χρησιμοποιήσαμε μια προσέγγιση με την καλύτερη δυνατή προσπάθεια για να διασφαλίσουμε ότι όλες οι δοκιμές ολοκληρώθηκαν και ότι όλες οι δοκιμές είχαν τουλάχιστον 3 πιθανότητες επιτυχίας εντός του ορίου των 3 ωρών. Σε ορισμένες περιπτώσεις, τα υπολογιστικά περιβάλλοντα της AWS Batch και η διαχείριση των πόρων που βασίζονται σε docker οδήγησαν σε απρόβλεπτη συμπεριφορά. Για να ξεπεραστεί αυτό, αναπτύξαμε μια προσαρμοσμένη προσέγγιση "γυμνό-μέταλλο" για την αναπαραγωγή της παρτίδας AWS σε περιπτώσεις EC2 με πιο λεπτομερή έλεγχο της διαχείρισης μνήμης ανά διεργασία. Συγκεκριμένα, ο διαχειριστής μνήμης αποβάθρας στέλνει ένα σήμα θανάτου στη διαδικασία συγκριτικής αξιολόγησης, εάν η ποσότητα μνήμης που χρησιμοποιήθηκε από τη διαδικασία ξεπέρασε το ποσό που διατέθηκε από την παρτίδα. Αυτό το σκληρό όριο δεν μπορεί να αλλάξει χωρίς μεγάλο μέγεθος εμφάνισης ανά διαδρομή. Χρησιμοποιώντας τους ίδιους υπολογιστικούς περιορισμούς, δοκιμάσαμε τις διαδρομές που απέτυχαν υπό αυτές τις πολύ συγκεκριμένες συνθήκες στην προσαρμοσμένη υλοποίησή μας "γυμνό-μέταλλο".

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

Αποτελέσματα

Το σχήμα 1 περιγράφει την ποικιλία των συνόλων δεδομένων που επιλέξαμε. Μπορείτε να δείτε ότι αυτή η ταξινόμηση είναι τυπικά δυαδική και ο αριθμός σειράς παλινδρόμησης είναι σχετικά ομοιόμορφος, ενώ ο αριθμός των γραμμών ταξινόμησης στρέφεται προς τα σύνολα δεδομένων γύρω από 1000 σειρές. Η μέτρηση των χαρακτηριστικών τόσο για τα κέντρα παλινδρόμησης όσο και για τα κέντρα ταξινόμησης γύρω στα 10 χαρακτηριστικά με ταξινόμηση στρεβλώνεται ελαφρά προς τα 100. Πιστεύουμε ότι αυτή η ομάδα δεδομένων είναι ένα αντιπροσωπευτικό δείγμα γενικών προβλημάτων επιστήμης δεδομένων που θα αντιμετώπιζαν πολλοί επιστήμονες δεδομένων.

Σχήμα 1: Τα χαρακτηριστικά του άγαμου συνόλου δεδομένων διαχωρίζονται μεταξύ των προβλημάτων ταξινόμησης και παλινδρόμησης

Ορισμένα πλαίσια παρέμειναν εκτός χρόνου σε συγκεκριμένους σπόρους και πλαίσια. Έπεσαν συνολικά 29 συνδυασμοί εκτέλεσης (σύνολο δεδομένων και σπόρος). Αυτοί οι συνδυασμοί κίνησης μειώθηκαν σε όλα τα πλαίσια προκειμένου να διατηρηθεί η συγκρισιμότητα των μεμονωμένων πλαισίων. Αυτή η διαδικασία οδήγησε σε ένα σύνολο 132 σημείων (29 * 4) που έπεσαν, που είναι περίπου ~ 3% συνολικά (116/3480 διαδρομές).

Σχήμα 2: Κεφάλαιο-πλαίσιο πλαισίου σημαίνει απόδοση σε σύνολα δεδομένων ταξινόμησης

Σχήμα 3: Πλαίσιο κεφαλής προς κεφαλή σημαίνει απόδοση σε σύνολα δεδομένων παλινδρόμησης

Κάθε πλαίσιο αξιολογήθηκε σε πακέτα δεδομένων παλινδρόμησης και ταξινόμησης που αναφέρθηκαν παραπάνω. Η απόδοσή τους υπολογίστηκε συγκεντρώνοντας την σταθμισμένη βαθμολογία F1 και τις βαθμολογίες MSE σε σύνολα δεδομένων ανά πλαίσιο. Κάθε μέτρηση τυποποιήθηκε σε κάθε βάση δεδομένων σε πλαίσια και κλιμακώθηκε από 0 έως 1. Στην περίπτωση του MSE, αυτές οι τιμές αντιστρέφονταν, πράγμα που σημαίνει ότι οι υψηλότερες τιμές αντιπροσωπεύουν καλύτερα αποτελέσματα, έτσι ώστε τα γραφήματα να παραμένουν συνεπή μεταξύ των απεικονίσεων ταξινόμησης και παλινδρόμησης. Ο μέσος όρος μεταξύ των 10 αξιολογήσιμων σπόρων αντιπροσωπεύει την απόδοση ενός πλαισίου σε ένα συγκεκριμένο σύνολο δεδομένων. Στα σχήματα 2 και 3, οι σκοτεινότερες αποχρώσεις δείχνουν μεγαλύτερες διαφορές απόδοσης.

Σχήμα 4: Απόδοση πλαισίου σε όλα τα σύνολα δεδομένων ταξινόμησης

Σχήμα 5: Απόδοση πλαισίου σε όλα τα σύνολα δεδομένων παλινδρόμησης

Χρησιμοποιήσαμε boxplots για να επιδείξουμε την απόδοση πλαισίου εδώ στα σχήματα 4 και 5. Οι εγκοπές στα πλαίσια του κιβωτίου αντιπροσωπεύουν το διάστημα εμπιστοσύνης των μέσων. Τα μέσα και οι τυπικές αποκλίσεις στον πίνακα 1 δείχνουν τις ακριβείς διαφορές.

Πίνακας 1: Αποτελέσματα ακριβή ανά πλαίσιο

Συμπέρασμα και Διερμηνεία

Συνολικά, κάθε οπτικοποίηση και ερμηνεία παρουσιάζει την ίδια εικόνα. Το Auto-sklearn εκτελεί το καλύτερο από τα σύνολα δεδομένων ταξινόμησης και το TPOT εκτελεί τα καλύτερα σε σύνολα δεδομένων παλινδρόμησης. Είναι σημαντικό να παρατηρήσουμε ότι τα ποσοτικά αποτελέσματα από αυτό το πείραμα έχουν εξαιρετικά υψηλές διακυμάνσεις και ως εκ τούτου είναι πολύ σημαντικό να σκεφτούμε την κατάσταση της βάσης κώδικα, τη συνεχή ανάπτυξη, το σύνολο χαρακτηριστικών και τους στόχους αυτών των μεμονωμένων πλαισίων και όχι αυτόνομη απόδοση. Σας συνιστούμε τόσο το TPOT όσο και το auto-sklearn εξαιτίας αυτών των παραγόντων και λόγω των αλληλεπιδράσεών μας με κάθε μία από τις κοινότητές τους μέσα στο χρόνο που εργαστήκαμε σε αυτήν την ανάλυση.

Καθένα από τα πακέτα (Auto-sklearn, TPOT, H2O, Auto_ml), το πλήρες χαρτί και η εφαρμογή του benchmarking συνδέονται εδώ.