Η δημιουργία λύσεων μηχανικής μάθησης (ML) υψηλής απόδοσης βασίζεται στην εξερεύνηση και τη βελτιστοποίηση των παραμέτρων εκπαίδευσης, γνωστές και ως υπερπαράμετροι. Οι υπερπαράμετροι είναι τα πόμολα και οι μοχλοί που χρησιμοποιούμε για να προσαρμόσουμε τη διαδικασία εκπαίδευσης, όπως ο ρυθμός εκμάθησης, το μέγεθος παρτίδας, η ισχύς τακτοποίησης και άλλα, ανάλογα με το συγκεκριμένο μοντέλο και εργασία. Η διερεύνηση υπερπαραμέτρων περιλαμβάνει συστηματική μεταβολή των τιμών κάθε παραμέτρου και παρατήρηση του αντίκτυπου στην απόδοση του μοντέλου. Αν και αυτή η διαδικασία απαιτεί πρόσθετες προσπάθειες, τα οφέλη είναι σημαντικά. Η βελτιστοποίηση υπερπαραμέτρων (HPO) μπορεί να οδηγήσει σε ταχύτερους χρόνους εκπαίδευσης, βελτιωμένη ακρίβεια μοντέλου και καλύτερη γενίκευση σε νέα δεδομένα.
Συνεχίζουμε το ταξίδι μας από την ανάρτηση Βελτιστοποιήστε τις υπερπαραμέτρους με το Amazon SageMaker Automatic Model Tuning. Εξερευνήσαμε προηγουμένως μια βελτιστοποίηση μεμονωμένης εργασίας, οπτικοποιήσαμε τα αποτελέσματα για τον ενσωματωμένο αλγόριθμο SageMaker και μάθαμε για τον αντίκτυπο συγκεκριμένων τιμών υπερπαραμέτρων. Εκτός από τη χρήση του HPO ως βελτιστοποίησης μίας χρήσης στο τέλος του κύκλου δημιουργίας μοντέλου, μπορούμε επίσης να το χρησιμοποιήσουμε σε πολλά βήματα με συνομιλητικό τρόπο. Κάθε εργασία συντονισμού μας βοηθά να πλησιάσουμε πιο κοντά σε μια καλή απόδοση, αλλά επιπλέον, μαθαίνουμε επίσης πόσο ευαίσθητο είναι το μοντέλο σε ορισμένες υπερπαραμέτρους και μπορούμε να χρησιμοποιήσουμε αυτήν την κατανόηση για να ενημερώσουμε την επόμενη εργασία συντονισμού. Μπορούμε να αναθεωρήσουμε τις υπερπαραμέτρους και το εύρος τιμών τους με βάση αυτά που μάθαμε και επομένως να μετατρέψουμε αυτήν την προσπάθεια βελτιστοποίησης σε συζήτηση. Και με τον ίδιο τρόπο που εμείς ως επαγγελματίες ML συσσωρεύουμε γνώση σε αυτές τις διαδρομές, Amazon SageMaker Automatic Model Tuning (AMT) με θερμές εκκινήσεις μπορεί να διατηρήσει αυτή τη γνώση που αποκτήθηκε σε προηγούμενες εργασίες συντονισμού και για την επόμενη εργασία συντονισμού.
Σε αυτήν την ανάρτηση, εκτελούμε πολλές εργασίες HPO με έναν προσαρμοσμένο αλγόριθμο εκπαίδευσης και διαφορετικές στρατηγικές HPO, όπως η Bayesian βελτιστοποίηση και η τυχαία αναζήτηση. Βάζουμε επίσης τις θερμές εκκινήσεις σε δράση και συγκρίνουμε οπτικά τις δοκιμές μας για να βελτιώσουμε την υπερπαραμετρική εξερεύνηση του διαστήματος.
Προηγμένες έννοιες του SageMaker AMT
Στις επόμενες ενότητες, ρίχνουμε μια πιο προσεκτική ματιά σε καθένα από τα παρακάτω θέματα και δείχνουμε πώς το SageMaker AMT μπορεί να σας βοηθήσει να τα εφαρμόσετε στα έργα σας ML:
- Χρησιμοποιήστε προσαρμοσμένο κώδικα εκπαίδευσης και το δημοφιλές πλαίσιο ML Scikit-learn στο SageMaker Training
- Καθορίστε προσαρμοσμένες μετρήσεις αξιολόγησης με βάση τα αρχεία καταγραφής για αξιολόγηση και βελτιστοποίηση
- Εκτελέστε HPO χρησιμοποιώντας μια κατάλληλη στρατηγική
- Χρησιμοποιήστε θερμές εκκινήσεις για να μετατρέψετε μια μεμονωμένη αναζήτηση υπερπαραμέτρων σε διάλογο με το μοντέλο μας
- Χρησιμοποιήστε προηγμένες τεχνικές οπτικοποίησης χρησιμοποιώντας τη βιβλιοθήκη λύσεων μας για να συγκρίνετε δύο στρατηγικές HPO και να ρυθμίσετε τα αποτελέσματα εργασιών
Είτε χρησιμοποιείτε τους ενσωματωμένους αλγόριθμους που χρησιμοποιούνται στην πρώτη μας ανάρτηση είτε τον δικό σας εκπαιδευτικό κώδικα, το SageMaker AMT προσφέρει μια απρόσκοπτη εμπειρία χρήστη για βελτιστοποίηση μοντέλων ML. Παρέχει βασική λειτουργικότητα που σας επιτρέπει να εστιάσετε στο πρόβλημα ML ενώ παρακολουθείτε αυτόματα τις δοκιμές και τα αποτελέσματα. Ταυτόχρονα, διαχειρίζεται αυτόματα την υποκείμενη υποδομή για εσάς.
Σε αυτήν την ανάρτηση, απομακρυνόμαστε από έναν ενσωματωμένο αλγόριθμο του SageMaker και χρησιμοποιούμε προσαρμοσμένο κώδικα. Χρησιμοποιούμε ένα τυχαίο δάσος από SkLearn. Αλλά παραμένουμε στην ίδια εργασία και σύνολο δεδομένων ML όπως και στο δικό μας πρώτη θέση, το οποίο ανιχνεύει χειρόγραφα ψηφία. Καλύπτουμε το περιεχόμενο του σημειωματάριου Jupyter 2_advanced_tuning_with_custom_training_and_visualizing.ipynb και σας προσκαλούν να επικαλεστείτε τον κώδικα δίπλα-δίπλα για να διαβάσετε περαιτέρω.
Ας βουτήξουμε βαθύτερα και ας ανακαλύψουμε πώς μπορούμε να χρησιμοποιήσουμε προσαρμοσμένο κώδικα εκπαίδευσης, να τον αναπτύξουμε και να τον εκτελέσουμε, ενώ εξερευνούμε τον χώρο αναζήτησης υπερπαραμέτρων για να βελτιστοποιήσουμε τα αποτελέσματά μας.
Πώς να δημιουργήσετε ένα μοντέλο ML και να εκτελέσετε βελτιστοποίηση υπερπαραμέτρων
Πώς μοιάζει μια τυπική διαδικασία για την κατασκευή μιας λύσης ML; Αν και υπάρχουν πολλές πιθανές περιπτώσεις χρήσης και μια μεγάλη ποικιλία εργασιών ML εκεί έξω, προτείνουμε το ακόλουθο νοητικό μοντέλο για μια σταδιακή προσέγγιση:
- Κατανοήστε το σενάριο ML που έχετε στο χέρι και επιλέξτε έναν αλγόριθμο με βάση τις απαιτήσεις. Για παράδειγμα, μπορεί να θέλετε να λύσετε μια εργασία αναγνώρισης εικόνας χρησιμοποιώντας έναν εποπτευόμενο αλγόριθμο εκμάθησης. Σε αυτήν την ανάρτηση, συνεχίζουμε να χρησιμοποιούμε το χειρόγραφο σενάριο αναγνώρισης εικόνας και το ίδιο σύνολο δεδομένων όπως στην πρώτη μας ανάρτηση.
- Αποφασίστε ποια εφαρμογή του αλγορίθμου στο SageMaker Training θέλετε να χρησιμοποιήσετε. Υπάρχουν διάφορες επιλογές, μέσα στο SageMaker ή εξωτερικές. Επιπλέον, πρέπει να ορίσετε ποια υποκείμενη μέτρηση ταιριάζει καλύτερα στην εργασία σας και για την οποία θέλετε να βελτιστοποιήσετε (όπως ακρίβεια, βαθμολογία F1 ή ROC). Το SageMaker υποστηρίζει τέσσερις επιλογές ανάλογα με τις ανάγκες και τους πόρους σας:
- Χρησιμοποιήστε ένα προεκπαιδευμένο μοντέλο μέσω Amazon SageMaker JumpStart, το οποίο μπορείτε να χρησιμοποιήσετε εκτός συσκευασίας ή απλώς να το ρυθμίσετε με ακρίβεια.
- Χρησιμοποιήστε έναν από τους ενσωματωμένους αλγόριθμους για εκπαίδευση και συντονισμό, όπως το XGBoost, όπως κάναμε στην προηγούμενη ανάρτησή μας.
- Εκπαιδεύστε και συντονίστε ένα προσαρμοσμένο μοντέλο που βασίζεται σε ένα από τα κύρια πλαίσια όπως το Scikit-learn, το TensorFlow ή το PyTorch. Το AWS παρέχει μια επιλογή προκατασκευασμένων εικόνων Docker για αυτόν τον σκοπό. Για αυτήν την ανάρτηση, χρησιμοποιούμε αυτήν την επιλογή, η οποία σας επιτρέπει να πειραματιστείτε γρήγορα εκτελώντας τον δικό σας κώδικα πάνω από μια προκατασκευασμένη εικόνα κοντέινερ.
- Φέρτε τη δική σας προσαρμοσμένη εικόνα Docker σε περίπτωση που θέλετε να χρησιμοποιήσετε ένα πλαίσιο ή λογισμικό που δεν υποστηρίζεται διαφορετικά. Αυτή η επιλογή απαιτεί τη μεγαλύτερη προσπάθεια, αλλά παρέχει επίσης τον υψηλότερο βαθμό ευελιξίας και ελέγχου.
- Εκπαιδεύστε το μοντέλο με τα δεδομένα σας. Ανάλογα με την εφαρμογή του αλγορίθμου από το προηγούμενο βήμα, αυτό μπορεί να είναι τόσο απλό όσο η αναφορά των δεδομένων εκπαίδευσης και η εκτέλεση της εργασίας εκπαίδευσης ή με την παροχή επιπλέον προσαρμοσμένου κώδικα για εκπαίδευση. Στην περίπτωσή μας, χρησιμοποιούμε κάποιο προσαρμοσμένο κώδικα εκπαίδευσης στην Python που βασίζεται στο Scikit-learn.
- Εφαρμόστε βελτιστοποίηση υπερπαραμέτρων (ως «συνομιλία» με το μοντέλο ML σας). Μετά την εκπαίδευση, συνήθως θέλετε να βελτιστοποιήσετε την απόδοση του μοντέλου σας βρίσκοντας τον πιο πολλά υποσχόμενο συνδυασμό τιμών για τις υπερπαραμέτρους του αλγορίθμου σας.
Ανάλογα με τον αλγόριθμο ML και το μέγεθος του μοντέλου σας, το τελευταίο βήμα βελτιστοποίησης υπερπαραμέτρων μπορεί να αποδειχθεί μεγαλύτερη πρόκληση από την αναμενόμενη. Οι ακόλουθες ερωτήσεις είναι τυπικές για τους επαγγελματίες ML σε αυτό το στάδιο και μπορεί να σας φανούν γνωστές:
- Τι είδους υπερπαράμετροι έχουν αντίκτυπο στο πρόβλημα ML μου;
- Πώς μπορώ να αναζητήσω αποτελεσματικά έναν τεράστιο χώρο υπερπαραμέτρων για να βρω αυτές τις τιμές με την καλύτερη απόδοση;
- Πώς επηρεάζει ο συνδυασμός ορισμένων τιμών υπερπαραμέτρων τη μέτρηση απόδοσής μου;
- Το κόστος έχει σημασία. πώς μπορώ να χρησιμοποιήσω τους πόρους μου με αποτελεσματικό τρόπο;
- Τι είδους πειράματα συντονισμού αξίζουν και πώς μπορώ να τα συγκρίνω;
Δεν είναι εύκολο να απαντήσετε σε αυτές τις ερωτήσεις, αλλά υπάρχουν καλά νέα. Το SageMaker AMT παίρνει τα βαριά από εσάς και σας επιτρέπει να επικεντρωθείτε στην επιλογή της σωστής στρατηγικής HPO και τιμών τιμών που θέλετε να εξερευνήσετε. Επιπλέον, η λύση οπτικοποίησης μας διευκολύνει την επαναληπτική ανάλυση και τη διαδικασία πειραματισμού για την αποτελεσματική εύρεση τιμών υπερπαραμέτρων με καλή απόδοση.
Στις επόμενες ενότητες, κατασκευάζουμε ένα μοντέλο αναγνώρισης ψηφίων από την αρχή χρησιμοποιώντας το Scikit-learn και δείχνουμε όλες αυτές τις έννοιες σε δράση.
Επισκόπηση λύσεων
Το SageMaker προσφέρει μερικές πολύ χρήσιμες λειτουργίες για την εκπαίδευση, την αξιολόγηση και τον συντονισμό του μοντέλου μας. Καλύπτει όλες τις λειτουργίες ενός κύκλου ζωής ML από άκρο σε άκρο, επομένως δεν χρειάζεται καν να αφήσουμε το σημειωματάριό μας Jupyter.
Στην πρώτη μας ανάρτηση, χρησιμοποιήσαμε τον ενσωματωμένο αλγόριθμο SageMaker XGBoost. Για λόγους επίδειξης, αυτή τη φορά μεταβαίνουμε σε έναν ταξινομητή Random Forest επειδή μπορούμε στη συνέχεια να δείξουμε πώς να παρέχετε τον δικό σας κώδικα εκπαίδευσης. Επιλέξαμε να παρέχουμε το δικό μας σενάριο Python και να χρησιμοποιήσουμε το Scikit-learn ως πλαίσιο. Τώρα, πώς εκφράζουμε ότι θέλουμε να χρησιμοποιήσουμε ένα συγκεκριμένο πλαίσιο ML; Όπως θα δούμε, το SageMaker χρησιμοποιεί μια άλλη υπηρεσία AWS στο παρασκήνιο για να ανακτήσει μια προκατασκευασμένη εικόνα κοντέινερ Docker για εκπαίδευση—Μητρώο εμπορευματοκιβωτίων Amazon Elastic (ECR Amazon).
Καλύπτουμε λεπτομερώς τα ακόλουθα βήματα, συμπεριλαμβανομένων αποσπασμάτων κώδικα και διαγραμμάτων για τη σύνδεση των κουκκίδων. Όπως αναφέρθηκε προηγουμένως, εάν έχετε την ευκαιρία, ανοίξτε το σημειωματάριο και εκτελέστε τα κελιά κώδικα βήμα προς βήμα για να δημιουργήσετε τα τεχνουργήματα στο περιβάλλον AWS σας. Δεν υπάρχει καλύτερος τρόπος ενεργητικής μάθησης.
- Πρώτα, φορτώστε και προετοιμάστε τα δεδομένα. Χρησιμοποιούμε Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3) για να ανεβάσετε ένα αρχείο που περιέχει τα χειρόγραφα ψηφία μας.
- Στη συνέχεια, προετοιμάστε το σενάριο εκπαίδευσης και τις εξαρτήσεις πλαισίου. Παρέχουμε τον προσαρμοσμένο κώδικα εκπαίδευσης στην Python, παραπέμπουμε σε ορισμένες εξαρτημένες βιβλιοθήκες και κάνουμε μια δοκιμαστική εκτέλεση.
- Για να ορίσουμε τις μετρήσεις προσαρμοσμένου στόχου, το SageMaker μας επιτρέπει να ορίσουμε μια τυπική έκφραση για να εξαγάγουμε τις μετρήσεις που χρειαζόμαστε από τα αρχεία καταγραφής κοντέινερ.
- Εκπαιδεύστε το μοντέλο χρησιμοποιώντας το πλαίσιο scikit-learn. Αναφέροντας μια προκατασκευασμένη εικόνα κοντέινερ, δημιουργούμε ένα αντίστοιχο αντικείμενο Εκτιμητή και περνάμε το προσαρμοσμένο σενάριο εκπαίδευσης.
- Το AMT μας δίνει τη δυνατότητα να δοκιμάσουμε διάφορες στρατηγικές HPO. Επικεντρωνόμαστε σε δύο από αυτές για αυτήν την ανάρτηση: τυχαία αναζήτηση και αναζήτηση Bayesian.
- Επιλέξτε μεταξύ των στρατηγικών SageMaker HPO.
- Οραματιστείτε, αναλύστε και συγκρίνετε τα αποτελέσματα συντονισμού. Το πακέτο οπτικοποίησης μας επιτρέπει να ανακαλύψουμε ποια στρατηγική έχει καλύτερη απόδοση και ποιες τιμές υπερπαραμέτρων παρέχουν την καλύτερη απόδοση με βάση τις μετρήσεις μας.
- Συνεχίστε την εξερεύνηση του χώρου υπερπαραμέτρων και ξεκινήστε θερμά τις εργασίες HPO.
Η AMT φροντίζει για την κλιμάκωση και τη διαχείριση της υποκείμενης υπολογιστικής υποδομής για την εκτέλεση των διαφόρων εργασιών συντονισμού σε Amazon Elastic Compute Cloud (Amazon EC2) περιπτώσεις. Με αυτόν τον τρόπο, δεν χρειάζεται να επιβαρύνεστε με περιπτώσεις παροχής, να χειρίζεστε προβλήματα λειτουργικού συστήματος και υλικού ή να συγκεντρώνετε αρχεία καταγραφής μόνοι σας. Η εικόνα του πλαισίου ML ανακτάται από το Amazon ECR και τα τεχνουργήματα του μοντέλου, συμπεριλαμβανομένων των αποτελεσμάτων συντονισμού, αποθηκεύονται στο Amazon S3. Όλα τα αρχεία καταγραφής και οι μετρήσεις συλλέγονται στο amazoncloudwatch για εύκολη πρόσβαση και περαιτέρω ανάλυση εάν χρειάζεται.
Προϋποθέσεις
Επειδή πρόκειται για συνέχεια μιας σειράς, συνιστάται, αλλά όχι απαραίτητα, η ανάγνωση η πρώτη μας ανάρτηση σχετικά με το SageMaker AMT και το HPO. Εκτός από αυτό, η βασική εξοικείωση με τις έννοιες ML και τον προγραμματισμό Python είναι χρήσιμη. Συνιστούμε επίσης να ακολουθήσετε κάθε βήμα στο συνοδευτικό σημειωματάριο από το αποθετήριο του GitHub κατά την ανάγνωση αυτής της ανάρτησης. Το σημειωματάριο μπορεί να εκτελεστεί ανεξάρτητα από το πρώτο, αλλά χρειάζεται κάποιο κώδικα από υποφακέλους. Βεβαιωθείτε ότι έχετε κλωνοποιήσει το πλήρες αποθετήριο στο περιβάλλον σας, όπως περιγράφεται στο αρχείο README.
Ο πειραματισμός με τον κώδικα και η χρήση των επιλογών διαδραστικής απεικόνισης βελτιώνει σημαντικά την μαθησιακή σας εμπειρία. Λοιπόν, ελέγξτε το.
Φορτώστε και προετοιμάστε τα δεδομένα
Ως πρώτο βήμα, φροντίζουμε να έχετε κατεβάσει ψηφιακά δεδομένα που χρειαζόμαστε για εκπαίδευση είναι προσβάσιμη στο SageMaker. Το Amazon S3 μας επιτρέπει να το κάνουμε αυτό με ασφαλή και επεκτάσιμο τρόπο. Ανατρέξτε στο σημειωματάριο για τον πλήρη πηγαίο κώδικα και μη διστάσετε να τον προσαρμόσετε με τα δικά σας δεδομένα.
Η digits.csv
Το αρχείο περιέχει δεδομένα χαρακτηριστικών και ετικέτες. Κάθε ψηφίο αντιπροσωπεύεται από τιμές pixel σε μια εικόνα 8×8, όπως απεικονίζεται στην παρακάτω εικόνα για το ψηφίο 4.
Προετοιμάστε το σενάριο εκπαίδευσης και τις εξαρτήσεις πλαισίου
Τώρα που τα δεδομένα αποθηκεύονται στον κάδο S3, μπορούμε να ορίσουμε το προσαρμοσμένο σενάριο εκπαίδευσης με βάση Scikit-μάθετε στην Python. Το SageMaker μας δίνει την επιλογή να αναφέρουμε απλώς το αρχείο Python αργότερα για εκπαίδευση. Οποιεσδήποτε εξαρτήσεις όπως οι βιβλιοθήκες Scikit-learn ή pandas μπορούν να παρέχονται με δύο τρόπους:
- Μπορούν να προσδιορίζονται ρητά στο α
requirements.txt
φιλέτο - Είναι προεγκατεστημένα στην υποκείμενη εικόνα κοντέινερ ML, η οποία παρέχεται είτε από το SageMaker είτε προσαρμοσμένη
Και οι δύο επιλογές θεωρούνται γενικά τυπικοί τρόποι διαχείρισης εξαρτήσεων, επομένως μπορεί να είστε ήδη εξοικειωμένοι με αυτό. Υποστηρίζει το SageMaker μια ποικιλία πλαισίων ML σε ένα διαχειριζόμενο περιβάλλον έτοιμο προς χρήση. Αυτό περιλαμβάνει πολλά από τα πιο δημοφιλή πλαίσια επιστήμης δεδομένων και ML όπως τα PyTorch, TensorFlow ή Scikit-learn, όπως στην περίπτωσή μας. Δεν χρησιμοποιούμε επιπλέον requirements.txt
αρχείο, αλλά μη διστάσετε να προσθέσετε μερικές βιβλιοθήκες για να το δοκιμάσετε.
Ο κώδικας της εφαρμογής μας περιέχει μια μέθοδο που ονομάζεται fit()
, το οποίο δημιουργεί έναν νέο ταξινομητή για την εργασία αναγνώρισης ψηφίων και τον εκπαιδεύει. Σε αντίθεση με την πρώτη μας ανάρτηση όπου χρησιμοποιήσαμε τον ενσωματωμένο αλγόριθμο XGBoost SageMaker, τώρα χρησιμοποιούμε ένα RandomForestClassifier
παρέχεται από τη βιβλιοθήκη ML sklearn. Το κάλεσμα των fit()
Η μέθοδος στο αντικείμενο ταξινομητή ξεκινά τη διαδικασία εκπαίδευσης χρησιμοποιώντας ένα υποσύνολο (80%) των δεδομένων CSV μας:
Δείτε το πλήρες σενάριο στο σημειωματάριό μας Jupyter στο GitHub.
Πριν περιστρέψετε πόρους κοντέινερ για την πλήρη διαδικασία εκπαίδευσης, προσπαθήσατε να εκτελέσετε απευθείας το σενάριο; Αυτή είναι μια καλή πρακτική για να διασφαλίσετε γρήγορα ότι ο κώδικας δεν έχει συντακτικά σφάλματα, να ελέγξετε για αντιστοίχιση διαστάσεων των δομών δεδομένων σας και ορισμένα άλλα σφάλματα από νωρίς.
Υπάρχουν δύο τρόποι για να εκτελέσετε τον κώδικά σας τοπικά. Αρχικά, μπορείτε να το εκτελέσετε αμέσως στο σημειωματάριο, το οποίο σας επιτρέπει επίσης να χρησιμοποιήσετε το Python Debugger pdb
:
Εναλλακτικά, εκτελέστε το σενάριο τρένου από τη γραμμή εντολών με τον ίδιο τρόπο που μπορεί να θέλετε να το χρησιμοποιήσετε σε ένα κοντέινερ. Αυτό υποστηρίζει επίσης τη ρύθμιση διαφόρων παραμέτρων και την αντικατάσταση των προεπιλεγμένων τιμών όπως απαιτείται, για παράδειγμα:
Ως έξοδο, μπορείτε να δείτε τα πρώτα αποτελέσματα για την απόδοση του μοντέλου με βάση την ακρίβεια των αντικειμενικών μετρήσεων, την ανάκληση και τη βαθμολογία F1. Για παράδειγμα, pre: 0.970 rec: 0.969 f1: 0.969
.
Δεν είναι κακό για μια τόσο γρήγορη προπόνηση. Αλλά από πού προήλθαν αυτοί οι αριθμοί και τι κάνουμε με αυτούς;
Καθορίστε προσαρμοσμένες αντικειμενικές μετρήσεις
Θυμηθείτε, στόχος μας είναι να εκπαιδεύσουμε πλήρως και να συντονίσουμε το μοντέλο μας με βάση τις αντικειμενικές μετρήσεις που θεωρούμε σχετικές για την εργασία μας. Επειδή χρησιμοποιούμε ένα προσαρμοσμένο σενάριο εκπαίδευσης, πρέπει να ορίσουμε ρητά αυτές τις μετρήσεις για το SageMaker.
Το σενάριό μας εκπέμπει την ακρίβεια μετρήσεων, την ανάκληση και το σκορ F1 κατά τη διάρκεια της προπόνησης απλά χρησιμοποιώντας το print
λειτουργία:
Η τυπική έξοδος καταγράφεται από το SageMaker και αποστέλλεται στο CloudWatch ως ροή καταγραφής. Για να ανακτήσουμε τις τιμές μετρήσεων και να εργαστούμε με αυτές αργότερα στο SageMaker AMT, πρέπει να παρέχουμε ορισμένες πληροφορίες σχετικά με τον τρόπο ανάλυσης αυτής της εξόδου. Μπορούμε να το πετύχουμε αυτό ορίζοντας δηλώσεις κανονικών εκφράσεων (για περισσότερες πληροφορίες, ανατρέξτε στο Παρακολούθηση και ανάλυση εργασιών εκπαίδευσης χρησιμοποιώντας μετρήσεις Amazon CloudWatch):
Ας δούμε μαζί τον πρώτο ορισμό της μέτρησης στον προηγούμενο κώδικα. Το SageMaker θα αναζητήσει έξοδο στο αρχείο καταγραφής με το οποίο ξεκινά pre:
και ακολουθείται από ένα ή περισσότερα κενά και μετά έναν αριθμό που θέλουμε να εξαγάγουμε, γι' αυτό χρησιμοποιούμε τη στρογγυλή παρένθεση. Κάθε φορά που το SageMaker βρίσκει μια τέτοια τιμή, τη μετατρέπει σε μέτρηση CloudWatch με το όνομα valid-precision
.
Εκπαιδεύστε το μοντέλο χρησιμοποιώντας το πλαίσιο Scikit-learn
Αφού δημιουργήσουμε το προπονητικό μας σενάριο train.py
και δίνουμε οδηγίες στο SageMaker για τον τρόπο παρακολούθησης των μετρήσεων στο CloudWatch, ορίζουμε α Εκτιμητής SageMaker αντικείμενο. Ξεκινά την εργασία εκπαίδευσης και χρησιμοποιεί τον τύπο παρουσίας που καθορίζουμε. Αλλά πώς μπορεί αυτός ο τύπος παρουσίας να είναι διαφορετικός από αυτόν που εκτελείτε Στούντιο Amazon SageMaker σημειωματάριο και γιατί; Το SageMaker Studio εκτελεί τις εργασίες εκπαίδευσης (και εξαγωγής συμπερασμάτων) σε ξεχωριστές περιπτώσεις υπολογισμού από το σημειωματάριό σας. Αυτό σας επιτρέπει να συνεχίσετε να εργάζεστε στο σημειωματάριό σας ενώ οι εργασίες εκτελούνται στο παρασκήνιο.
Η παράμετρος framework_version
αναφέρεται στην έκδοση Scikit-learn που χρησιμοποιούμε για την εκπαιδευτική μας εργασία. Εναλλακτικά, μπορούμε να περάσουμε image_uri
στο estimator
. Μπορείτε να ελέγξετε εάν το αγαπημένο σας πλαίσιο ή η βιβλιοθήκη ML είναι διαθέσιμη ως α προ-ενσωματωμένη εικόνα SageMaker Docker και χρησιμοποιήστε το ως έχει ή με προεκτάσεις.
Επιπλέον, μπορούμε να εκτελέσουμε εργασίες εκπαίδευσης SageMaker σε EC2 Spot Instances με ρύθμιση use_spot_instances
προς την True
. Είναι περιπτώσεις πλεονάζουσας χωρητικότητας που μπορούν εξοικονομήστε έως και 90% του κόστους. Αυτές οι περιπτώσεις παρέχουν ευελιξία σχετικά με το πότε εκτελούνται οι εργασίες κατάρτισης.
Αφού ρυθμιστεί το αντικείμενο Εκτιμητής, ξεκινάμε την εκπαίδευση καλώντας το fit()
λειτουργία, παρέχοντας τη διαδρομή προς το σύνολο δεδομένων εκπαίδευσης στο Amazon S3. Μπορούμε να χρησιμοποιήσουμε την ίδια μέθοδο για να παρέχουμε δεδομένα επικύρωσης και δοκιμής. Ρυθμίσαμε το wait
παράμετρος για την True
ώστε να μπορούμε να χρησιμοποιήσουμε το εκπαιδευμένο μοντέλο στα επόμενα κελιά κώδικα.
estimator.fit({'train': s3_data_url}, wait=True)
Ορισμός υπερπαραμέτρων και εκτέλεση εργασιών συντονισμού
Μέχρι στιγμής, έχουμε εκπαιδεύσει το μοντέλο με ένα σύνολο τιμών υπερπαραμέτρων. Ήταν όμως καλές αυτές οι αξίες; Ή θα μπορούσαμε να ψάξουμε για καλύτερα; Ας χρησιμοποιήσουμε το Κλάση HyperparameterTuner για να εκτελέσετε μια συστηματική αναζήτηση στο χώρο των υπερπαραμέτρων. Πώς αναζητούμε αυτόν τον χώρο με το tuner; Οι απαραίτητες παράμετροι είναι το όνομα της μέτρησης του αντικειμενικού και ο τύπος του στόχου που θα καθοδηγήσουν τη βελτιστοποίηση. Η στρατηγική βελτιστοποίησης είναι ένα άλλο βασικό επιχείρημα για τον δέκτη επειδή καθορίζει περαιτέρω τον χώρο αναζήτησης. Ακολουθούν τέσσερις διαφορετικές στρατηγικές για να διαλέξετε:
- Αναζήτηση πλέγματος
- Τυχαία αναζήτηση
- Βελτιστοποίηση Bayesian (προεπιλογή)
- Υπερζώνη
Περιγράφουμε περαιτέρω αυτές τις στρατηγικές και σας εξοπλίζουμε με κάποιες οδηγίες για να επιλέξετε μία αργότερα σε αυτήν την ανάρτηση.
Πριν ορίσουμε και εκτελέσουμε το αντικείμενο του δέκτη μας, ας ανακεφαλαιώσουμε την κατανόησή μας από την άποψη της αρχιτεκτονικής. Καλύψαμε την αρχιτεκτονική επισκόπηση του SageMaker AMT στο η τελευταία μας ανάρτηση και αναπαράγετε ένα απόσπασμά του εδώ για ευκολία.
Μπορούμε να επιλέξουμε ποιες υπερπαράμετροι θέλουμε να συντονίσουμε ή να αφήσουμε στατικές. Για δυναμικές υπερπαραμέτρους, παρέχουμε hyperparameter_ranges
που μπορεί να χρησιμοποιηθεί για τη βελτιστοποίηση για συντονίσιμες υπερπαραμέτρους. Επειδή χρησιμοποιούμε έναν ταξινομητή Random Forest, χρησιμοποιήσαμε τις υπερπαραμέτρους από το Τεκμηρίωση Random Forest που μαθαίνει Scikit.
Περιορίζουμε επίσης τους πόρους με τον μέγιστο αριθμό εργασιών εκπαίδευσης και παράλληλων εργασιών εκπαίδευσης που μπορεί να χρησιμοποιήσει ο δέκτης. Θα δούμε πώς αυτά τα όρια μας βοηθούν να συγκρίνουμε τα αποτελέσματα διαφόρων στρατηγικών μεταξύ τους.
Παρόμοια με του Εκτιμητή fit
λειτουργία, ξεκινάμε μια εργασία συντονισμού καλώντας τον δέκτη fit
:
Αυτό είναι το μόνο που πρέπει να κάνουμε για να επιτρέψουμε στο SageMaker να εκτελέσει τις εργασίες εκπαίδευσης (n=50
) στο παρασκήνιο, το καθένα χρησιμοποιώντας διαφορετικό σύνολο υπερπαραμέτρων. Εξετάζουμε τα αποτελέσματα αργότερα σε αυτήν την ανάρτηση. Αλλά πριν από αυτό, ας ξεκινήσουμε μια άλλη εργασία συντονισμού, αυτή τη φορά εφαρμόζοντας τη στρατηγική βελτιστοποίησης Bayes. Θα συγκρίνουμε οπτικά και τις δύο στρατηγικές μετά την ολοκλήρωσή τους.
Σημειώστε ότι και οι δύο εργασίες δέκτη μπορούν να εκτελούνται παράλληλα επειδή το SageMaker ενορχηστρώνει τις απαιτούμενες περιπτώσεις υπολογισμού ανεξάρτητα η μία από την άλλη. Αυτό είναι πολύ χρήσιμο για τους επαγγελματίες που πειραματίζονται με διαφορετικές προσεγγίσεις ταυτόχρονα, όπως κάνουμε εμείς εδώ.
Επιλέξτε μεταξύ των στρατηγικών SageMaker HPO
Όσον αφορά τις στρατηγικές συντονισμού, έχετε μερικές επιλογές με το SageMaker AMT: αναζήτηση πλέγματος, τυχαία αναζήτηση, βελτιστοποίηση Bayes και Hyperband. Αυτές οι στρατηγικές καθορίζουν τον τρόπο με τον οποίο οι αλγόριθμοι αυτόματου συντονισμού εξερευνούν τις καθορισμένες περιοχές υπερπαραμέτρων.
Η τυχαία αναζήτηση είναι αρκετά απλή. Επιλέγει τυχαία συνδυασμούς τιμών από τις καθορισμένες περιοχές και μπορεί να εκτελεστεί με διαδοχικό ή παράλληλο τρόπο. Είναι σαν να πετάς βελάκια με δεμένα μάτια, ελπίζοντας να χτυπήσεις τον στόχο. Ξεκινήσαμε με αυτή τη στρατηγική, αλλά θα βελτιωθούν τα αποτελέσματα με μια άλλη;
Η Bayesian βελτιστοποίηση ακολουθεί διαφορετική προσέγγιση από την τυχαία αναζήτηση. Λαμβάνει υπόψη το ιστορικό προηγούμενων επιλογών και επιλέγει τιμές που είναι πιθανό να αποδώσουν τα καλύτερα αποτελέσματα. Εάν θέλετε να μάθετε από προηγούμενες εξερευνήσεις, μπορείτε να το πετύχετε αυτό μόνο με την εκτέλεση μιας νέας εργασίας συντονισμού μετά τις προηγούμενες. Λογικό, σωστά; Με αυτόν τον τρόπο, η Bayesian βελτιστοποίηση εξαρτάται από τις προηγούμενες εκτελέσεις. Αλλά βλέπετε ποια στρατηγική HPO επιτρέπει υψηλότερο παραλληλισμό;
Υπερζώνη είναι ενδιαφέρον! Χρησιμοποιεί μια στρατηγική πολλαπλής πιστότητας, που σημαίνει ότι κατανέμει δυναμικά πόρους στις πιο υποσχόμενες εργασίες κατάρτισης και σταματά εκείνες που παρουσιάζουν χαμηλή απόδοση. Επομένως, η Hyperband είναι υπολογιστικά αποδοτική με πόρους, μαθαίνοντας από προηγούμενες εργασίες κατάρτισης. Μετά τη διακοπή των διαμορφώσεων με χαμηλή απόδοση, ξεκινά μια νέα διαμόρφωση και οι τιμές της επιλέγονται τυχαία.
Ανάλογα με τις ανάγκες σας και τη φύση του μοντέλου σας, μπορείτε να επιλέξετε μεταξύ τυχαίας αναζήτησης, Bayesian βελτιστοποίησης ή Hyperband ως στρατηγική συντονισμού. Το καθένα έχει τη δική του προσέγγιση και τα πλεονεκτήματά του, επομένως είναι σημαντικό να εξετάσετε ποια λειτουργεί καλύτερα για την εξερεύνηση ML. Τα καλά νέα για τους επαγγελματίες ML είναι ότι μπορείτε να επιλέξετε την καλύτερη στρατηγική HPO συγκρίνοντας οπτικά τον αντίκτυπο κάθε δοκιμής στην αντικειμενική μέτρηση. Στην επόμενη ενότητα, βλέπουμε πώς να προσδιορίσουμε οπτικά τον αντίκτυπο διαφορετικών στρατηγικών.
Οραματιστείτε, αναλύστε και συγκρίνετε τα αποτελέσματα συντονισμού
Όταν ολοκληρωθούν οι εργασίες συντονισμού μας, γίνεται συναρπαστικό. Τι αποτελέσματα δίνουν; Τι είδους ώθηση μπορείτε να περιμένετε στη μέτρησή μας σε σύγκριση με το βασικό σας μοντέλο; Ποιες είναι οι υπερπαράμετροι με την καλύτερη απόδοση για την περίπτωση χρήσης μας;
Ένας γρήγορος και απλός τρόπος για να δείτε τα αποτελέσματα HPO είναι να επισκεφτείτε την κονσόλα SageMaker. Κάτω από Εργασίες συντονισμού υπερπαραμέτρων, μπορούμε να δούμε (ανά εργασία συντονισμού) τον συνδυασμό τιμών υπερπαραμέτρων που έχουν δοκιμαστεί και έχουν αποδώσει την καλύτερη απόδοση όπως μετράται από την αντικειμενική μας μέτρηση (valid-f1
).
Αυτό είναι το μόνο που χρειάζεστε; Ως επαγγελματίας ML, μπορεί όχι μόνο να ενδιαφέρεστε για αυτές τις αξίες, αλλά σίγουρα θέλετε να μάθετε περισσότερα για την εσωτερική λειτουργία του μοντέλου σας για να εξερευνήσετε πλήρως τις δυνατότητές του και να ενισχύσετε τη διαίσθησή σας με εμπειρική ανατροφοδότηση.
Ένα καλό εργαλείο οπτικοποίησης μπορεί να σας βοηθήσει πολύ να κατανοήσετε τη βελτίωση από το HPO με την πάροδο του χρόνου και να λάβετε εμπειρική ανατροφοδότηση σχετικά με τις αποφάσεις σχεδιασμού του μοντέλου σας ML. Δείχνει τον αντίκτυπο κάθε μεμονωμένης υπερπαραμέτρου στη μέτρηση του στόχου σας και παρέχει καθοδήγηση για περαιτέρω βελτιστοποίηση των αποτελεσμάτων συντονισμού σας.
Χρησιμοποιούμε το amtviz
προσαρμοσμένο πακέτο οπτικοποίησης για οπτικοποίηση και ανάλυση εργασιών συντονισμού. Είναι απλό στη χρήση και παρέχει χρήσιμες λειτουργίες. Επιδεικνύουμε το πλεονέκτημά του ερμηνεύοντας ορισμένα μεμονωμένα γραφήματα και, τέλος, συγκρίνοντας την τυχαία αναζήτηση δίπλα-δίπλα με τη βελτιστοποίηση Bayesian.
Αρχικά, ας δημιουργήσουμε μια οπτικοποίηση για τυχαία αναζήτηση. Μπορούμε να το κάνουμε αυτό καλώντας visualize_tuning_job()
από amtviz
και περνώντας το πρώτο μας αντικείμενο δέκτη ως όρισμα:
Θα δείτε μερικά γραφήματα, αλλά ας το πάμε βήμα προς βήμα. Το πρώτο διάγραμμα διασποράς από την έξοδο μοιάζει με το ακόλουθο και μας δίνει ήδη κάποιες οπτικές ενδείξεις που δεν θα αναγνωρίζαμε σε κανέναν πίνακα.
Κάθε κουκκίδα αντιπροσωπεύει την απόδοση μιας μεμονωμένης εργασίας εκπαίδευσης (ο στόχος μας valid-f1
στον άξονα y) με βάση τον χρόνο έναρξης του (άξονας x), που παράγεται από ένα συγκεκριμένο σύνολο υπερπαραμέτρων. Επομένως, εξετάζουμε την απόδοση του μοντέλου μας καθώς εξελίσσεται κατά τη διάρκεια της εργασίας συντονισμού.
Η διακεκομμένη γραμμή υπογραμμίζει το καλύτερο αποτέλεσμα που βρέθηκε μέχρι στιγμής και υποδηλώνει βελτίωση με την πάροδο του χρόνου. Οι δύο καλύτερες προπονητικές εργασίες πέτυχαν βαθμολογία F1 περίπου 0.91.
Εκτός από τη διακεκομμένη γραμμή που δείχνει τη αθροιστική πρόοδο, βλέπετε κάποια τάση στο γράφημα;
Πιθανώς όχι. Και αυτό είναι αναμενόμενο, επειδή βλέπουμε τα αποτελέσματα της τυχαίας στρατηγικής HPO. Κάθε εργασία εκπαίδευσης εκτελέστηκε χρησιμοποιώντας ένα διαφορετικό αλλά τυχαία επιλεγμένο σύνολο υπερπαραμέτρων. Εάν συνεχίζαμε τη δουλειά συντονισμού (ή τρέχαμε άλλη με την ίδια ρύθμιση), θα βλέπαμε πιθανώς κάποια καλύτερα αποτελέσματα με την πάροδο του χρόνου, αλλά δεν μπορούμε να είμαστε σίγουροι. Η τυχαιότητα είναι ένα δύσκολο πράγμα.
Τα επόμενα γραφήματα σάς βοηθούν να μετρήσετε την επίδραση των υπερπαραμέτρων στη συνολική απόδοση. Όλες οι υπερπαράμετροι οπτικοποιούνται, αλλά για λόγους συντομίας, εστιάζουμε σε δύο από αυτές: n-estimators
και max-depth
.
Χρησιμοποιούσαμε τις δύο κορυφαίες προπονήσεις μας n-estimators
περίπου 20 και 80, και max-depth
περίπου 10 και 18, αντίστοιχα. Οι ακριβείς τιμές υπερπαραμέτρων εμφανίζονται μέσω επεξήγησης εργαλείου για κάθε κουκκίδα (εργασία εκπαίδευσης). Τονίζονται ακόμη και δυναμικά σε όλα τα γραφήματα και σας δίνουν μια πολυδιάστατη προβολή! Το είδες αυτό? Κάθε υπερπαράμετρος σχεδιάζεται σε σχέση με την αντικειμενική μέτρηση, ως ξεχωριστό γράφημα.
Τώρα, τι είδους γνώσεις έχουμε n-estimators
?
Με βάση το αριστερό γράφημα, φαίνεται ότι τα εύρη πολύ χαμηλών τιμών (κάτω από 10) αποδίδουν πιο συχνά φτωχά αποτελέσματα σε σύγκριση με υψηλότερες τιμές. Επομένως, οι υψηλότερες τιμές μπορεί να βοηθήσουν το μοντέλο σας να έχει καλύτερη απόδοση—ενδιαφέρον.
Αντίθετα, η συσχέτιση των max-depth
Η υπερπαράμετρος της αντικειμενικής μας μέτρησης είναι μάλλον χαμηλή. Δεν μπορούμε να πούμε με σαφήνεια ποια εύρη τιμών έχουν καλύτερη απόδοση από μια γενική άποψη.
Συνοπτικά, η τυχαία αναζήτηση μπορεί να σας βοηθήσει να βρείτε ένα σύνολο υπερπαραμέτρων με καλή απόδοση ακόμη και σε σχετικά σύντομο χρονικό διάστημα. Επίσης, δεν είναι προκατειλημμένο προς μια καλή λύση, αλλά δίνει μια ισορροπημένη άποψη του χώρου αναζήτησης. Ωστόσο, η χρήση των πόρων σας μπορεί να μην είναι πολύ αποτελεσματική. Συνεχίζει να εκτελεί εργασίες εκπαίδευσης με υπερπαραμέτρους σε εύρη τιμών που είναι γνωστό ότι προσφέρουν κακά αποτελέσματα.
Ας εξετάσουμε τα αποτελέσματα της δεύτερης εργασίας συντονισμού με χρήση Bayesian βελτιστοποίησης. Μπορούμε να χρησιμοποιήσουμε amtviz
να οπτικοποιήσουμε τα αποτελέσματα με τον ίδιο τρόπο που κάναμε μέχρι τώρα για τον δέκτη τυχαίας αναζήτησης. Ή, ακόμα καλύτερα, μπορούμε να χρησιμοποιήσουμε τη δυνατότητα της συνάρτησης για να συγκρίνουμε και τις δύο εργασίες συντονισμού σε ένα ενιαίο σύνολο γραφημάτων. Αρκετά βολικό!
Υπάρχουν περισσότερες κουκκίδες τώρα επειδή οπτικοποιούμε τα αποτελέσματα όλων των εργασιών εκπαίδευσης και για τις δύο, την τυχαία αναζήτηση (πορτοκαλί κουκκίδες) και τη βελτιστοποίηση Bayes (μπλε κουκκίδες). Στη δεξιά πλευρά, μπορείτε να δείτε ένα γράφημα πυκνότητας που απεικονίζει την κατανομή όλων των βαθμολογιών F1. Η πλειονότητα των εργασιών εκπαίδευσης πέτυχε αποτελέσματα στο πάνω μέρος της κλίμακας F1 (πάνω από 0.6)—αυτό είναι καλό!
Ποιο είναι το βασικό πακέτο εδώ; Το διάγραμμα διασποράς δείχνει ξεκάθαρα το όφελος της βελτιστοποίησης Bayes. Παρέχει καλύτερα αποτελέσματα με την πάροδο του χρόνου, επειδή μπορεί να μάθει από προηγούμενες εκτελέσεις. Γι' αυτό πετύχαμε σημαντικά καλύτερα αποτελέσματα χρησιμοποιώντας το Bayesian σε σύγκριση με τα τυχαία (0.967 έναντι 0.919) με τον ίδιο αριθμό εργασιών κατάρτισης.
Υπάρχουν ακόμη περισσότερα με τα οποία μπορείτε να κάνετε amtviz
. Ας τρυπήσουμε μέσα.
Εάν δώσετε στο SageMaker AMT την οδηγία να εκτελέσει μεγαλύτερο αριθμό εργασιών για συντονισμό, το να βλέπετε πολλές δοκιμές ταυτόχρονα μπορεί να γίνει ακατάστατο. Αυτός είναι ένας από τους λόγους για τους οποίους κάναμε αυτά τα γραφήματα διαδραστικά. Μπορείτε να κάνετε κλικ και να σύρετε σε κάθε γραφική παράσταση διασποράς υπερπαραμέτρων για να κάνετε μεγέθυνση σε συγκεκριμένα εύρη τιμών και να βελτιώσετε την οπτική σας ερμηνεία των αποτελεσμάτων. Όλα τα άλλα γραφήματα ενημερώνονται αυτόματα. Είναι πολύ χρήσιμο, έτσι δεν είναι; Δείτε τα επόμενα γραφήματα ως παράδειγμα και δοκιμάστε το μόνοι σας στο σημειωματάριό σας!
Ως μαξιμαλιστής συντονισμού, μπορείτε επίσης να αποφασίσετε ότι η εκτέλεση άλλης εργασίας συντονισμού υπερπαραμέτρων θα μπορούσε να βελτιώσει περαιτέρω την απόδοση του μοντέλου σας. Αλλά αυτή τη φορά, μπορεί να διερευνηθεί ένα πιο συγκεκριμένο εύρος τιμών υπερπαραμέτρων, επειδή γνωρίζετε ήδη (περίπου) πού να περιμένετε καλύτερα αποτελέσματα. Για παράδειγμα, μπορείτε να επιλέξετε να εστιάσετε σε τιμές μεταξύ 100–200 για n-estimators
, όπως φαίνεται στο διάγραμμα. Αυτό επιτρέπει στην AMT να επικεντρωθεί στις πιο υποσχόμενες εργασίες εκπαίδευσης και αυξάνει την αποτελεσματικότητά σας συντονισμού.
Για να συνοψίσω, amtviz
σας παρέχει ένα πλούσιο σύνολο δυνατοτήτων οπτικοποίησης που σας επιτρέπουν να κατανοήσετε καλύτερα τον αντίκτυπο των υπερπαραμέτρων του μοντέλου σας στην απόδοση και να επιτρέψετε πιο έξυπνες αποφάσεις στις δραστηριότητές σας συντονισμού.
Συνεχίστε την εξερεύνηση του χώρου υπερπαραμέτρων και ξεκινήστε θερμά τις εργασίες HPO
Είδαμε ότι το AMT μας βοηθά να εξερευνήσουμε αποτελεσματικά τον χώρο αναζήτησης υπερπαραμέτρων. Τι γίνεται όμως αν χρειαζόμαστε πολλούς γύρους συντονισμού για να βελτιώσουμε επαναληπτικά τα αποτελέσματά μας; Όπως αναφέρθηκε στην αρχή, θέλουμε να δημιουργήσουμε έναν κύκλο ανατροφοδότησης βελτιστοποίησης — τη «συζήτησή μας» με το μοντέλο. Χρειάζεται να ξεκινάμε από το μηδέν κάθε φορά;
Ας δούμε την έννοια του τρεξίματος α εργασία συντονισμού υπερπαραμέτρων θερμής εκκίνησης. Δεν ξεκινά νέες εργασίες συντονισμού από την αρχή, επαναχρησιμοποιεί ό,τι έχει μάθει στις προηγούμενες εκτελέσεις HPO. Αυτό μας βοηθά να είμαστε πιο αποτελεσματικοί με τον χρόνο συντονισμού και τους υπολογιστικούς πόρους μας. Μπορούμε να επαναλάβουμε περαιτέρω τα προηγούμενα αποτελέσματα μας. Για να χρησιμοποιήσουμε θερμές εκκινήσεις, δημιουργούμε α WarmStartConfig
και καθορίστε warm_start_type
as IDENTICAL_DATA_AND_ALGORITHM
. Αυτό σημαίνει ότι αλλάζουμε τις τιμές των υπερπαραμέτρων αλλά δεν αλλάζουμε τα δεδομένα ή τον αλγόριθμο. Λέμε στην AMT να μεταφέρει την προηγούμενη γνώση στη νέα μας εργασία συντονισμού.
Αναφερόμενοι στις προηγούμενες εργασίες βελτιστοποίησης Bayes και συντονισμού τυχαίας αναζήτησης ως parents
, μπορούμε να τα χρησιμοποιήσουμε και τα δύο για το ζεστό ξεκίνημα:
Για να δείτε τα οφέλη από τη χρήση θερμών εκκινήσεων, ανατρέξτε στους παρακάτω πίνακες. Αυτά δημιουργούνται από amtviz
με παρόμοιο τρόπο όπως κάναμε νωρίτερα, αλλά αυτή τη φορά προσθέσαμε μια άλλη εργασία συντονισμού βασισμένη σε ένα ζεστό ξεκίνημα.
Στο αριστερό γράφημα, μπορούμε να παρατηρήσουμε ότι οι νέες εργασίες συντονισμού βρίσκονται κυρίως στην επάνω δεξιά γωνία του γραφήματος μέτρησης απόδοσης (βλ. κουκκίδες σημειωμένες με πορτοκαλί χρώμα). Το θερμό ξεκίνημα έχει πράγματι επαναχρησιμοποιήσει τα προηγούμενα αποτελέσματα, γι' αυτό και αυτά τα σημεία δεδομένων βρίσκονται στα κορυφαία αποτελέσματα για τη βαθμολογία F1. Αυτή η βελτίωση αντικατοπτρίζεται επίσης στο γράφημα πυκνότητας στα δεξιά.
Με άλλα λόγια, η AMT επιλέγει αυτόματα πολλά υποσχόμενα σύνολα τιμών υπερπαραμέτρων με βάση τις γνώσεις της από προηγούμενες δοκιμές. Αυτό φαίνεται στο επόμενο διάγραμμα. Για παράδειγμα, ο αλγόριθμος θα δοκιμάσει μια χαμηλή τιμή για n-estimators
λιγότερο συχνά επειδή είναι γνωστό ότι παράγουν κακές βαθμολογίες F1. Δεν σπαταλάμε πόρους σε αυτό, χάρη στις θερμές εκκινήσεις.
εκκαθάριση
Για να αποφύγετε ανεπιθύμητο κόστος όταν τελειώσετε τον πειραματισμό με το HPO, πρέπει να αφαιρέσετε όλα τα αρχεία στον κάδο S3 με το πρόθεμα amt-visualize-demo
και επίσης κλείστε τους πόρους του SageMaker Studio.
Εκτελέστε τον ακόλουθο κώδικα στο σημειωματάριό σας για να αφαιρέσετε όλα τα αρχεία S3 από αυτήν την ανάρτηση:
Εάν θέλετε να διατηρήσετε τα σύνολα δεδομένων ή τα τεχνουργήματα του μοντέλου, μπορείτε να τροποποιήσετε το πρόθεμα στον κώδικα σε amt-visualize-demo/data
για να διαγράψετε μόνο τα δεδομένα ή amt-visualize-demo/output
για να διαγράψετε μόνο τα τεχνουργήματα του μοντέλου.
Συμπέρασμα
Μάθαμε πώς η τέχνη της δημιουργίας λύσεων ML περιλαμβάνει την εξερεύνηση και τη βελτιστοποίηση υπερπαραμέτρων. Η προσαρμογή αυτών των πόμολων και των μοχλών είναι μια απαιτητική αλλά ανταποδοτική διαδικασία που οδηγεί σε ταχύτερους χρόνους εκπαίδευσης, βελτιωμένη ακρίβεια μοντέλου και συνολικά καλύτερες λύσεις ML. Η λειτουργικότητα SageMaker AMT μας βοηθά να εκτελέσουμε πολλές εργασίες συντονισμού και να τις ξεκινήσουμε θερμά, ενώ παρέχει σημεία δεδομένων για περαιτέρω έλεγχο, οπτική σύγκριση και ανάλυση.
Σε αυτήν την ανάρτηση, εξετάσαμε τις στρατηγικές HPO που χρησιμοποιούμε με το SageMaker AMT. Ξεκινήσαμε με την τυχαία αναζήτηση, μια απλή αλλά αποτελεσματική στρατηγική όπου οι υπερπαράμετροι συλλέγονται τυχαία από έναν χώρο αναζήτησης. Στη συνέχεια, συγκρίναμε τα αποτελέσματα με τη βελτιστοποίηση Bayes, η οποία χρησιμοποιεί πιθανοτικά μοντέλα για να καθοδηγήσει την αναζήτηση βέλτιστων υπερπαραμέτρων. Αφού εντοπίσαμε μια κατάλληλη στρατηγική HPO και καλά εύρη τιμών υπερπαραμέτρων μέσω αρχικών δοκιμών, δείξαμε πώς να χρησιμοποιούμε θερμές εκκινήσεις για τον εξορθολογισμό των μελλοντικών εργασιών HPO.
Μπορείτε να εξερευνήσετε τον χώρο αναζήτησης υπερπαραμέτρων συγκρίνοντας ποσοτικά αποτελέσματα. Έχουμε προτείνει την οπτική σύγκριση δίπλα-δίπλα και παρέχουμε το απαραίτητο πακέτο για διαδραστική εξερεύνηση. Πείτε μας στα σχόλια πόσο χρήσιμο ήταν για εσάς στο ταξίδι συντονισμού υπερπαραμέτρων!
Σχετικά με τους συγγραφείς
Ümit Yoldas είναι Senior Solutions Architect με τις Υπηρεσίες Web της Amazon. Συνεργάζεται με εταιρικούς πελάτες σε διάφορες βιομηχανίες στη Γερμανία. Έχει ωθεί να μεταφράσει έννοιες AI σε λύσεις πραγματικού κόσμου. Εκτός δουλειάς, απολαμβάνει χρόνο με την οικογένεια, απολαμβάνοντας καλό φαγητό και επιδιώκει τη γυμναστική.
Ελίνα Λέσικ είναι αρχιτέκτονας λύσεων που βρίσκεται στο Μόναχο. Επικεντρώνεται σε εταιρικούς πελάτες από τον κλάδο των χρηματοοικονομικών υπηρεσιών. Στον ελεύθερο χρόνο της, μπορείς να βρεις την Ελίνα να κατασκευάζει εφαρμογές με γενετική τεχνητή νοημοσύνη σε ορισμένες συναντήσεις πληροφορικής, να οδηγεί μια νέα ιδέα για τη γρήγορη επίλυση της κλιματικής αλλαγής ή να τρέχει στο δάσος για να προετοιμαστεί για έναν ημιμαραθώνιο με τυπική απόκλιση από το προγραμματισμένο πρόγραμμα.
Μαριάνο Καμπ είναι ένας κύριος αρχιτέκτονας λύσεων με τις υπηρεσίες Web της Amazon. Συνεργάζεται με τράπεζες και ασφαλιστικές εταιρείες στη Γερμανία για τη μηχανική μάθηση. Στον ελεύθερο χρόνο του, ο Μαριάνο απολαμβάνει την πεζοπορία με τη γυναίκα του.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoData.Network Vertical Generative Ai. Ενδυναμώστε τον εαυτό σας. Πρόσβαση εδώ.
- PlatoAiStream. Web3 Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- PlatoESG. Ανθρακας, Cleantech, Ενέργεια, Περιβάλλον, Ηλιακός, Διαχείριση των αποβλήτων. Πρόσβαση εδώ.
- PlatoHealth. Ευφυΐα βιοτεχνολογίας και κλινικών δοκιμών. Πρόσβαση εδώ.
- πηγή: https://aws.amazon.com/blogs/machine-learning/explore-advanced-techniques-for-hyperparameter-optimization-with-amazon-sagemaker-automatic-model-tuning/
- :έχει
- :είναι
- :δεν
- :που
- $UP
- 01
- 1
- 10
- 100
- 11
- 12
- 13
- 14
- 17
- 179
- 20
- 200
- 24
- 33
- 50
- 60
- 7
- 80
- 9
- 91
- 970
- a
- Σχετικα
- πρόσβαση
- προσιτός
- Συσσωρεύω
- ακρίβεια
- Κατορθώνω
- επιτευχθεί
- αποκτήθηκαν
- απέναντι
- Ενέργειες
- ενεργός
- δραστηριοτήτων
- προσαρμόσει
- προσθέτω
- προστιθέμενη
- Πρόσθετος
- Επιπλέον
- προηγμένες
- πλεονεκτήματα
- Μετά το
- κατά
- σύνολο
- AI
- αλγόριθμος
- αλγόριθμοι
- Όλα
- κατανέμει
- επιτρέπουν
- επιτρέπει
- κατά μήκος
- ήδη
- Επίσης
- Αν και
- Amazon
- Amazon EC2
- Amazon Sage Maker
- Amazon υπηρεσίες Web
- ποσό
- an
- ανάλυση
- αναλύσει
- και
- Άλλος
- απάντηση
- κάθε
- χώρια
- εφαρμογές
- εφαρμόζοντας
- πλησιάζω
- προσεγγίσεις
- κατάλληλος
- αρχιτεκτονική
- αρχιτεκτονική
- ΕΙΝΑΙ
- επιχείρημα
- γύρω
- Τέχνη
- AS
- At
- αυτόματη
- Αυτόματο
- αυτομάτως
- διαθέσιμος
- αποφύγετε
- μακριά
- AWS
- φόντο
- Κακός
- Τράπεζες
- βάση
- βασίζονται
- βασικός
- Bayesian
- BE
- επειδή
- ήταν
- πριν
- Αρχή
- παρακάτω
- όφελος
- οφέλη
- ΚΑΛΎΤΕΡΟΣ
- Καλύτερα
- μεταξύ
- μεροληπτική
- μεγαλύτερος
- Μπλε
- ώθηση
- και οι δύο
- Κουτί
- χτίζω
- Κτίριο
- ενσωματωμένο
- βάρος
- αλλά
- by
- κλήση
- που ονομάζεται
- κλήση
- CAN
- Μπορεί να πάρει
- δυνατότητες
- ικανότητα
- Χωρητικότητα
- συλλαμβάνονται
- ο οποίος
- περίπτωση
- περιπτώσεις
- Κύτταρα
- ορισμένες
- σίγουρα
- πρόκληση
- ευκαιρία
- αλλαγή
- Διάγραμμα
- Διαγράμματα
- έλεγχος
- Επιλέξτε
- επιλέγοντας
- επιλέγονται
- σαφώς
- κλικ
- Κλίμα
- Κλιματική αλλαγή
- πιο κοντά
- κωδικός
- συνδυασμός
- συνδυασμοί
- Ελάτε
- έρχεται
- σχόλια
- Εταιρείες
- συγκρίνουν
- σύγκριση
- συγκρίνοντας
- σύγκριση
- πλήρης
- ολοκλήρωση
- Υπολογίστε
- επικεντρωθούν
- έννοια
- έννοιες
- διαμόρφωση
- Connect
- Εξετάστε
- θεωρούνται
- θεωρεί
- πρόξενος
- Δοχείο
- Περιέχει
- περιεχόμενο
- συνέχεια
- ΣΥΝΕΧΕΙΑ
- συνέχισε
- συνεχίζεται
- αντίθεση
- έλεγχος
- ευκολία
- Βολικός
- Συνομιλία
- ομιλητικός
- Γωνία
- Συσχέτιση
- Αντίστοιχος
- Δικαστικά έξοδα
- θα μπορούσε να
- Ζευγάρι
- κάλυμμα
- καλύπτονται
- Καλύμματα
- δημιουργία
- δημιουργεί
- δημιουργία
- έθιμο
- Πελάτες
- κύκλος
- ημερομηνία
- σημεία δεδομένων
- επιστημονικά δεδομένα
- σύνολα δεδομένων
- αποφασίζει
- αποφάσεις
- βαθύτερη
- Προεπιλογή
- ορίζεται
- Ορίζει
- καθορίζοντας
- ορισμός
- Πτυχίο
- παραδώσει
- παραδίδεται
- παραδίδει
- απαιτητικές
- αποδεικνύουν
- εξαρτήσεις
- Εξάρτηση
- εξαρτώμενος
- Σε συνάρτηση
- παρατάσσω
- περιγράφουν
- περιγράφεται
- Υπηρεσίες
- λεπτομέρεια
- καθέκαστα
- Προσδιορίστε
- απόκλιση
- διαγράμματα
- διάλογος
- DID
- διαφορετικές
- ψηφία
- Διαστάσεις
- κατευθείαν
- ανακαλύπτουν
- εκτεθειμένος
- διανομή
- κατάδυση
- do
- Λιμενεργάτης
- κάνει
- Όχι
- γίνεται
- Μην
- DOT
- κάτω
- οδηγείται
- οδήγηση
- διάρκεια
- κατά την διάρκεια
- δυναμικός
- δυναμικά
- κάθε
- Νωρίτερα
- Νωρίς
- εύκολος
- αποτελεσματικά
- αποδοτικότητα
- αποτελεσματικός
- αποτελεσματικά
- προσπάθεια
- προσπάθειες
- είτε
- ενεργοποιήσετε
- δίνει τη δυνατότητα
- τέλος
- από άκρη σε άκρη
- Ενισχύει
- εξασφαλίζω
- Εταιρεία
- Περιβάλλον
- λάθη
- εγκαθιδρύω
- αξιολογήσει
- εκτίμηση
- Even
- Κάθε
- εξετάζω
- παράδειγμα
- συναρπαστικός
- αναμένω
- αναμένεται
- εμπειρία
- πείραμα
- πειράματα
- ρητά
- εξερεύνηση
- διερευνήσει
- Εξερευνήθηκε
- Εξερευνώντας
- ρητή
- έκφραση
- εξωτερικός
- εκχύλισμα
- f1
- διευκολύνει
- οικείος
- Εξοικείωση
- οικογένεια
- μακριά
- FAST
- γρηγορότερα
- Αγαπημένα
- Χαρακτηριστικό
- Χαρακτηριστικά
- ανατροφοδότηση
- αισθάνομαι
- λίγοι
- Αρχεία
- Αρχεία
- Τελικά
- οικονομικός
- των χρηματοπιστωτικών υπηρεσιών
- Εύρεση
- εύρεση
- ευρήματα
- Όνομα
- ταιριάζουν
- καταλληλότητα
- Ευελιξία
- Συγκέντρωση
- εστιάζοντας
- ακολουθείται
- Εξής
- τροφή
- Για
- δάσος
- Βρέθηκαν
- τέσσερα
- Πλαίσιο
- πλαισίων
- Δωρεάν
- από
- πλήρη
- πλήρως
- λειτουργία
- λειτουργικότητα
- περαιτέρω
- μελλοντικός
- μετρητής
- General
- γενικά
- παράγεται
- γενετική
- Παραγωγική τεχνητή νοημοσύνη
- Germany
- παίρνω
- GitHub
- Δώστε
- δίνει
- γκολ
- καλός
- γραφική παράσταση
- σε μεγάλο βαθμό
- Πλέγμα
- καθοδήγηση
- καθοδηγήσει
- χέρι
- λαβή
- κινητός
- υλικού
- Έχω
- he
- βαριά
- βαριά ανύψωση
- βοήθεια
- χρήσιμο
- βοηθά
- αυτήν
- εδώ
- υψηλή απόδοση
- υψηλότερο
- υψηλότερο
- υψηλοτερος ΒΑΘΜΟΣ
- Τόνισε
- ανταύγειες
- του
- ιστορία
- Επιτυχία
- ελπίζοντας
- Πως
- Πώς να
- Ωστόσο
- HTML
- http
- HTTPS
- τεράστιος
- Βελτιστοποίηση υπερπαραμέτρων
- Ρύθμιση υπερπαραμέτρων
- i
- ιδέα
- προσδιορίζονται
- προσδιορίσει
- if
- εικόνα
- Αναγνώριση εικόνων
- εικόνες
- Επίπτωση
- επιπτώσεις
- εφαρμογή
- εκτέλεση
- εισαγωγή
- σημαντικό
- βελτίωση
- βελτιωθεί
- βελτίωση
- in
- περιλαμβάνει
- Συμπεριλαμβανομένου
- Αυξήσεις
- πράγματι
- ανεξάρτητα
- υποδηλώνει
- ατομικές
- βιομηχανίες
- βιομηχανία
- επιρροή
- πληροφορώ
- πληροφορίες
- Υποδομή
- αρχικός
- κινήσει
- Αρχίζει
- μέσα
- ιδέες
- παράδειγμα
- ασφάλιση
- διαδραστικό
- ενδιαφερόμενος
- ενδιαφέρον
- ερμηνεία
- σε
- προσκαλούν
- θέματα
- IT
- ΤΟΥ
- Δουλειά
- Θέσεις εργασίας
- ταξίδι
- μόλις
- Διατήρηση
- τήρηση
- Κλειδί
- Είδος
- Ξέρω
- γνώση
- γνωστός
- Ετικέτες
- large
- μεγαλύτερος
- Επίθετο
- αργότερα
- οδηγήσει
- Οδηγεί
- ΜΑΘΑΊΝΩ
- μάθει
- μάθηση
- Άδεια
- αριστερά
- μείον
- ας
- Αφήνει
- βιβλιοθήκες
- Βιβλιοθήκη
- ψέμα
- κύκλος ζωής
- ανύψωση
- Μου αρέσει
- Πιθανός
- LIMIT
- όρια
- γραμμή
- γραμμές
- φορτίο
- τοπικά
- που βρίσκεται
- κούτσουρο
- ματιά
- μοιάζει
- κοίταξε
- ΦΑΊΝΕΤΑΙ
- Χαμηλός
- μηχανή
- μάθηση μηχανής
- που
- διατηρήσουν
- μεγάλες
- Η πλειοψηφία
- κάνω
- ΚΑΝΕΙ
- διαχειρίζεται
- διαχείριση
- διαχειρίζεται
- διαχείριση
- τρόπος
- πολοί
- μαρκαρισμένος
- ταιριάζουν
- ύλη
- μεγισταλιστής
- Αυξάνω στον ανώτατο βαθμό
- ανώτατο όριο
- Ενδέχεται..
- μέσα
- Meetups
- ψυχική
- που αναφέρθηκαν
- μέθοδος
- μετρικός
- Metrics
- ενδέχεται να
- ML
- μοντέλο
- μοντέλα
- τροποποιήσει
- Παρακολούθηση
- περισσότερο
- πιο αποτελεσματικό
- πλέον
- Δημοφιλέστερα
- ως επί το πλείστον
- μετακινήσετε
- πολλαπλούς
- πρέπει
- my
- όνομα
- Φύση
- αναγκαίως
- απαραίτητος
- Ανάγκη
- που απαιτούνται
- ανάγκες
- Νέα
- νέα
- επόμενη
- Όχι.
- σημειωματάριο
- τώρα
- αριθμός
- αριθμοί
- αντικείμενο
- σκοπός
- παρατηρούμε
- of
- προσφορές
- συχνά
- on
- μια φορά
- ONE
- αυτά
- αποκλειστικά
- ανοίξτε
- λειτουργίας
- το λειτουργικό σύστημα
- βέλτιστη
- βελτιστοποίηση
- Βελτιστοποίηση
- βελτιστοποίηση
- Επιλογή
- Επιλογές
- or
- Πορτοκαλί
- ΑΛΛΑ
- Άλλα
- αλλιώς
- δικός μας
- έξω
- αποτελέσματα
- παραγωγή
- εκτός
- επί
- φόρμες
- επισκόπηση
- δική
- πακέτο
- Πάντα
- Παράλληλο
- παράμετρος
- παράμετροι
- μέρος
- Ειδικότερα
- passieren
- Πέρασμα
- μονοπάτι
- για
- Εκτελέστε
- επίδοση
- εκτέλεση
- εκτελεί
- προοπτική
- Εικονοκύτταρο
- προγραμματίζονται
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- σας παρακαλούμε
- σημεία
- φτωχός
- Δημοφιλής
- δυνατός
- Θέση
- δυναμικού
- πρακτική
- προ
- Ακρίβεια
- προβλεπόμενη
- Προετοιμάστε
- αρκετά
- προηγούμενος
- προηγουμένως
- Κύριος
- πιθανώς
- Πρόβλημα
- διαδικασια μας
- παράγει
- Παράγεται
- Προγραμματισμός
- Πρόοδος
- έργα
- υποσχόμενος
- παρέχουν
- παρέχεται
- παρέχει
- χορήγηση
- πρόβλεψη
- σκοπός
- σκοποί
- βάζω
- Python
- pytorch
- ποσοτικός
- Ερωτήσεις
- Γρήγορα
- γρήγορα
- αρκετά
- R
- τυχαίος
- τυχαία
- σειρά
- σειρές
- Τιμή
- μάλλον
- Διάβασε
- Ανάγνωση
- πραγματικό κόσμο
- λόγους
- ανακεφαλαιώσουμε
- αναγνώριση
- αναγνωρίζω
- συνιστώ
- συνιστάται
- παραπέμπω
- αναφορά
- αναφοράς
- αναφέρεται
- τελειοποίηση
- αντανακλάται
- ρεγεξ
- τακτικός
- σχετικά
- αφαιρέστε
- Αποθήκη
- εκπροσωπούνται
- αντιπροσωπεύει
- απαιτείται
- απαιτήσεις
- Απαιτεί
- πόρος
- Υποστηρικτικό υλικό
- αντίστοιχα
- αποτέλεσμα
- Αποτελέσματα
- απόδοση
- ανασκόπηση
- υβρίζω
- ανταμείβοντας
- Πλούσιος
- δεξιά
- περίπου
- γύρος
- γύρους
- τρέξιμο
- τρέξιμο
- τρέχει
- ένα ασφαλές
- σοφός
- Αυτόματος συντονισμός μοντέλων SageMaker
- χάρη
- ίδιο
- επεκτάσιμη
- Κλίμακα
- απολέπιση
- σενάριο
- πρόγραμμα
- Επιστήμη
- scikit-μάθετε
- σκορ
- μηδέν
- γραφή
- αδιάλειπτη
- Αναζήτηση
- Δεύτερος
- Τμήμα
- τμήματα
- δείτε
- βλέποντας
- φαίνεται
- δει
- επιλέγονται
- επιλογή
- αρχαιότερος
- αίσθηση
- ευαίσθητος
- αποστέλλονται
- ξεχωριστό
- Σειρές
- υπηρεσία
- Υπηρεσίες
- Συνεδρίαση
- σειρά
- Σέτς
- τον καθορισμό
- αυτή
- Κοντά
- δείχνουν
- έδειξε
- παρουσιάζεται
- Δείχνει
- πλευρά
- σημαντικός
- σημαντικά
- παρόμοιες
- Απλούς
- απλά
- ενιαίας
- Μέγεθος
- εξυπνότερα
- So
- μέχρι τώρα
- λογισμικό
- λύση
- Λύσεις
- SOLVE
- μερικοί
- Ήχος
- Πηγή
- πρωτογενής κώδικας
- Χώρος
- συγκεκριμένες
- καθορίζεται
- Γνέθω
- Spot
- Στάδιο
- πρότυπο
- Εκκίνηση
- ξεκίνησε
- ξεκινά
- δηλώσεις
- στατικός
- Βήμα
- Βήματα
- στάθμευση
- Διακόπτει
- χώρος στο δίσκο
- αποθηκεύονται
- ειλικρινής
- στρατηγικές
- Στρατηγική
- μετάδοση
- εξορθολογισμό
- δύναμη
- Ενισχύω
- δομές
- στούντιο
- μεταγενέστερος
- τέτοιος
- προτείνω
- κατάλληλος
- ΠΕΡΙΛΗΨΗ
- προμήθεια
- υποστηριζόνται!
- Υποστηρίζει
- βέβαιος
- διακόπτης
- σύνταξη
- σύστημα
- τραπέζι
- Πάρτε
- παίρνει
- στόχος
- Έργο
- εργασίες
- τεχνικές
- πει
- tensorflow
- δοκιμή
- δοκιμαστεί
- από
- Ευχαριστώ
- ότι
- Η
- τους
- Τους
- τότε
- Εκεί.
- επομένως
- Αυτοί
- αυτοί
- πράγμα
- αυτό
- εκείνοι
- τρία
- Μέσω
- Ρίψη
- ώρα
- φορές
- προς την
- μαζι
- εργαλείο
- κορυφή
- Θέματα
- προς
- τροχιά
- Τρένο
- εκπαιδευμένο
- Εκπαίδευση
- τρένα
- μεταφορά
- μεταφράζω
- τάση
- δίκη
- δοκιμές
- αληθής
- προσπαθώ
- αρμονία
- βραχυχρόνιων διακυμάνσεων της ρευστότητας
- ΣΤΡΟΦΗ
- μετατρέπει
- δύο
- τύπος
- τυπικός
- συνήθως
- υπό
- υποκείμενες
- καταλαβαίνω
- κατανόηση
- ανεπιθύμητος
- ενημερώθηκε
- us
- χρήση
- περίπτωση χρήσης
- μεταχειρισμένος
- Χρήστες
- Η εμπειρία χρήστη
- χρησιμοποιεί
- χρησιμοποιώντας
- χρησιμοποιούνται
- επικύρωση
- αξία
- Αξίες
- ποικιλία
- διάφορα
- διαφέρων
- εκδοχή
- πολύ
- μέσω
- Δες
- προβολή
- οραματισμός
- φαντάζομαι
- οπτικά
- vs
- walk
- θέλω
- ζεστός
- ήταν
- Απόβλητα
- Τρόπος..
- τρόπους
- we
- ιστός
- διαδικτυακές υπηρεσίες
- ΛΟΙΠΌΝ
- ήταν
- Τι
- πότε
- αν
- Ποιό
- ενώ
- Ο ΟΠΟΊΟΣ
- WHY
- γυναίκα
- θα
- επιθυμώ
- με
- εντός
- λόγια
- Εργασία
- εργαζόμενος
- εργασίες
- λειτουργεί
- που αξίζει τον κόπο
- θα
- XGBoost
- ακόμη
- Βελτιστοποίηση
- Εσείς
- Σας
- τον εαυτό σας
- zephyrnet
- ζουμ