Ένα από τα πιο δημοφιλή μοντέλα που είναι διαθέσιμα σήμερα είναι το XGBoost. Με την ικανότητα επίλυσης διαφόρων προβλημάτων όπως ταξινόμηση και παλινδρόμηση, το XGBoost έχει γίνει μια δημοφιλής επιλογή που επίσης εμπίπτει στην κατηγορία των μοντέλων που βασίζονται σε δέντρα. Σε αυτήν την ανάρτηση, βουτάμε βαθιά για να δούμε πώς Amazon Sage Maker μπορεί να εξυπηρετήσει αυτά τα μοντέλα χρησιμοποιώντας NVIDIA Triton Inference Server. Ο φόρτος εργασίας εξαγωγής συμπερασμάτων σε πραγματικό χρόνο μπορεί να έχει διαφορετικά επίπεδα απαιτήσεων και συμφωνιών επιπέδου υπηρεσίας (SLA) όσον αφορά τον λανθάνοντα χρόνο και τη διεκπεραίωση, και μπορούν να καλυφθούν με τη χρήση τελικών σημείων σε πραγματικό χρόνο του SageMaker.
Το SageMaker παρέχει μεμονωμένα τελικά σημεία μοντέλου, τα οποία σας επιτρέπουν να αναπτύξετε ένα ενιαίο μοντέλο μηχανικής εκμάθησης (ML) σε ένα λογικό τελικό σημείο. Για άλλες περιπτώσεις χρήσης, μπορείτε να επιλέξετε να διαχειριστείτε το κόστος και την απόδοση χρησιμοποιώντας τελικά σημεία πολλαπλών μοντέλων, που σας επιτρέπουν να καθορίσετε πολλά μοντέλα για φιλοξενία πίσω από ένα λογικό τελικό σημείο. Ανεξάρτητα από την επιλογή που θα επιλέξετε, τα τελικά σημεία του SageMaker επιτρέπουν έναν επεκτάσιμο μηχανισμό ακόμη και για τους πιο απαιτητικούς εταιρικούς πελάτες, ενώ παρέχουν αξία σε μια πληθώρα χαρακτηριστικών, όπως παραλλαγές σκιάς, αυτόματη κλιμάκωση, και εγγενής ενσωμάτωση με amazoncloudwatch (για περισσότερες πληροφορίες, ανατρέξτε στο Μετρήσεις CloudWatch για αναπτύξεις τελικού σημείου πολλαπλών μοντέλων).
Το Triton υποστηρίζει διάφορα backends ως κινητήρες για την υποστήριξη της λειτουργίας και της εξυπηρέτησης διαφόρων μοντέλων ML για συμπεράσματα. Για οποιαδήποτε ανάπτυξη Triton, είναι σημαντικό να γνωρίζετε πώς η συμπεριφορά του backend επηρεάζει τους φόρτους εργασίας σας και τι να περιμένετε, ώστε να είστε επιτυχημένοι. Σε αυτήν την ανάρτηση, σας βοηθάμε να κατανοήσετε το Βιβλιοθήκη συμπερασμάτων Forest (FIL) backend, το οποίο υποστηρίζεται από το Triton στο SageMaker, ώστε να μπορείτε να λαμβάνετε τεκμηριωμένη απόφαση για τον φόρτο εργασίας σας και να έχετε την καλύτερη δυνατή απόδοση και βελτιστοποίηση κόστους.
Βαθιά βουτιά στο backend του FIL
Ο Τρίτων υποστηρίζει το FIL backend για να εξυπηρετούν πρότυπα δέντρων, όπως π.χ XGBoost, LightGBM, scikit-μάθετε Τυχαίο Δάσος, RAPIDS cuML Random Forestκαι οποιοδήποτε άλλο μοντέλο υποστηρίζεται από Τρελίτης. Αυτά τα μοντέλα έχουν χρησιμοποιηθεί από καιρό για την επίλυση προβλημάτων όπως η ταξινόμηση ή η παλινδρόμηση. Αν και αυτοί οι τύποι μοντέλων εκτελούνται παραδοσιακά σε CPU, η δημοτικότητα αυτών των μοντέλων και οι απαιτήσεις εξαγωγής συμπερασμάτων έχουν οδηγήσει σε διάφορες τεχνικές για την αύξηση της απόδοσης συμπερασμάτων. Το backend FIL χρησιμοποιεί πολλές από αυτές τις τεχνικές χρησιμοποιώντας κατασκευές cuML και είναι χτισμένο σε C++ και τη βιβλιοθήκη πυρήνα CUDA για τη βελτιστοποίηση της απόδοσης συμπερασμάτων σε επιταχυντές GPU.
Το backend FIL χρησιμοποιεί τις βιβλιοθήκες του cuML για τη χρήση πυρήνων CPU ή GPU για την επιτάχυνση της εκμάθησης. Για να χρησιμοποιηθούν αυτοί οι επεξεργαστές, τα δεδομένα αναφέρονται από τη μνήμη κεντρικού υπολογιστή (για παράδειγμα, συστοιχίες NumPy) ή συστοιχίες GPU (uDF, Numba, cuPY ή οποιαδήποτε βιβλιοθήκη που υποστηρίζει __cuda_array_interface__
) API. Αφού τα δεδομένα τοποθετηθούν στη μνήμη, το backend του FIL μπορεί να εκτελέσει επεξεργασία σε όλους τους διαθέσιμους πυρήνες CPU ή GPU.
Τα νήματα υποστήριξης FIL μπορούν να επικοινωνούν μεταξύ τους χωρίς τη χρήση κοινής μνήμης του κεντρικού υπολογιστή, αλλά σε φόρτους εργασίας συνόλου, θα πρέπει να λαμβάνεται υπόψη η μνήμη του κεντρικού υπολογιστή. Το παρακάτω διάγραμμα δείχνει μια αρχιτεκτονική χρόνου εκτέλεσης χρονοπρογραμματιστή συνόλου όπου έχετε τη δυνατότητα να ρυθμίσετε με ακρίβεια τις περιοχές μνήμης, συμπεριλαμβανομένης της κοινόχρηστης μνήμης με δυνατότητα διεύθυνσης CPU που χρησιμοποιείται για επικοινωνία μεταξύ διεργασιών μεταξύ Triton (C++) και της διεργασίας Python (οπίσθιο σύστημα Python) για ανταλλαγή τανυστές (εισόδου/εξόδου) με το backend FIL.
Ο διακομιστής Triton Inference παρέχει διαμορφώσιμες επιλογές στους προγραμματιστές για να συντονίσουν τον φόρτο εργασίας τους και να βελτιστοποιήσουν την απόδοση του μοντέλου. Η διαμόρφωση dynamic_batching
επιτρέπει στον Triton να κρατά αιτήματα από την πλευρά του πελάτη και να τα ομαδοποιεί στην πλευρά του διακομιστή, προκειμένου να χρησιμοποιεί αποτελεσματικά τον παράλληλο υπολογισμό του FIL για να συμπεράνει ολόκληρη την παρτίδα μαζί. Η επιλογή max_queue_delay_microseconds
προσφέρει έναν ασφαλή έλεγχο του χρόνου που περιμένει ο Triton για να σχηματίσει μια παρτίδα.
Υπάρχουν πολλά άλλα ειδικά για το FIL διαθέσιμες επιλογές που επηρεάζουν την απόδοση και τη συμπεριφορά. Προτείνουμε να ξεκινήσετε με storage_type
. Κατά την εκτέλεση του backend σε GPU, το FIL δημιουργεί μια νέα δομή μνήμης/δεδομένων που είναι μια αναπαράσταση του δέντρου για το οποίο το FIL μπορεί να επηρεάσει την απόδοση και το αποτύπωμα. Αυτό μπορεί να διαμορφωθεί μέσω της παραμέτρου περιβάλλοντος storage_type
, το οποίο έχει τις επιλογές πυκνό, αραιό και αυτόματο. Η επιλογή της πυκνής επιλογής θα καταναλώσει περισσότερη μνήμη GPU και δεν οδηγεί πάντα σε καλύτερη απόδοση, επομένως είναι καλύτερο να το ελέγξετε. Αντίθετα, η αραιή επιλογή θα καταναλώνει λιγότερη μνήμη GPU και μπορεί ενδεχομένως να αποδώσει εξίσου καλά ή καλύτερα από την πυκνή. Η επιλογή αυτόματης θα προκαλέσει την προεπιλεγμένη πυκνότητα του μοντέλου, εκτός εάν κάτι τέτοιο θα καταναλώσει σημαντικά περισσότερη μνήμη GPU από την αραιή.
Όσον αφορά την απόδοση του μοντέλου, μπορείτε να εξετάσετε το ενδεχόμενο να τονίσετε το threads_per_tree
επιλογή. Ένα πράγμα που μπορεί να παραβλέψετε σε σενάρια πραγματικού κόσμου είναι αυτό threads_per_tree
μπορεί να έχει μεγαλύτερο αντίκτυπο στην απόδοση από οποιαδήποτε άλλη παράμετρο. Η ρύθμιση σε οποιαδήποτε ισχύ 2 από 1–32 είναι θεμιτή. Η βέλτιστη τιμή είναι δύσκολο να προβλεφθεί για αυτήν την παράμετρο, αλλά όταν ο διακομιστής αναμένεται να αντιμετωπίσει υψηλότερο φορτίο ή να επεξεργαστεί μεγαλύτερα μεγέθη παρτίδας, τείνει να επωφεληθεί από μεγαλύτερη τιμή από ό,τι όταν επεξεργάζεται μερικές σειρές κάθε φορά.
Μια άλλη παράμετρος που πρέπει να γνωρίζετε είναι algo
, το οποίο είναι επίσης διαθέσιμο εάν χρησιμοποιείτε GPU. Αυτή η παράμετρος καθορίζει τον αλγόριθμο που χρησιμοποιείται για την επεξεργασία των αιτημάτων συμπερασμάτων. Οι επιλογές που υποστηρίζονται για αυτό είναι ALGO_AUTO
, NAIVE
, TREE_REORG
, να BATCH_TREE_REORG
. Αυτές οι επιλογές καθορίζουν πώς είναι οργανωμένοι οι κόμβοι σε ένα δέντρο και μπορούν επίσης να οδηγήσουν σε κέρδη απόδοσης. ο ALGO_AUTO
η προεπιλογή είναι NAIVE
για αραιή αποθήκευση και BATCH_TREE_REORG
για πυκνή αποθήκευση.
Τέλος, το FIL συνοδεύεται από επεξήγηση Shapley, η οποία μπορεί να ενεργοποιηθεί χρησιμοποιώντας το treeshap_output
παράμετρος. Ωστόσο, θα πρέπει να έχετε κατά νου ότι οι έξοδοι Shapley βλάπτουν την απόδοση λόγω του μεγέθους τους.
Μορφή μοντέλου
Επί του παρόντος δεν υπάρχει τυπική μορφή αρχείου για την αποθήκευση μοντέλων που βασίζονται σε δάση. κάθε πλαίσιο τείνει να ορίζει τη δική του μορφή. Για την υποστήριξη πολλαπλών μορφών αρχείων εισόδου, το FIL εισάγει δεδομένα χρησιμοποιώντας τον ανοιχτό κώδικα Τρελίτης βιβλιοθήκη. Αυτό επιτρέπει στο FIL να υποστηρίζει μοντέλα που έχουν εκπαιδευτεί σε δημοφιλή πλαίσια, όπως π.χ XGBoost και LightGBM. Σημειώστε ότι η μορφή του μοντέλου που παρέχετε πρέπει να οριστεί στο model_type
τιμή διαμόρφωσης που καθορίζεται στο config.pbtxt
αρχείο.
Config.pbtxt
Κάθε μοντέλο σε ένα αποθετήριο μοντέλων πρέπει να περιλαμβάνει μια διαμόρφωση μοντέλου που παρέχει τις απαιτούμενες και προαιρετικές πληροφορίες για το μοντέλο. Συνήθως, αυτή η διαμόρφωση παρέχεται στο α config.pbtxt
αρχείο που ορίζεται ως ModelConfig protobuf. Για να μάθετε περισσότερα σχετικά με τις ρυθμίσεις παραμέτρων, ανατρέξτε στο Μοντέλο Διαμόρφωση. Ακολουθούν ορισμένες από τις παραμέτρους διαμόρφωσης μοντέλου:
- μέγιστο_μέγεθος_παρτίδας – Αυτό καθορίζει το μέγιστο μέγεθος παρτίδας που μπορεί να μεταβιβαστεί σε αυτό το μοντέλο. Γενικά, το μόνο όριο στο μέγεθος των παρτίδων που μεταβιβάζονται σε ένα σύστημα υποστήριξης FIL είναι η διαθέσιμη μνήμη για την επεξεργασία τους. Για εκτελέσεις GPU, η διαθέσιμη μνήμη καθορίζεται από το μέγεθος του χώρου συγκέντρωσης μνήμης CUDA του Triton, το οποίο μπορεί να οριστεί μέσω ενός ορίσματος γραμμής εντολών κατά την εκκίνηση του διακομιστή.
- εισαγωγή – Οι επιλογές σε αυτήν την ενότητα λένε στον Triton τον αριθμό των αναμενόμενων χαρακτηριστικών για κάθε δείγμα εισόδου.
- παραγωγή – Οι επιλογές σε αυτήν την ενότητα λένε στον Triton πόσες τιμές εξόδου θα υπάρχουν για κάθε δείγμα. Αν το
predict_proba
Η επιλογή ορίζεται σε true και, στη συνέχεια, θα επιστραφεί μια τιμή πιθανότητας για κάθε κλάση. Διαφορετικά, θα επιστραφεί μια μεμονωμένη τιμή, υποδεικνύοντας την κλάση που προβλέπεται για το δεδομένο δείγμα. - instance_group – Αυτό καθορίζει πόσες παρουσίες αυτού του μοντέλου θα δημιουργηθούν και αν θα χρησιμοποιούν GPU ή CPU.
- μοντέλο_τύπου – Αυτή η συμβολοσειρά υποδεικνύει σε ποια μορφή είναι το μοντέλο (
xgboost_json
σε αυτό το παράδειγμα, αλλάxgboost
,lightgbm
, ναtl_checkpoint
είναι επίσης έγκυρες μορφές). - predict_proba – Εάν οριστεί σε true, οι τιμές πιθανότητας θα επιστραφούν για κάθε κλάση και όχι απλώς για μια πρόβλεψη κλάσης.
- output_class – Αυτό ορίζεται σε αληθές για μοντέλα ταξινόμησης και ψευδές για μοντέλα παλινδρόμησης.
- κατώφλι – Αυτό είναι ένα όριο βαθμολογίας για τον καθορισμό της ταξινόμησης. Οταν
output_class
έχει οριστεί σε true, αυτό πρέπει να παρέχεται, αν και δεν θα χρησιμοποιηθεί εάνpredict_proba
ορίζεται επίσης σε αληθές. - αποθήκευση_τύπου – Γενικά, η χρήση του AUTO για αυτήν τη ρύθμιση θα πρέπει να πληροί τις περισσότερες περιπτώσεις χρήσης. Εάν έχει επιλεγεί AUTO storage, το FIL θα φορτώσει το μοντέλο χρησιμοποιώντας είτε μια αραιή είτε μια πυκνή αναπαράσταση με βάση το κατά προσέγγιση μέγεθος του μοντέλου. Σε ορισμένες περιπτώσεις, μπορεί να θέλετε να το ρυθμίσετε ρητά σε SPARSE για να μειώσετε το αποτύπωμα μνήμης μεγάλων μοντέλων.
Triton Inference Server στο SageMaker
SageMaker επιτρέπει μπορείτε να αναπτύξετε τερματικά σημεία τόσο μεμονωμένου μοντέλου όσο και πολλαπλών μοντέλων με τον διακομιστή συμπερασμάτων Triton NVIDIA. Το παρακάτω σχήμα δείχνει την αρχιτεκτονική υψηλού επιπέδου του διακομιστή Triton Inference. ο αποθετήριο μοντέλων είναι ένα αποθετήριο βασισμένο σε σύστημα αρχείων των μοντέλων που θα διαθέσει το Triton για εξαγωγή συμπερασμάτων. Τα αιτήματα συμπερασμάτων φτάνουν στον διακομιστή και δρομολογούνται στον κατάλληλο προγραμματιστή ανά μοντέλο. Triton εργαλεία πολλαπλούς αλγόριθμους προγραμματισμού και ομαδοποίησης που μπορεί να διαμορφωθεί ανά μοντέλο. Ο προγραμματιστής κάθε μοντέλου εκτελεί προαιρετικά ομαδοποίηση αιτημάτων συμπερασμάτων και στη συνέχεια μεταβιβάζει τα αιτήματα στο backend που αντιστοιχεί στον τύπο του μοντέλου. Το backend εκτελεί εξαγωγή συμπερασμάτων χρησιμοποιώντας τις εισόδους που παρέχονται στα ομαδικά αιτήματα για την παραγωγή των ζητούμενων εξόδων. Στη συνέχεια, οι έξοδοι επιστρέφονται.
Κατά τη διαμόρφωση των ομάδων αυτόματης κλιμάκωσης για τα τελικά σημεία του SageMaker, ίσως θελήσετε να το λάβετε υπόψη SageMakerVariantInvocationsPerInstance
ως τα κύρια κριτήρια για τον προσδιορισμό των χαρακτηριστικών κλιμάκωσης της ομάδας αυτόματης κλιμάκωσης. Επιπλέον, ανάλογα με το αν τα μοντέλα σας εκτελούνται με GPU ή CPU, μπορείτε επίσης να εξετάσετε το ενδεχόμενο να χρησιμοποιήσετε το CPUUtilization ή το GPUUtilization ως πρόσθετα κριτήρια. Λάβετε υπόψη ότι για τα τελικά σημεία μεμονωμένων μοντέλων, επειδή τα μοντέλα που αναπτύσσονται είναι όλα τα ίδια, είναι αρκετά απλό να ορίσετε κατάλληλες πολιτικές για να ανταποκρίνονται στα SLA σας. Για τα τελικά σημεία πολλών μοντέλων, συνιστούμε την ανάπτυξη παρόμοιων μοντέλων πίσω από ένα δεδομένο τελικό σημείο για να έχετε πιο σταθερή προβλέψιμη απόδοση. Σε περιπτώσεις χρήσης όπου χρησιμοποιούνται μοντέλα διαφορετικών μεγεθών και απαιτήσεων, μπορεί να θέλετε να διαχωρίσετε αυτούς τους φόρτους εργασίας σε πολλά τελικά σημεία πολλαπλών μοντέλων ή να αφιερώσετε λίγο χρόνο για να βελτιώσετε την πολιτική της ομάδας αυτόματης κλιμάκωσης για να επιτύχετε την καλύτερη ισορροπία κόστους και απόδοσης.
Για μια λίστα των NVIDIA Triton Deep Learning Containers (DLC) που υποστηρίζονται από το συμπέρασμα SageMaker, ανατρέξτε στο Διαθέσιμες εικόνες Deep Learning Containers.
Περιήγηση στο σημειωματάριο SageMaker
Οι εφαρμογές ML είναι πολύπλοκες και συχνά απαιτούν προεπεξεργασία δεδομένων. Σε αυτό το σημειωματάριο, εξετάζουμε τον τρόπο ανάπτυξης ενός μοντέλου ML που βασίζεται σε δέντρο, όπως το XGBoost, χρησιμοποιώντας το backend FIL στο Triton σε ένα τελικό σημείο πολλαπλών μοντέλων SageMaker. Καλύπτουμε επίσης τον τρόπο υλοποίησης μιας διοχέτευσης συμπερασμάτων προεπεξεργασίας δεδομένων που βασίζεται σε Python για το μοντέλο σας χρησιμοποιώντας τη δυνατότητα συνόλου στο Triton. Αυτό θα μας επιτρέψει να στείλουμε τα ακατέργαστα δεδομένα από την πλευρά του πελάτη και να πραγματοποιηθούν τόσο η προεπεξεργασία δεδομένων όσο και το συμπέρασμα μοντέλου σε ένα τελικό σημείο Triton SageMaker για βέλτιστη απόδοση συμπερασμάτων.
Χαρακτηριστικό συνόλου μοντέλου Triton
Ο Triton Inference Server απλοποιεί σημαντικά την ανάπτυξη μοντέλων AI σε κλίμακα στην παραγωγή. Ο Triton Inference Server συνοδεύεται από μια βολική λύση που απλοποιεί την κατασκευή αγωγών προεπεξεργασίας και μεταεπεξεργασίας. Η πλατφόρμα Triton Inference Server παρέχει τον χρονοπρογραμματιστή συνόλου, ο οποίος είναι υπεύθυνος για τη διοχέτευση μοντέλων που συμμετέχουν στη διαδικασία εξαγωγής συμπερασμάτων, διασφαλίζοντας παράλληλα την αποτελεσματικότητα και τη βελτιστοποίηση της απόδοσης. Η χρήση μοντέλων συνόλου μπορεί να αποφύγει την επιβάρυνση της μεταφοράς ενδιάμεσων τανυστών και να ελαχιστοποιήσει τον αριθμό των αιτημάτων που πρέπει να σταλούν στον Triton.
Σε αυτό το σημειωματάριο, δείχνουμε πώς να χρησιμοποιήσετε τη δυνατότητα συνόλου για τη δημιουργία ενός αγωγού προεπεξεργασίας δεδομένων με συμπέρασμα μοντέλου XGBoost και μπορείτε να κάνετε παρέκταση από αυτό για να προσθέσετε προσαρμοσμένη μεταεπεξεργασία στη διοχέτευση.
Ρυθμίστε το περιβάλλον
Ξεκινάμε ρυθμίζοντας το απαιτούμενο περιβάλλον. Εγκαθιστούμε τις εξαρτήσεις που απαιτούνται για τη συσκευασία του αγωγού μοντέλων μας και την εκτέλεση συμπερασμάτων χρησιμοποιώντας τον διακομιστή συμπερασμάτων Triton. Ορίζουμε επίσης το Διαχείριση ταυτότητας και πρόσβασης AWS ρόλος (IAM) που θα δώσει στο SageMaker πρόσβαση στα τεχνουργήματα του μοντέλου και στο NVIDIA Triton Μητρώο εμπορευματοκιβωτίων Amazon Elastic εικόνα (Amazon ECR). Δείτε τον παρακάτω κώδικα:
Δημιουργήστε ένα περιβάλλον Conda για την προεπεξεργασία εξαρτήσεων
Το backend Python στο Triton απαιτεί από εμάς να χρησιμοποιήσουμε a Conda περιβάλλον για τυχόν πρόσθετες εξαρτήσεις. Σε αυτήν την περίπτωση, χρησιμοποιούμε το backend της Python για την προεπεξεργασία των ακατέργαστων δεδομένων πριν τα τροφοδοτήσουμε στο μοντέλο XGBoost που εκτελείται στο σύστημα υποστήριξης FIL. Παρόλο που αρχικά χρησιμοποιούσαμε τα RAPIDS cuDF και cuML για να κάνουμε την προεπεξεργασία δεδομένων, εδώ χρησιμοποιούμε τα Panda και το scikit-learn ως εξαρτήσεις προεπεξεργασίας κατά τη διάρκεια της εξαγωγής συμπερασμάτων. Αυτό το κάνουμε για τρεις λόγους:
- Δείχνουμε πώς να δημιουργήσετε ένα περιβάλλον Conda για τις εξαρτήσεις σας και πώς να το συσκευάσετε στο αναμένεται μορφή από το backend του Triton's Python.
- Παρουσιάζοντας το μοντέλο προεπεξεργασίας που εκτελείται στο backend της Python στην CPU ενώ το XGBoost εκτελείται στη GPU στο σύστημα υποστήριξης FIL, επεξηγούμε πώς κάθε μοντέλο στη διοχέτευση συνόλου του Triton μπορεί να εκτελεστεί σε διαφορετικό πλαίσιο υποστήριξης πλαισίου καθώς και σε διαφορετικές διαμορφώσεις υλικού.
- Υπογραμμίζει πώς οι βιβλιοθήκες RAPIDS (cuDF, cuML) είναι συμβατές με τις αντίστοιχες CPU τους (Pandas, scikit-learn). Για παράδειγμα, μπορούμε να δείξουμε πώς
LabelEncoders
που δημιουργήθηκε στο cuML μπορεί να χρησιμοποιηθεί στο scikit-learn και αντίστροφα.
Ακολουθούμε τις οδηγίες από το Τεκμηρίωση Triton για εξαρτήσεις προεπεξεργασίας συσκευασίας (scikit-learn και Pandas) που θα χρησιμοποιηθούν στο backend της Python ως αρχείο TAR περιβάλλοντος Conda. Το σενάριο bash create_prep_env.sh δημιουργεί το αρχείο TAR περιβάλλοντος Conda και, στη συνέχεια, το μετακινούμε στον κατάλογο του μοντέλου προεπεξεργασίας. Δείτε τον παρακάτω κώδικα:
Αφού εκτελέσουμε το προηγούμενο σενάριο, δημιουργείται preprocessing_env.tar.gz
, το οποίο αντιγράφουμε στον κατάλογο προεπεξεργασίας:
Ρυθμίστε την προεπεξεργασία με το backend Triton Python
Για προεπεξεργασία, χρησιμοποιούμε Triton's Python backend για την εκτέλεση προεπεξεργασίας δεδομένων σε πίνακα (κατηγορική κωδικοποίηση) κατά τη διάρκεια της εξαγωγής συμπερασμάτων για αιτήματα μη επεξεργασμένων δεδομένων που εισέρχονται στον διακομιστή. Για περισσότερες πληροφορίες σχετικά με την προεπεξεργασία που έγινε κατά τη διάρκεια της εκπαίδευσης, ανατρέξτε στο σημειωματάριο εκπαίδευσης.
Το backend Python επιτρέπει την προεπεξεργασία, την μεταεπεξεργασία και οποιαδήποτε άλλη προσαρμοσμένη λογική που θα εφαρμοστεί στην Python και θα εξυπηρετηθεί με το Triton. Η χρήση του Triton στο SageMaker απαιτεί πρώτα να δημιουργήσουμε έναν φάκελο αποθήκης μοντέλων που περιέχει τα μοντέλα που θέλουμε να εξυπηρετήσουμε. Έχουμε ήδη δημιουργήσει ένα μοντέλο για την προεπεξεργασία δεδομένων Python που ονομάζεται προεπεξεργασία in cpu_model_repository
και gpu_model_repository
.
Το Triton έχει συγκεκριμένες απαιτήσεις για τη διάταξη αποθήκης μοντέλων. Μέσα στον κατάλογο αποθήκης μοντέλων ανώτατου επιπέδου, κάθε μοντέλο έχει τον δικό του υποκατάλογο που περιέχει τις πληροφορίες για το αντίστοιχο μοντέλο. Κάθε κατάλογος μοντέλου στο Triton πρέπει να έχει τουλάχιστον έναν αριθμητικό υποκατάλογο που αντιπροσωπεύει μια έκδοση του μοντέλου. Η τιμή 1 αντιπροσωπεύει την έκδοση 1 του μοντέλου προεπεξεργασίας Python. Κάθε μοντέλο εκτελείται από ένα συγκεκριμένο backend, επομένως μέσα σε κάθε υποκατάλογο έκδοσης πρέπει να υπάρχει το τεχνούργημα μοντέλου που απαιτείται από αυτό το backend. Για αυτό το παράδειγμα, χρησιμοποιούμε το backend Python, το οποίο απαιτεί το αρχείο Python που εξυπηρετείτε να ονομάζεται model.py και το αρχείο πρέπει να υλοποιηθεί ορισμένες λειτουργίες. Εάν χρησιμοποιούσαμε ένα backend PyTorch, θα χρειαζόταν ένα αρχείο model.pt και ούτω καθεξής. Για περισσότερες λεπτομέρειες σχετικά με τις συμβάσεις ονομασίας για αρχεία μοντέλων, ανατρέξτε στο Αρχεία Μοντέλων.
Η model.py Το αρχείο Python που χρησιμοποιούμε εδώ υλοποιεί όλη τη λογική προεπεξεργασίας δεδομένων σε πίνακα για να μετατρέψει τα ακατέργαστα δεδομένα σε χαρακτηριστικά που μπορούν να τροφοδοτηθούν στο μοντέλο XGBoost.
Κάθε μοντέλο Triton πρέπει επίσης να παρέχει ένα config.pbtxt
αρχείο που περιγράφει τη διαμόρφωση του μοντέλου. Για να μάθετε περισσότερα σχετικά με τις ρυθμίσεις παραμέτρων, ανατρέξτε στο Μοντέλο Διαμόρφωση. Δικός μας config.pbtxt Το αρχείο καθορίζει το backend ως python και όλες τις στήλες εισόδου για ανεπεξέργαστα δεδομένα μαζί με προεπεξεργασμένη έξοδο, η οποία αποτελείται από 15 χαρακτηριστικά. Καθορίζουμε επίσης ότι θέλουμε να εκτελέσουμε αυτό το μοντέλο προεπεξεργασίας Python στην CPU. Δείτε τον παρακάτω κώδικα:
Ρυθμίστε ένα μοντέλο ML που βασίζεται σε δέντρο για το σύστημα υποστήριξης FIL
Στη συνέχεια, ρυθμίσαμε τον κατάλογο μοντέλων για ένα μοντέλο ML που βασίζεται σε δέντρο όπως το XGBoost, το οποίο θα χρησιμοποιεί το backend FIL.
Η αναμενόμενη διάταξη για cpu_memory_repository
και gpu_memory_repository
είναι παρόμοια με αυτήν που δείξαμε νωρίτερα.
Εδώ, FIL
είναι το όνομα του μοντέλου. Μπορούμε να του δώσουμε ένα διαφορετικό όνομα όπως xgboost
αν θέλουμε. 1
είναι ο υποκατάλογος έκδοσης, ο οποίος περιέχει το τεχνούργημα μοντέλου. Σε αυτή την περίπτωση, είναι το xgboost.json
μοντέλο που σώσαμε. Ας δημιουργήσουμε αυτήν την αναμενόμενη διάταξη:
Πρέπει να έχουμε το αρχείο ρυθμίσεων config.pbtxt
περιγράφοντας τη διαμόρφωση του μοντέλου για το μοντέλο ML που βασίζεται σε δέντρο, έτσι ώστε το backend FIL στο Triton να μπορεί να κατανοήσει πώς να το εξυπηρετήσει. Για περισσότερες πληροφορίες, ανατρέξτε στο πιο πρόσφατο γενόσημο Επιλογές διαμόρφωσης Triton και τις ειδικές επιλογές διαμόρφωσης για το FIL backend. Εστιάζουμε σε μερικές μόνο από τις πιο κοινές και σχετικές επιλογές σε αυτό το παράδειγμα.
Δημιουργία config.pbtxt
for model_cpu_repository
:
Ομοίως, ρυθμίστε config.pbtxt
for model_gpu_repository
(σημειώστε ότι η διαφορά είναι USE_GPU = True
):
Ρυθμίστε μια διοχέτευση συμπερασμάτων για την προεπεξεργασία δεδομένων Python backend και FIL backend χρησιμοποιώντας σύνολα
Τώρα είμαστε έτοιμοι να ρυθμίσουμε τη γραμμή συμπερασμάτων για την προεπεξεργασία δεδομένων και την εξαγωγή συμπερασμάτων μοντέλων βάσει δέντρων χρησιμοποιώντας ένα μοντέλο συνόλου. Ένα μοντέλο συνόλου αντιπροσωπεύει έναν αγωγό ενός ή περισσότερων μοντέλων και τη σύνδεση των τανυστών εισόδου και εξόδου μεταξύ αυτών των μοντέλων. Εδώ χρησιμοποιούμε το μοντέλο συνόλου για να δημιουργήσουμε μια διοχέτευση προεπεξεργασίας δεδομένων στο backend της Python που ακολουθείται από το XGBoost στο σύστημα υποστήριξης FIL.
Η αναμενόμενη διάταξη για το ensemble
Ο κατάλογος μοντέλων είναι παρόμοιος με αυτούς που δείξαμε προηγουμένως:
Δημιουργήσαμε το μοντέλο του συνόλου config.pbtxt ακολουθώντας την καθοδήγηση σε Μοντέλα συνόλου. Είναι σημαντικό ότι πρέπει να ρυθμίσουμε τον προγραμματιστή συνόλου config.pbtxt
, το οποίο καθορίζει τη ροή δεδομένων μεταξύ μοντέλων εντός του συνόλου. Ο προγραμματιστής συνόλου συλλέγει τους τανυστές εξόδου σε κάθε βήμα και τους παρέχει ως τανυστές εισόδου για άλλα βήματα σύμφωνα με τις προδιαγραφές.
Συσκευάστε το αποθετήριο μοντέλων και μεταφορτώστε το στο Amazon S3
Τέλος, καταλήγουμε στην ακόλουθη δομή καταλόγου αποθήκης μοντέλου, που περιέχει ένα μοντέλο προεπεξεργασίας Python και τις εξαρτήσεις του μαζί με το μοντέλο XGBoost FIL και το σύνολο μοντέλων.
Συσκευάζουμε τον κατάλογο και τα περιεχόμενά του ως model.tar.gz
για ανέβασμα σε Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3). Έχουμε δύο επιλογές σε αυτό το παράδειγμα: χρήση μιας παρουσίας που βασίζεται σε CPU ή μιας παρουσίας που βασίζεται σε GPU. Μια παρουσία που βασίζεται σε GPU είναι πιο κατάλληλη όταν χρειάζεστε μεγαλύτερη επεξεργαστική ισχύ και θέλετε να χρησιμοποιήσετε πυρήνες CUDA.
Δημιουργήστε και ανεβάστε το πακέτο μοντέλου για μια παρουσία που βασίζεται σε CPU (βελτιστοποιημένη για CPU) με τον ακόλουθο κώδικα:
Δημιουργήστε και ανεβάστε το πακέτο μοντέλου για μια παρουσία που βασίζεται σε GPU (βελτιστοποιημένη για GPU) με τον ακόλουθο κώδικα:
Δημιουργήστε ένα τελικό σημείο του SageMaker
Τώρα έχουμε τα τεχνουργήματα μοντέλων αποθηκευμένα σε έναν κάδο S3. Σε αυτό το βήμα, μπορούμε επίσης να παρέχουμε την πρόσθετη μεταβλητή περιβάλλοντος SAGEMAKER_TRITON_DEFAULT_MODEL_NAME
, το οποίο καθορίζει το όνομα του μοντέλου που θα φορτώσει ο Triton. Η τιμή αυτού του κλειδιού πρέπει να ταιριάζει με το όνομα του φακέλου στο πακέτο μοντέλου που μεταφορτώθηκε στο Amazon S3. Αυτή η μεταβλητή είναι προαιρετική στην περίπτωση ενός μόνο μοντέλου. Στην περίπτωση των μοντέλων συνόλου, αυτό το κλειδί πρέπει να καθοριστεί για την εκκίνηση του Triton στο SageMaker.
Επιπλέον, μπορείτε να ρυθμίσετε SAGEMAKER_TRITON_BUFFER_MANAGER_THREAD_COUNT
και SAGEMAKER_TRITON_THREAD_COUNT
για τη βελτιστοποίηση του αριθμού των νημάτων.
Χρησιμοποιούμε το προηγούμενο μοντέλο για να δημιουργήσουμε μια διαμόρφωση τελικού σημείου όπου μπορούμε να καθορίσουμε τον τύπο και τον αριθμό των παρουσιών που θέλουμε στο τελικό σημείο
Χρησιμοποιούμε αυτήν τη διαμόρφωση τελικού σημείου για να δημιουργήσουμε ένα τελικό σημείο του SageMaker και περιμένουμε να ολοκληρωθεί η ανάπτυξη. Με τα MME SageMaker, έχουμε την επιλογή να φιλοξενήσουμε πολλά μοντέλα συνόλου επαναλαμβάνοντας αυτήν τη διαδικασία, αλλά παραμένουμε σε μία ανάπτυξη για αυτό το παράδειγμα:
Η κατάσταση θα αλλάξει σε InService
όταν η ανάπτυξη είναι επιτυχής.
Επικαλέστε το μοντέλο σας που φιλοξενείται στο τελικό σημείο του SageMaker
Μετά την εκτέλεση του τελικού σημείου, μπορούμε να χρησιμοποιήσουμε ορισμένα δείγματα μη επεξεργασμένων δεδομένων για να εκτελέσουμε συμπέρασμα χρησιμοποιώντας JSON ως μορφή ωφέλιμου φορτίου. Για τη μορφή αιτήματος συμπερασμάτων, ο Triton χρησιμοποιεί το KFServing
κοινοτικό πρότυπο πρωτόκολλα συμπερασμάτων. Δείτε τον ακόλουθο κώδικα:
Το σημειωματάριο που αναφέρεται στο ιστολόγιο βρίσκεται στο Αποθετήριο GitHub.
Βέλτιστες πρακτικές
Εκτός από τις επιλογές για τη βελτιστοποίηση των ρυθμίσεων του συστήματος υποστήριξης FIL που αναφέραμε προηγουμένως, οι επιστήμονες δεδομένων μπορούν επίσης να διασφαλίσουν ότι τα δεδομένα εισόδου για το backend έχουν βελτιστοποιηθεί για επεξεργασία από τον κινητήρα. Όποτε είναι δυνατόν, εισάγετε δεδομένα σε μορφή μείζονος σειράς στη διάταξη GPU. Άλλες μορφές θα απαιτούν εσωτερική μετατροπή και καταλαμβάνουν κύκλους, μειώνοντας την απόδοση.
Λόγω του τρόπου με τον οποίο οι δομές δεδομένων FIL διατηρούνται στη μνήμη GPU, να έχετε υπόψη σας το βάθος του δέντρου. Όσο μεγαλύτερο είναι το βάθος του δέντρου, τόσο μεγαλύτερο θα είναι το αποτύπωμα της μνήμης GPU σας.
Χρησιμοποιήστε το instance_group_count
παράμετρος για την προσθήκη διεργασιών εργασίας και την αύξηση της απόδοσης του συστήματος υποστήριξης FIL, γεγονός που θα έχει ως αποτέλεσμα μεγαλύτερη κατανάλωση μνήμης CPU και GPU. Επιπλέον, εξετάστε τις μεταβλητές του SageMaker που είναι διαθέσιμες για την αύξηση της απόδοσης, όπως νήματα HTTP, μέγεθος buffer HTTP, μέγεθος παρτίδας και μέγιστη καθυστέρηση.
Συμπέρασμα
Σε αυτήν την ανάρτηση, μπαίνουμε βαθιά στο FIL backend που υποστηρίζει ο Triton Inference Server στο SageMaker. Αυτό το backend παρέχει επιτάχυνση τόσο της CPU όσο και της GPU των μοντέλων σας που βασίζονται σε δέντρα, όπως ο δημοφιλής αλγόριθμος XGBoost. Υπάρχουν πολλές επιλογές που πρέπει να λάβετε υπόψη για να έχετε την καλύτερη απόδοση για συμπεράσματα, όπως μεγέθη παρτίδας, μορφές εισαγωγής δεδομένων και άλλους παράγοντες που μπορούν να ρυθμιστούν ώστε να καλύπτουν τις ανάγκες σας. Το SageMaker σάς επιτρέπει να χρησιμοποιείτε αυτήν τη δυνατότητα με τερματικά σημεία μεμονωμένων και πολλαπλών μοντέλων για να εξισορροπήσετε την απόδοση και την εξοικονόμηση κόστους.
Σας ενθαρρύνουμε να λάβετε τις πληροφορίες σε αυτήν την ανάρτηση και να δείτε εάν το SageMaker μπορεί να καλύψει τις ανάγκες φιλοξενίας σας για την εξυπηρέτηση μοντέλων που βασίζονται σε δέντρα, ικανοποιώντας τις απαιτήσεις σας για μείωση κόστους και απόδοση φόρτου εργασίας.
Το σημειωματάριο που αναφέρεται σε αυτήν την ανάρτηση βρίσκεται στα παραδείγματα του SageMaker Αποθετήριο GitHub. Επιπλέον, μπορείτε να βρείτε την πιο πρόσφατη τεκμηρίωση στο backend του FIL στο GitHub.
Σχετικά με τους Συγγραφείς
Raghu Ramesha είναι Senior ML Solutions Architect με την ομάδα του Amazon SageMaker Service. Επικεντρώνεται στο να βοηθά τους πελάτες να δημιουργήσουν, να αναπτύξουν και να μεταφέρουν φόρτους εργασίας παραγωγής ML στο SageMaker σε κλίμακα. Ειδικεύεται σε τομείς μηχανικής μάθησης, τεχνητής νοημοσύνης και όρασης υπολογιστών και είναι κάτοχος μεταπτυχιακού τίτλου στην Επιστήμη Υπολογιστών από το UT Dallas. Στον ελεύθερο χρόνο του, του αρέσουν τα ταξίδια και η φωτογραφία.
Τζέιμς Παρκ είναι αρχιτέκτονας λύσεων στο Amazon Web Services. Συνεργάζεται με την Amazon.com για το σχεδιασμό, την κατασκευή και την ανάπτυξη τεχνολογικών λύσεων στο AWS και έχει ιδιαίτερο ενδιαφέρον για την τεχνητή νοημοσύνη και τη μηχανική μάθηση. Στον ελεύθερο χρόνο του απολαμβάνει να αναζητά νέους πολιτισμούς, νέες εμπειρίες και να ενημερώνεται για τις τελευταίες τάσεις της τεχνολογίας.
Dhawal Patel είναι Κύριος Αρχιτέκτονας Μηχανικής Μάθησης στο AWS. Έχει συνεργαστεί με οργανισμούς που κυμαίνονται από μεγάλες επιχειρήσεις έως νεοφυείς επιχειρήσεις μεσαίου μεγέθους για προβλήματα που σχετίζονται με τους κατανεμημένους υπολογιστές και την τεχνητή νοημοσύνη. Εστιάζει στη βαθιά μάθηση, συμπεριλαμβανομένων των τομέων NLP και όρασης υπολογιστή. Βοηθά τους πελάτες να επιτύχουν συμπεράσματα μοντέλων υψηλής απόδοσης στο Amazon SageMaker.
Τζιαόνγκ Λιου είναι αρχιτέκτονας λύσεων στην ομάδα του Cloud Service Provider της NVIDIA. Βοηθά τους πελάτες στην υιοθέτηση λύσεων μηχανικής μάθησης και τεχνητής νοημοσύνης που αξιοποιούν την επιτάχυνση της NVIDIA για την αντιμετώπιση των προκλήσεων εκπαίδευσης και συμπερασμάτων τους. Στον ελεύθερο χρόνο του, του αρέσει το origami, τα DIY projects και το μπάσκετ.
Kshitiz Gupta είναι αρχιτέκτονας λύσεων στην NVIDIA. Του αρέσει να εκπαιδεύει τους πελάτες cloud σχετικά με τις τεχνολογίες GPU AI που έχει να προσφέρει η NVIDIA και να τους βοηθά να επιταχύνουν τις εφαρμογές μηχανικής εκμάθησης και βαθιάς εκμάθησης. Εκτός δουλειάς, του αρέσει το τρέξιμο, η πεζοπορία και η παρακολούθηση της άγριας ζωής.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoAiStream. Web3 Data Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- Minting the Future με την Adryenn Ashley. Πρόσβαση εδώ.
- πηγή: https://aws.amazon.com/blogs/machine-learning/hosting-ml-models-on-amazon-sagemaker-using-triton-xgboost-lightgbm-and-treelite-models/
- :έχει
- :είναι
- :δεν
- :που
- $UP
- 1
- 100
- 11
- 13
- 200
- 23
- 24
- 7
- 8
- 9
- a
- ικανότητα
- Σχετικα
- επιταχύνουν
- επιτάχυνση
- επιταχύνοντας
- επιταχυντές
- πρόσβαση
- Σύμφωνα με
- αναλόγως
- Λογαριασμός
- Κατορθώνω
- απέναντι
- προσθέτω
- Επιπλέον
- Πρόσθετος
- διεύθυνση
- διευθυνσιοδοτούμενος
- υιοθετώντας
- Μετά το
- κατά
- συμφωνίες
- AI
- αλγόριθμος
- Όλα
- κατανομών
- επιτρέπουν
- επιτρέπει
- κατά μήκος
- ήδη
- Επίσης
- Αν και
- πάντοτε
- Amazon
- Amazon Sage Maker
- Amazon υπηρεσίες Web
- Amazon.com
- ποσό
- an
- και
- κάθε
- api
- εφαρμογές
- κατάλληλος
- αρχιτεκτονική
- ΕΙΝΑΙ
- περιοχές
- επιχείρημα
- Παράταξη
- τεχνητός
- τεχνητή νοημοσύνη
- AS
- βοηθάει
- At
- αυτόματη
- διαθέσιμος
- αποφύγετε
- AWS
- Backend
- Υπόλοιπο
- βασίζονται
- βίαιο χτύπημα
- βάση
- Μπάσκετ
- BE
- επειδή
- γίνονται
- ήταν
- πριν
- αρχίζουν
- πίσω
- παρακάτω
- όφελος
- ΚΑΛΎΤΕΡΟΣ
- Καλύτερα
- μεταξύ
- μεγαλύτερος
- Μπλοκ
- σώμα
- και οι δύο
- ρυθμιστικό
- χτίζω
- Κτίριο
- χτισμένο
- αλλά
- by
- C + +
- που ονομάζεται
- CAN
- κάρτα
- περίπτωση
- περιπτώσεις
- κατηγορία
- Αιτία
- προκλήσεις
- αλλαγή
- χαρακτηριστικά
- έλεγχος
- τσιπ
- Επιλέξτε
- επιλέγοντας
- Πόλη
- τάξη
- ταξινόμηση
- πελάτης
- πελάτες
- Backup
- κωδικός
- Στήλες
- COM
- έρχεται
- ερχομός
- Κοινός
- επικοινωνούν
- Επικοινωνία
- κοινότητα
- σύμφωνος
- συγκρότημα
- υπολογισμός
- υπολογιστή
- Πληροφορική
- Computer Vision
- χρήση υπολογιστή
- διαμόρφωση
- σύνδεση
- Εξετάστε
- θεωρούνται
- καταναλώνουν
- κατανάλωση
- Δοχείο
- Εμπορευματοκιβώτια
- Περιέχει
- περιεχόμενα
- αντίθεση
- έλεγχος
- Βολικός
- Μετατροπή
- μετατρέψετε
- πυρήνας
- Αντίστοιχος
- Κόστος
- μείωση κόστους
- εξοικονόμηση κόστους
- κάλυμμα
- δημιουργία
- δημιουργήθηκε
- δημιουργεί
- κριτήρια
- κρίσιμος
- Τη στιγμή
- έθιμο
- Πελάτες
- κύκλους
- Ντάλας
- ημερομηνία
- Ημερομηνία
- ημέρα
- συμφωνία
- απόφαση
- βαθύς
- βαθιά μάθηση
- βαθύτερη
- Προεπιλογή
- προεπιλογές
- Πτυχίο
- delay
- απαιτητικές
- απαιτήσεις
- Σε συνάρτηση
- παρατάσσω
- αναπτυχθεί
- ανάπτυξη
- ανάπτυξη
- βάθος
- Υπηρεσίες
- καθέκαστα
- Προσδιορίστε
- αποφασισμένος
- καθορίζει
- καθορίζοντας
- προγραμματιστές
- διαφορά
- διαφορετικές
- διανέμονται
- κατανεμημένων υπολογιστών
- Diy
- do
- τεκμηρίωση
- Όχι
- πράξη
- domains
- γίνεται
- περιστέρι
- δυο
- κατά την διάρκεια
- κάθε
- Νωρίτερα
- εκπαίδευση
- αποδοτικότητα
- αποτελεσματικά
- είτε
- δίνοντας έμφαση
- δίνει τη δυνατότητα
- ενθαρρύνει
- τέλος
- Τελικό σημείο
- Κινητήρας
- Κινητήρες
- εξασφαλίζω
- εξασφαλίζοντας
- Εταιρεία
- επιχειρήσεις
- Ολόκληρος
- Περιβάλλον
- λάθη
- Even
- Κάθε
- παράδειγμα
- παραδείγματα
- ανταλλαγή
- αναμένω
- αναμένεται
- Δραστηριοτητες
- εξαγωγή
- παράγοντες
- αρκετά
- Falls
- ψευδής
- Χαρακτηριστικό
- Χαρακτηριστικά
- Fed
- σίτιση
- λίγοι
- Εικόνα
- Αρχεία
- Αρχεία
- Εύρεση
- φινίρισμα
- Όνομα
- ροή
- Συγκέντρωση
- εστιάζει
- ακολουθήστε
- ακολουθείται
- Εξής
- Ίχνος
- Για
- μορφή
- μορφή
- Βρέθηκαν
- Πλαίσιο
- πλαισίων
- απάτη
- Δωρεάν
- από
- Επί πλέον
- κέρδη
- General
- δημιουργεί
- παίρνω
- Δώστε
- δεδομένου
- GPU
- σε μεγάλο βαθμό
- Group
- Ομάδα
- καθοδήγηση
- συμβαίνω
- Σκληρά
- υλικού
- Έχω
- he
- βοήθεια
- βοήθεια
- βοηθά
- εδώ
- υψηλού επιπέδου
- υψηλή απόδοση
- υψηλότερο
- ανταύγειες
- του
- κρατήστε
- κατέχει
- οικοδεσπότης
- φιλοξενείται
- φιλοξενία
- Πως
- Πώς να
- Ωστόσο
- HTML
- http
- HTTPS
- Πληγώνω
- Ταυτότητα
- ids
- IDX
- if
- εικόνα
- Επίπτωση
- Επιπτώσεις
- εφαρμογή
- εφαρμοστεί
- υλοποιεί
- εισαγωγές
- in
- περιλαμβάνουν
- Συμπεριλαμβανομένου
- Αυξάνουν
- υποδηλώνει
- πληροφορίες
- ενημερώνεται
- εισαγωγή
- εγκαθιστώ
- παράδειγμα
- οδηγίες
- ολοκλήρωση
- Νοημοσύνη
- τόκος
- εσωτερικός
- σε
- IT
- ΤΟΥ
- jpg
- json
- μόλις
- Διατήρηση
- Κλειδί
- Είδος
- Ξέρω
- large
- Μεγάλες επιχειρήσεις
- μεγαλύτερος
- Αφάνεια
- αργότερο
- σχέδιο
- ΜΑΘΑΊΝΩ
- μάθηση
- ελάχιστα
- Led
- νόμιμος
- μείον
- Επίπεδο
- επίπεδα
- Μόχλευση
- βιβλιοθήκες
- Βιβλιοθήκη
- Μου αρέσει
- LIMIT
- γραμμή
- Λιστα
- φορτίο
- λογική
- λογικός
- Μακριά
- μηχανή
- μάθηση μηχανής
- κάνω
- διαχείριση
- πολοί
- κύριοι
- Ταίριασμα
- max
- ανώτατο όριο
- Ενδέχεται..
- μηχανισμός
- Γνωρίστε
- συνάντηση
- Μνήμη
- που αναφέρθηκαν
- Εμπορος
- Metrics
- ενδέχεται να
- μεταναστεύσουν
- νου
- ML
- Τρόπος
- μοντέλο
- μοντέλα
- Μηνας
- περισσότερο
- πλέον
- Δημοφιλέστερα
- μετακινήσετε
- Τελικό σημείο πολλαπλών μοντέλων
- πολλαπλούς
- πρέπει
- όνομα
- ονοματοδοσία
- ντόπιος
- Ανάγκη
- ανάγκες
- Νέα
- nlp
- Όχι.
- κόμβων
- σημειωματάριο
- τώρα
- αριθμός
- πολλοί
- Nvidia
- αποκτήσει
- of
- προσφορά
- προσφορές
- συχνά
- on
- ONE
- αυτά
- αποκλειστικά
- ανοικτού κώδικα
- βέλτιστη
- βελτιστοποίηση
- Βελτιστοποίηση
- βελτιστοποιημένη
- βελτιστοποίηση
- Επιλογή
- Επιλογές
- or
- τάξη
- οργανώσεις
- Οργανωμένος
- αρχικά
- OS
- ΑΛΛΑ
- αλλιώς
- δικός μας
- έξω
- παραγωγή
- εκτός
- δική
- πακέτο
- συσκευασία
- Πάντα
- Παράλληλο
- παράμετρος
- παράμετροι
- συμμετέχοντας
- Ειδικότερα
- πέρασε
- περάσματα
- μονοπάτι
- Εκτελέστε
- επίδοση
- εκτελεί
- άδεια
- φωτογραφία
- αγωγού
- πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- παιχνίδι
- σας παρακαλούμε
- πληθώρα
- Πολιτικές
- πολιτική
- πισίνα
- Δημοφιλής
- δημοτικότητα
- δυνατός
- πιθανώς
- Θέση
- δύναμη
- προβλέψει
- Αναμενόμενος
- προβλεπόμενη
- πρόβλεψη
- Προβλέψεις
- προηγουμένως
- πρωταρχικός
- Κύριος
- προβλήματα
- διαδικασια μας
- Διεργασίες
- μεταποίηση
- Επεξεργαστικη ΙΣΧΥΣ
- επεξεργαστές
- παράγει
- παραγωγή
- έργα
- κατάλληλος
- Πρωτο
- παρέχουν
- παρέχεται
- προμηθευτής
- παρέχει
- χορήγηση
- Python
- pytorch
- τυχαίος
- κυμαίνεται
- μάλλον
- Ακατέργαστος
- έτοιμος
- πραγματικό κόσμο
- σε πραγματικό χρόνο
- λόγους
- συνιστώ
- μείωση
- αναφέρεται
- Ανεξάρτητα
- περιοχή
- σχετίζεται με
- αντικαθιστώ
- Αποθήκη
- αντιπροσώπευση
- εκπροσωπούν
- αντιπροσωπεύει
- ζητήσει
- αιτήματα
- απαιτούν
- απαιτείται
- απαιτήσεις
- Απαιτεί
- απάντησης
- υπεύθυνος
- αποτέλεσμα
- Αποτελέσματα
- Ρόλος
- τρέξιμο
- τρέξιμο
- s
- σοφός
- Συμπεράσματα SageMaker
- ίδιο
- Οικονομίες
- επεκτάσιμη
- Κλίμακα
- απολέπιση
- σενάρια
- προγραμματισμός
- Επιστήμη
- επιστήμονες
- scikit-μάθετε
- σκορ
- Τμήμα
- δείτε
- αναζήτηση
- επιλέγονται
- στείλετε
- αρχαιότερος
- ξεχωριστό
- εξυπηρετούν
- υπηρεσία
- Πάροχος υπηρεσιών
- Υπηρεσίες
- εξυπηρετούν
- σειρά
- τον καθορισμό
- ρυθμίσεις
- Shape
- Shared
- θα πρέπει να
- δείχνουν
- Δείχνει
- πλευρά
- σημαντικά
- παρόμοιες
- Απλούς
- ενιαίας
- Μέγεθος
- μεγέθη
- So
- λύση
- Λύσεις
- SOLVE
- Επίλυση
- μερικοί
- Πηγή
- ειδικεύεται
- συγκεκριμένες
- προσδιορισμός
- καθορίζεται
- δαπανήσει
- πρότυπο
- Εκκίνηση
- Ξεκινήστε
- Startups
- Κατάσταση
- Κατάσταση
- σταθερός
- Βήμα
- Βήματα
- χώρος στο δίσκο
- κατάστημα
- αποθηκεύονται
- ειλικρινής
- Σπάγγος
- δομή
- επιτυχής
- τέτοιος
- προτείνω
- κατάλληλος
- υποστήριξη
- υποστηριζόνται!
- Υποστηρίζει
- Πάρτε
- τεχνικές
- Τεχνολογίες
- Τεχνολογία
- πει
- όροι
- από
- ότι
- Η
- οι πληροφορίες
- τους
- Τους
- τότε
- Εκεί.
- Αυτοί
- αυτοί
- πράγμα
- αυτό
- εκείνοι
- αν και?
- τρία
- κατώφλι
- διακίνηση
- ώρα
- προς την
- σήμερα
- μαζι
- κορυφαίο επίπεδο
- παραδοσιακά
- εκπαιδευμένο
- Εκπαίδευση
- Μεταφορά
- Ταξίδια
- δέντρο
- Τάσεις
- Τρίτωνος
- αληθής
- δύο
- τύπος
- τύποι
- συνήθως
- καταλαβαίνω
- Φορτώθηκε
- Ανέβασμα
- us
- χρήση
- μεταχειρισμένος
- Χρήστες
- χρησιμοποιώντας
- χρησιμοποιεί
- αξιοποιώντας
- αξία
- Αξίες
- διάφορα
- εκδοχή
- μέσω
- όραμα
- W
- περιμένετε
- θέλω
- ήταν
- παρακολουθείτε
- Τρόπος..
- we
- ιστός
- διαδικτυακές υπηρεσίες
- ΛΟΙΠΌΝ
- ήταν
- Τι
- πότε
- οποτεδήποτε
- αν
- Ποιό
- ενώ
- θα
- με
- εντός
- χωρίς
- Εργασία
- εργάστηκαν
- εργάτης
- λειτουργεί
- θα
- XGBoost
- έτος
- Εσείς
- Σας
- zephyrnet
- Zip