Το PyTorch είναι ένα πλαίσιο μηχανικής μάθησης (ML) που χρησιμοποιείται ευρέως από πελάτες AWS για μια ποικιλία εφαρμογών, όπως η όραση υπολογιστή, η επεξεργασία φυσικής γλώσσας, η δημιουργία περιεχομένου και άλλα. Με την πρόσφατη κυκλοφορία του PyTorch 2.0, οι πελάτες του AWS μπορούν πλέον να κάνουν τα ίδια πράγματα όπως θα μπορούσαν με το PyTorch 1.x αλλά πιο γρήγορα και σε κλίμακα με βελτιωμένες ταχύτητες εκπαίδευσης, χαμηλότερη χρήση μνήμης και βελτιωμένες κατανεμημένες δυνατότητες. Αρκετές νέες τεχνολογίες συμπεριλαμβανομένων των torch.compile, TorchDynamo, AOTAutograd, PrimTorch και TorchInductor έχουν συμπεριληφθεί στην έκδοση PyTorch2.0. Αναφέρομαι σε PyTorch 2.0: Η επόμενη γενιά μας έκδοση που είναι πιο γρήγορη, πιο Pythonic και Dynamic από ποτέ για λεπτομέρειες.
Αυτή η ανάρτηση δείχνει την απόδοση και την ευκολία εκτέλεσης μεγάλης κλίμακας, υψηλής απόδοσης εκπαίδευσης και ανάπτυξης μοντέλων κατανεμημένων ML χρησιμοποιώντας το PyTorch 2.0 στο AWS. Αυτή η ανάρτηση περιγράφει περαιτέρω μια βήμα προς βήμα υλοποίηση της τελειοποίησης ενός μοντέλου RoBERTa (Robustly Optimized BERT Pretraining Approach) για ανάλυση συναισθήματος χρησιμοποιώντας AWS Deep Learning AMI (AWS DLAMI) και Εμπορευματοκιβώτια βαθιάς μάθησης AWS (DLC) ενεργοποιημένο Amazon Elastic Compute Cloud (Amazon EC2 p4d.24xlarge) με παρατηρούμενη επιτάχυνση 42% όταν χρησιμοποιείται με PyTorch 2.0 torch.compile + bf16 + fused AdamW. Στη συνέχεια, το βελτιωμένο μοντέλο αναπτύσσεται AWS Graviton-με βάση την παρουσία C7g EC2 σε Amazon Sage Maker με παρατηρούμενη επιτάχυνση 10% σε σύγκριση με το PyTorch 1.13.
Το παρακάτω σχήμα δείχνει ένα σημείο αναφοράς απόδοσης για τη λεπτομερή ρύθμιση ενός μοντέλου RoBERTa στο Amazon EC2 p4d.24xlarge με το AWS PyTorch 2.0 DLAMI + DLC.
Αναφέρομαι σε Βελτιστοποιημένη συμπεράσματα PyTorch 2.0 με επεξεργαστές AWS Graviton για λεπτομέρειες σχετικά με τα σημεία αναφοράς απόδοσης συμπερασμάτων που βασίζονται στο AWS Graviton για το PyTorch 2.0.
Υποστήριξη για το PyTorch 2.0 στο AWS
Η υποστήριξη του PyTorch2.0 δεν περιορίζεται στις υπηρεσίες και στους υπολογισμούς που εμφανίζονται σε παράδειγμα περίπτωση χρήσης σε αυτήν την ανάρτηση. επεκτείνεται σε πολλά άλλα στο AWS, τα οποία συζητάμε σε αυτήν την ενότητα.
Επιχειρηματική απαίτηση
Πολλοί πελάτες AWS, σε ένα ευρύ φάσμα βιομηχανιών, μεταμορφώνουν τις επιχειρήσεις τους χρησιμοποιώντας τεχνητή νοημοσύνη (AI), ειδικά στον τομέα της γενετικής τεχνητής νοημοσύνης και των μεγάλων γλωσσικών μοντέλων (LLMs) που έχουν σχεδιαστεί για να δημιουργούν κείμενο που μοιάζει με άνθρωπο. Αυτά είναι βασικά μεγάλα μοντέλα που βασίζονται σε τεχνικές βαθιάς μάθησης που εκπαιδεύονται με εκατοντάδες δισεκατομμύρια παραμέτρους. Η αύξηση στα μεγέθη των μοντέλων αυξάνει τον χρόνο εκπαίδευσης από ημέρες σε εβδομάδες, ακόμη και μήνες σε ορισμένες περιπτώσεις. Αυτό οδηγεί σε μια εκθετική αύξηση στο κόστος εκπαίδευσης και εξαγωγής συμπερασμάτων, το οποίο απαιτεί, περισσότερο από ποτέ, ένα πλαίσιο όπως το PyTorch 2.0 με ενσωματωμένη υποστήριξη ταχείας εκπαίδευσης μοντέλων και τη βελτιστοποιημένη υποδομή του AWS προσαρμοσμένη στους συγκεκριμένους φόρτους εργασίας και τις ανάγκες απόδοσης.
Επιλογή υπολογισμού
Το AWS παρέχει υποστήριξη PyTorch 2.0 για την ευρύτερη επιλογή ισχυρών επιλογών υπολογιστών, δικτύωσης υψηλής ταχύτητας και επεκτάσιμων επιλογών αποθήκευσης υψηλής απόδοσης που μπορείτε να χρησιμοποιήσετε για οποιοδήποτε έργο ή εφαρμογή ML και να προσαρμόσετε ώστε να ταιριάζει στις απαιτήσεις απόδοσης και προϋπολογισμού σας. Αυτό φαίνεται στο διάγραμμα στην επόμενη ενότητα. στο κατώτερο επίπεδο, παρέχουμε μια ευρεία επιλογή υπολογιστικών παρουσιών που υποστηρίζονται από επεξεργαστές AWS Graviton, Nvidia, AMD και Intel.
Για αναπτύξεις μοντέλων, μπορείτε να χρησιμοποιήσετε επεξεργαστές που βασίζονται σε ARM, όπως η πρόσφατα ανακοινωθείσα παρουσία βασισμένη στο AWS Graviton που παρέχει απόδοση συμπερασμάτων για το PyTorch 2.0 με έως και 3.5 φορές μεγαλύτερη ταχύτητα για το Resnet50 σε σύγκριση με την προηγούμενη έκδοση του PyTorch και έως και 1.4 φορές την ταχύτητα για BERT, καθιστώντας τις παρουσίες που βασίζονται στο AWS Graviton τις πιο γρήγορες βελτιστοποιημένες υπολογιστικές παρουσίες στο AWS για λύσεις συμπερασμάτων μοντέλων που βασίζονται σε CPU.
Επιλογή υπηρεσιών ML
Για να χρησιμοποιήσετε το AWS compute, μπορείτε να επιλέξετε από ένα ευρύ σύνολο παγκόσμιων υπηρεσιών που βασίζονται σε σύννεφο για ανάπτυξη ML, υπολογισμούς και ενορχήστρωση ροής εργασίας. Αυτή η επιλογή σάς επιτρέπει να ευθυγραμμιστείτε με τις στρατηγικές της επιχείρησής σας και του cloud και να εκτελέσετε εργασίες PyTorch 2.0 στην πλατφόρμα της επιλογής σας. Για παράδειγμα, εάν έχετε περιορισμούς εσωτερικού χώρου ή υπάρχουσες επενδύσεις σε προϊόντα ανοιχτού κώδικα, μπορείτε να χρησιμοποιήσετε το Amazon EC2, AWS ParallelCluster, ή AWS UltraCluster για την εκτέλεση κατανεμημένων φόρτων εργασίας κατάρτισης με βάση μια αυτοδιαχειριζόμενη προσέγγιση. Θα μπορούσατε επίσης να χρησιμοποιήσετε μια πλήρως διαχειριζόμενη υπηρεσία όπως το SageMaker για μια υποδομή εκπαίδευσης βελτιστοποιημένης κόστους, πλήρως διαχειριζόμενης και παραγωγής. Το SageMaker ενσωματώνεται επίσης με διάφορα εργαλεία MLOps, τα οποία σας επιτρέπουν να κλιμακώσετε την ανάπτυξη του μοντέλου σας, να μειώσετε το κόστος συμπερασμάτων, να διαχειριστείτε τα μοντέλα πιο αποτελεσματικά στην παραγωγή και να μειώσετε το λειτουργικό φόρτο.
Ομοίως, εάν έχετε υπάρχουσες επενδύσεις Kubernetes, μπορείτε επίσης να χρησιμοποιήσετε Υπηρεσία Amazon Elastic Kubernetes (Amazon EKS) και Kubeflow στο AWS για να εφαρμόσετε μια διοχέτευση ML για κατανεμημένη εκπαίδευση ή να χρησιμοποιήσετε μια εγγενή υπηρεσία ενορχήστρωσης κοντέινερ όπως Υπηρεσία ελαστικών εμπορευματοκιβωτίων Amazon (Amazon ECS) για εκπαίδευση και ανάπτυξη μοντέλων. Οι επιλογές για τη δημιουργία της πλατφόρμας ML δεν περιορίζονται σε αυτές τις υπηρεσίες. μπορείτε να επιλέξετε και να επιλέξετε ανάλογα με τις οργανωτικές σας απαιτήσεις για τις εργασίες σας στο PyTorch 2.0.
Ενεργοποίηση PyTorch 2.0 με AWS DLAMI και AWS DLC
Για να χρησιμοποιήσετε την προαναφερθείσα στοίβα υπηρεσιών AWS και ισχυρούς υπολογισμούς, πρέπει να εγκαταστήσετε μια βελτιστοποιημένη μεταγλωττισμένη έκδοση του πλαισίου PyTorch2.0 και τις απαιτούμενες εξαρτήσεις του, πολλές από τις οποίες είναι ανεξάρτητα έργα, και να τις δοκιμάσετε από άκρη σε άκρη. Μπορεί επίσης να χρειαστείτε βιβλιοθήκες ειδικά για την CPU για επιταχυνόμενες μαθηματικές ρουτίνες, βιβλιοθήκες ειδικά για GPU για ρουτίνες ταχείας μαθηματικής και επικοινωνίας μεταξύ GPU και προγράμματα οδήγησης GPU που πρέπει να ευθυγραμμιστούν με τον μεταγλωττιστή GPU που χρησιμοποιείται για τη μεταγλώττιση των βιβλιοθηκών GPU. Εάν οι εργασίες σας απαιτούν εκπαίδευση σε πολλούς κόμβους μεγάλης κλίμακας, χρειάζεστε ένα βελτιστοποιημένο δίκτυο που μπορεί να παρέχει τη χαμηλότερη καθυστέρηση και την υψηλότερη απόδοση. Αφού δημιουργήσετε τη στοίβα σας, πρέπει να τις σαρώνετε και να τις επιδιορθώνετε τακτικά για ευπάθειες ασφαλείας και να τις δημιουργείτε ξανά και να δοκιμάζετε ξανά τη στοίβα μετά από κάθε αναβάθμιση έκδοσης πλαισίου.
Το AWS συμβάλλει στη μείωση αυτής της βαριάς ανύψωσης, προσφέροντας ένα επιμελημένο και ασφαλές σύνολο πλαισίων, εξαρτήσεων και εργαλείων για την επιτάχυνση της βαθιάς εκμάθησης στο cloud, ωστόσο AWS DLAMI και DLC AWS. Αυτές οι προκατασκευασμένες και δοκιμασμένες εικόνες και κοντέινερ μηχανών είναι βελτιστοποιημένες για βαθιά εκμάθηση σε τύπους EC2 Accelerated Computing Instance, επιτρέποντάς σας να κλιμακώνεστε σε πολλούς κόμβους για κατανεμημένους φόρτους εργασίας πιο αποτελεσματικά και εύκολα. Περιλαμβάνει προκατασκευασμένο Ελαστικός προσαρμογέας υφάσματος (EFA), στοίβα GPU της Nvidia και πολλά πλαίσια βαθιάς εκμάθησης (TensorFlow, MXNet και PyTorch με τελευταία έκδοση 2.0) για κατανεμημένη εκπαίδευση βαθιάς μάθησης υψηλής απόδοσης. Δεν χρειάζεται να ξοδεύετε χρόνο για την εγκατάσταση και την αντιμετώπιση προβλημάτων λογισμικού και προγραμμάτων οδήγησης βαθιάς εκμάθησης ή για τη δημιουργία υποδομής ML, ούτε χρειάζεται να επιβαρύνεστε με το επαναλαμβανόμενο κόστος της επιδιόρθωσης αυτών των εικόνων για ευπάθειες ασφαλείας ή της αναδημιουργίας των εικόνων μετά από κάθε αναβάθμιση νέας έκδοσης πλαισίου. Αντίθετα, μπορείτε να εστιάσετε στην προσπάθεια υψηλότερης προστιθέμενης αξίας των εργασιών εκπαίδευσης σε κλίμακα σε μικρότερο χρονικό διάστημα και να επαναλαμβάνετε τα μοντέλα ML πιο γρήγορα.
Επισκόπηση λύσεων
Λαμβάνοντας υπόψη ότι η εκπαίδευση σε GPU και η εξαγωγή συμπερασμάτων στην CPU είναι μια δημοφιλής περίπτωση χρήσης για πελάτες AWS, συμπεριλάβαμε ως μέρος αυτής της ανάρτησης μια βήμα προς βήμα υλοποίηση μιας υβριδικής αρχιτεκτονικής (όπως φαίνεται στο παρακάτω διάγραμμα). Θα εξερευνήσουμε την τέχνη του δυνατού και θα χρησιμοποιήσουμε μια παρουσία P4 EC2 με υποστήριξη BF16 που έχει αρχικοποιηθεί με Base GPU DLAMI, συμπεριλαμβανομένων προγραμμάτων οδήγησης NVIDIA, CUDA, NCCL, EFA stack και PyTorch2.0 DLC για την τελειοποίηση ενός μοντέλου ανάλυσης συναισθήματος RoBERTa που σας δίνει έλεγχο και ευελιξία στη χρήση οποιασδήποτε βιβλιοθήκης ανοιχτού κώδικα ή αποκλειστικής χρήσης. Στη συνέχεια χρησιμοποιούμε το SageMaker για μια πλήρως διαχειριζόμενη υποδομή φιλοξενίας μοντέλων για να φιλοξενήσουμε το μοντέλο μας σε AWS Graviton3 Στιγμιότυπα C7g. Επιλέξαμε το C7g στο SageMaker επειδή έχει αποδειχθεί ότι μειώνει το κόστος συμπερασμάτων έως και 50% σε σχέση με συγκρίσιμες περιπτώσεις EC2 για συμπέρασμα σε πραγματικό χρόνο στο SageMaker. Το παρακάτω διάγραμμα απεικονίζει αυτήν την αρχιτεκτονική.
Το μοντέλο εκπαίδευσης και φιλοξενίας σε αυτήν την περίπτωση χρήσης αποτελείται από τα ακόλουθα βήματα:
- Εκκινήστε μια παρουσία EC2 Ubuntu που βασίζεται σε GPU DLAMI στο VPC σας και συνδεθείτε στην παρουσία σας χρησιμοποιώντας SSH.
- Αφού συνδεθείτε στην παρουσία σας EC2, πραγματοποιήστε λήψη του DLC του AWS PyTorch 2.0.
- Εκτελέστε το κοντέινερ DLC με ένα σενάριο εκπαίδευσης μοντέλου για να ρυθμίσετε το μοντέλο RoBERTa.
- Αφού ολοκληρωθεί η εκπαίδευση του μοντέλου, συσκευάστε το αποθηκευμένο μοντέλο, τα σενάρια συμπερασμάτων και μερικά αρχεία μεταδεδομένων σε ένα αρχείο tar που μπορεί να χρησιμοποιήσει το συμπέρασμα SageMaker και μεταφορτώστε το πακέτο μοντέλου σε Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3) κάδος.
- Αναπτύξτε το μοντέλο χρησιμοποιώντας το SageMaker και δημιουργήστε ένα τελικό σημείο συμπερασμάτων HTTPS. Το τελικό σημείο συμπερασμάτων SageMaker περιέχει έναν εξισορροπητή φορτίου και μία ή περισσότερες παρουσίες του κοντέινερ συμπερασμάτων σας σε διαφορετικές Ζώνες Διαθεσιμότητας. Μπορείτε να αναπτύξετε είτε πολλές εκδόσεις του ίδιου μοντέλου είτε εντελώς διαφορετικά μοντέλα πίσω από αυτό το μεμονωμένο τελικό σημείο. Σε αυτό το παράδειγμα, φιλοξενούμε ένα μόνο μοντέλο.
- Επικαλέστε το τελικό σημείο του μοντέλου σας στέλνοντάς του δεδομένα δοκιμής και επαληθεύστε την έξοδο συμπερασμάτων.
Στις επόμενες ενότητες, παρουσιάζουμε την τελειοποίηση ενός μοντέλου RoBERTa για ανάλυση συναισθήματος. Το RoBERTa αναπτύχθηκε από το Facebook AI, βελτιώνοντας το δημοφιλές μοντέλο BERT τροποποιώντας βασικές υπερπαραμέτρους και προπονώντας σε ένα μεγαλύτερο σώμα. Αυτό οδηγεί σε βελτιωμένη απόδοση σε σύγκριση με τη βανίλια BERT.
Χρησιμοποιούμε το μετασχηματιστές βιβλιοθήκη από το Hugging Face για να προεκπαιδεύσουμε το μοντέλο RoBERTa σε περίπου 124 εκατομμύρια tweets και το ρυθμίζουμε με ακρίβεια στο σύνολο δεδομένων Twitter για ανάλυση συναισθήματος.
Προϋποθέσεις
Βεβαιωθείτε ότι πληροίτε τις ακόλουθες προϋποθέσεις:
- Έχετε ένα Λογαριασμός AWS.
- Βεβαιωθείτε ότι είστε στο
us-west-2
Περιοχή για να εκτελέσετε αυτό το παράδειγμα. (Αυτό το παράδειγμα δοκιμάζεται σεus-west-2
; Ωστόσο, μπορείτε να τρέξετε σε οποιαδήποτε άλλη περιοχή.) - Δημιουργήστε έναν ρόλο με το όνομα
sagemakerrole
. Προσθήκη διαχειριζόμενων πολιτικώνAmazonSageMakerFullAccess
καιAmazonS3FullAccess
για να δώσετε στο SageMaker πρόσβαση σε κάδους S3. - Δημιουργήστε έναν ρόλο EC2 με το όνομα
ec2_role
. Χρησιμοποιήστε την ακόλουθη πολιτική αδειών:
1. Εκκινήστε το παράδειγμα ανάπτυξης
Δημιουργούμε μια παρουσία p4d.24xlarge που προσφέρει 8 GPU NVIDIA A100 Tensor Core σε us-west-2
:
Όταν επιλέγετε το AMI, ακολουθήστε το σημειώσεις έκδοσης για να εκτελέσετε αυτήν την εντολή χρησιμοποιώντας το Διεπαφή γραμμής εντολών AWS (AWS CLI) για να βρείτε το αναγνωριστικό AMI για χρήση us-west-2
:
Βεβαιωθείτε ότι το μέγεθος του ριζικού όγκου gp3 είναι 200 GiB.
Η κρυπτογράφηση τόμου EBS δεν είναι ενεργοποιημένη από προεπιλογή. Εξετάστε το ενδεχόμενο να το αλλάξετε κατά τη μεταφορά αυτής της λύσης στην παραγωγή.
2. Κατεβάστε ένα κοντέινερ Deep Learning
Τα DLC AWS είναι διαθέσιμα ως εικόνες Docker Amazon Elastic Container Registry Public, μια διαχειριζόμενη υπηρεσία μητρώου εικόνων κοντέινερ AWS που είναι ασφαλής, επεκτάσιμη και αξιόπιστη. Κάθε εικόνα Docker έχει δημιουργηθεί για εκπαίδευση ή συμπέρασμα σε μια συγκεκριμένη έκδοση πλαισίου βαθιάς εκμάθησης, την έκδοση Python, με υποστήριξη CPU ή GPU. Επιλέξτε το πλαίσιο PyTorch 2.0 από τη λίστα των διαθέσιμων Εικόνες Deep Learning Containers.
Ολοκληρώστε τα παρακάτω βήματα για να κατεβάσετε το DLC σας:
ένα. SSH στο παράδειγμα. Από προεπιλογή, η ομάδα ασφαλείας που χρησιμοποιείται με το EC2 ανοίγει τη θύρα SSH σε όλους. Λάβετε υπόψη αυτό εάν μεταφέρετε αυτήν τη λύση στην παραγωγή:
Από προεπιλογή, η ομάδα ασφαλείας που χρησιμοποιείται με το Amazon EC2 ανοίγει τη θύρα SSH σε όλους. Εξετάστε το ενδεχόμενο να το αλλάξετε εάν μεταφέρετε αυτήν τη λύση στην παραγωγή.
σι. Ορίστε τις μεταβλητές περιβάλλοντος που απαιτούνται για την εκτέλεση των υπόλοιπων βημάτων αυτής της υλοποίησης:
Το Amazon ECR υποστηρίζει δημόσια αποθετήρια εικόνων με δικαιώματα που βασίζονται σε πόρους χρησιμοποιώντας Διαχείριση ταυτότητας και πρόσβασης AWS (IAM) ώστε συγκεκριμένοι χρήστες ή υπηρεσίες να έχουν πρόσβαση σε εικόνες.
ντο. Συνδεθείτε στο μητρώο DLC:
ρε. Τραβήξτε το πιο πρόσφατο κοντέινερ PyTorch 2.0 με υποστήριξη GPU us-west-2
Εάν εμφανιστεί το σφάλμα "δεν υπάρχει χώρος στη συσκευή", βεβαιωθείτε ότι το κάνετε αύξηση ο όγκος EC2 EBS στα 200 GiB και μετά επεκτείνουν το σύστημα αρχείων Linux.
3. Κλωνοποιήστε τα πιο πρόσφατα σενάρια προσαρμοσμένα στο PyTorch 2.0
Κλωνοποιήστε τα σενάρια με τον ακόλουθο κώδικα:
Επειδή χρησιμοποιούμε το API μετασχηματιστών Hugging Face με την πιο πρόσφατη έκδοση 4.28.1, έχει ήδη ενεργοποιήσει την υποστήριξη PyTorch 2.0. Προσθέσαμε το ακόλουθο όρισμα στο API του εκπαιδευτή στο train_sentiment.py
για να ενεργοποιήσετε τις νέες δυνατότητες του PyTorch 2.0:
- Συγκέντρωση φακού – Απολαύστε μέση ταχύτητα 43% στις GPU της Nvidia A100 με μία γραμμή αλλαγής.
- Τύπος δεδομένων BF16 – Υποστήριξη νέου τύπου δεδομένων (Brain Floating Point) για Ampere ή νεότερες GPU.
- Fused AdamW optimizer – Συνδυασμένη εφαρμογή AdamW για περαιτέρω επιτάχυνση της εκπαίδευσης. Αυτή η μέθοδος στοχαστικής βελτιστοποίησης τροποποιεί την τυπική εφαρμογή της αποσύνθεσης βάρους στον Adam αποσυνδέοντας τη διάσπαση βάρους από την ενημέρωση κλίσης.
4. Δημιουργήστε μια νέα εικόνα Docker με εξαρτήσεις
Επεκτείνουμε την προ-ενσωματωμένη εικόνα DLC του PyTorch 2.0 για να εγκαταστήσουμε τον μετασχηματιστή Hugging Face και άλλες βιβλιοθήκες που χρειαζόμαστε για να τελειοποιήσουμε το μοντέλο μας. Αυτό σας επιτρέπει να χρησιμοποιείτε τις συμπεριλαμβανόμενες δοκιμασμένες και βελτιστοποιημένες βιβλιοθήκες και ρυθμίσεις βαθιάς εκμάθησης χωρίς να χρειάζεται να δημιουργήσετε μια εικόνα από την αρχή. Δείτε τον παρακάτω κώδικα:
5. Ξεκινήστε την προπόνηση χρησιμοποιώντας το δοχείο
Εκτελέστε την ακόλουθη εντολή Docker για να ξεκινήσετε τη λεπτομέρεια του μοντέλου στο tweet_eval
σύνολο δεδομένων συναισθημάτων. Χρησιμοποιούμε τα ορίσματα κοντέινερ Docker (μέγεθος κοινόχρηστης μνήμης, μέγιστη κλειδωμένη μνήμη και μέγεθος στοίβας) προτείνεται από την Nvidia για φόρτους εργασίας βαθιάς μάθησης.
Θα πρέπει να περιμένετε την ακόλουθη έξοδο. Το σενάριο κατεβάζει πρώτα το σύνολο δεδομένων TweetEval, το οποίο αποτελείται από επτά ετερογενείς εργασίες στο Twitter, όλα πλαισιωμένα ως ταξινόμηση tweet πολλαπλών κλάσεων. Οι εργασίες περιλαμβάνουν ειρωνεία, μίσος, προσβλητικό, στάση, emoji, συγκίνηση και συναίσθημα.
Στη συνέχεια, το σενάριο κατεβάζει το βασικό μοντέλο και ξεκινά τη διαδικασία λεπτομέρειας. Οι μετρήσεις εκπαίδευσης και αξιολόγησης αναφέρονται στο τέλος κάθε εποχής.
Στατιστικά στοιχεία απόδοσης
Με το PyTorch 2.0 και την πιο πρόσφατη βιβλιοθήκη μετασχηματιστών Hugging Face 4.28.1, παρατηρήσαμε επιτάχυνση 42% σε μία μόνο παρουσία p4d.24xlarge με 8 GPU A100 40 GB. Οι βελτιώσεις απόδοσης προέρχονται από έναν συνδυασμό του torch.compile, του τύπου δεδομένων BF16 και του συγχωνευμένου βελτιστοποιητή AdamW. Ο παρακάτω κώδικας είναι το τελικό αποτέλεσμα δύο προπονήσεων με και χωρίς νέα χαρακτηριστικά:
6. Δοκιμάστε το εκπαιδευμένο μοντέλο τοπικά πριν προετοιμαστείτε για το συμπέρασμα του SageMaker
Μπορείτε να βρείτε τα ακόλουθα αρχεία κάτω από $ml_working_dir/saved_model/
μετά την προπόνηση:
Ας βεβαιωθούμε ότι μπορούμε να εκτελέσουμε το συμπέρασμα τοπικά προτού προετοιμαστούμε για το συμπέρασμα SageMaker. Μπορούμε να φορτώσουμε το αποθηκευμένο μοντέλο και να εκτελέσουμε το συμπέρασμα τοπικά χρησιμοποιώντας το test_trained_model.py
γραφή:
Θα πρέπει να περιμένετε την ακόλουθη έξοδο με την είσοδο "Οι περιπτώσεις Covid αυξάνονται γρήγορα!":
7. Προετοιμάστε το μοντέλο tarball για συμπέρασμα SageMaker
Κάτω από τον κατάλογο όπου βρίσκεται το μοντέλο, δημιουργήστε έναν νέο κατάλογο που ονομάζεται code
:
Στον νέο κατάλογο, δημιουργήστε το αρχείο inference.py
και προσθέστε σε αυτό τα εξής:
Στο τέλος, θα πρέπει να έχετε την ακόλουθη δομή φακέλου:
Το μοντέλο είναι έτοιμο να συσκευαστεί και να μεταφορτωθεί στο Amazon S3 για χρήση με το συμπέρασμα SageMaker:
8. Αναπτύξτε το μοντέλο σε μια παρουσία του SageMaker AWS Graviton
Οι νέες γενιές CPU προσφέρουν σημαντική βελτίωση της απόδοσης στο συμπέρασμα ML χάρη σε εξειδικευμένες ενσωματωμένες οδηγίες. Σε αυτήν την περίπτωση χρήσης, χρησιμοποιούμε την πλήρως διαχειριζόμενη υποδομή φιλοξενίας SageMaker με παρουσίες C3g που βασίζονται στο AWS Graviton7. Το AWS έχει επίσης μετρήσει έως και 50% εξοικονόμηση κόστους για το συμπέρασμα του PyTorch με παρουσίες EC3 C2g που βασίζονται στο AWS Graviton7 στο Torch Hub ResNet50 και πολλά μοντέλα Hugging Face σε σχέση με συγκρίσιμες παρουσίες EC2.
Για να αναπτύξουμε τα μοντέλα σε περιπτώσεις AWS Graviton, χρησιμοποιούμε DLC AWS που παρέχουν υποστήριξη για PyTorch 2.0 και TorchServe 0.8.0, ή μπορείτε φέρτε τα δικά σας δοχεία που είναι συμβατά με την αρχιτεκτονική ARMv8.2.
Χρησιμοποιούμε το μοντέλο που εκπαιδεύσαμε νωρίτερα: s3://<your-s3-bucket>/twitter-roberta-base-sentiment-latest.tar.gz
. Εάν δεν έχετε χρησιμοποιήσει το SageMaker στο παρελθόν, ελέγξτε Ξεκινήστε με το Amazon SageMaker.
Για να ξεκινήσετε, βεβαιωθείτε ότι το πακέτο SageMaker είναι ενημερωμένο:
Επειδή αυτό είναι ένα παράδειγμα, δημιουργήστε ένα αρχείο που ονομάζεται start_endpoint.py
και προσθέστε τον παρακάτω κώδικα. Αυτό θα είναι το σενάριο Python για να ξεκινήσει ένα τελικό σημείο συμπερασμάτων SageMaker με τη λειτουργία:
Χρησιμοποιούμε ml.c7g.4xlarge για παράδειγμα και ανακτούμε το PT 2.0 με ένα εύρος εικόνας inference_graviton
. Αυτή είναι η παρουσία μας AWS Graviton3.
Στη συνέχεια, δημιουργούμε το αρχείο που εκτελεί την πρόβλεψη. Αυτά τα κάνουμε ως ξεχωριστά σενάρια, ώστε να μπορούμε να εκτελέσουμε τις προβλέψεις όσες φορές θέλουμε. Δημιουργώ predict.py
με τον ακόλουθο κώδικα:
Με τα σενάρια που δημιουργούνται, μπορούμε τώρα να ξεκινήσουμε ένα τελικό σημείο, να κάνουμε προβλέψεις έναντι του τελικού σημείου και να καθαρίσουμε όταν τελειώσουμε:
9. Καθαρίστε
Τέλος, θέλουμε να ξεκαθαρίσουμε από αυτό το παράδειγμα. Δημιουργήστε cleanup.py και προσθέστε τον ακόλουθο κώδικα:
Συμπέρασμα
Τα AWS DLAMI και DLC έχουν γίνει το βασικό πρότυπο για την εκτέλεση φόρτου εργασίας βαθιάς εκμάθησης σε μια ευρεία επιλογή υπηρεσιών υπολογιστών και ML στο AWS. Μαζί με τη χρήση DLC για συγκεκριμένο πλαίσιο σε υπηρεσίες AWS ML, μπορείτε επίσης να χρησιμοποιήσετε ένα μεμονωμένο πλαίσιο στο Amazon EC2, το οποίο καταργεί τη βαριά ανύψωση που απαιτείται για τους προγραμματιστές για τη δημιουργία και τη διατήρηση εφαρμογών βαθιάς εκμάθησης. Αναφέρομαι σε Σημειώσεις Έκδοσης για το DLAMI και Διαθέσιμες εικόνες Deep Learning Containers για να ξεκινήσετε.
Αυτή η ανάρτηση έδειξε μία από τις πολλές δυνατότητες εκπαίδευσης και εξυπηρέτησης του επόμενου μοντέλου σας στο AWS και συζητήθηκαν διάφορες μορφές που μπορείτε να υιοθετήσετε για να επιτύχετε τους επιχειρηματικούς σας στόχους. Δοκιμάστε αυτό το παράδειγμα ή χρησιμοποιήστε τις άλλες υπηρεσίες μας AWS ML για να επεκτείνετε την παραγωγικότητα δεδομένων για την επιχείρησή σας. Έχουμε συμπεριλάβει ένα απλό πρόβλημα ανάλυσης συναισθήματος, έτσι ώστε οι νέοι πελάτες στην ML να μπορούν να καταλάβουν πόσο απλό είναι να ξεκινήσετε με το PyTorch 2.0 στο AWS. Θα καλύψουμε πιο προηγμένες περιπτώσεις χρήσης, μοντέλα και τεχνολογίες AWS σε επερχόμενες αναρτήσεις ιστολογίου.
Σχετικά με τους συγγραφείς
Kanwaljit Khurmi είναι κύριος αρχιτέκτονας λύσεων στο Amazon Web Services. Συνεργάζεται με τους πελάτες του AWS για να παρέχει καθοδήγηση και τεχνική βοήθεια βοηθώντας τους να βελτιώσουν την αξία των λύσεών τους όταν χρησιμοποιούν το AWS. Η Kanwaljit ειδικεύεται στο να βοηθά τους πελάτες με εφαρμογές κοντέινερ και μηχανικής εκμάθησης.
Μάικ Σνάιντερ είναι ένας προγραμματιστής συστημάτων, με έδρα το Phoenix AZ. Είναι μέλος των δοχείων Deep Learning, υποστηρίζοντας διάφορες εικόνες κοντέινερ Framework, για να συμπεριλάβει το Graviton Inference. Είναι αφοσιωμένος στην αποτελεσματικότητα και τη σταθερότητα των υποδομών.
Λάι Γουέι είναι Ανώτερος Μηχανικός Λογισμικού στο Amazon Web Services. Επικεντρώνεται στη δημιουργία εύχρηστων, υψηλής απόδοσης και κλιμακούμενων πλαισίων βαθιάς μάθησης για την επιτάχυνση της εκπαίδευσης κατανεμημένων μοντέλων. Εκτός δουλειάς, του αρέσει να περνά χρόνο με την οικογένειά του, να κάνει πεζοπορία και σκι.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoAiStream. Web3 Data Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- Minting the Future με την Adryenn Ashley. Πρόσβαση εδώ.
- Αγορά και πώληση μετοχών σε εταιρείες PRE-IPO με το PREIPO®. Πρόσβαση εδώ.
- πηγή: https://aws.amazon.com/blogs/machine-learning/part-1-build-high-performance-ml-models-using-pytorch-2-0-on-aws/
- :έχει
- :είναι
- :δεν
- :που
- $UP
- 1
- 10
- 100
- 11
- 12
- 13
- 14
- 15%
- 16
- 17
- 20
- 200
- 23
- 25
- 26%
- 28
- 31
- 7
- 8
- 9
- a
- επιταχύνουν
- επιτάχυνση
- επιταχύνοντας
- Αποδέχομαι
- πρόσβαση
- απέναντι
- Ενέργειες
- Αδάμ
- προσθέτω
- προστιθέμενη
- ενστερνίζομαι
- προηγμένες
- Μετά το
- κατά
- AI
- ευθυγράμμιση
- ευθυγραμμισμένος
- Όλα
- επιτρέπουν
- Επιτρέποντας
- επιτρέπει
- κατά μήκος
- ήδη
- Επίσης
- Amazon
- Amazon EC2
- Amazon υπηρεσίες Web
- AMD
- ποσό
- an
- ανάλυση
- αναλύσει
- και
- ανακοίνωσε
- Άλλος
- κάθε
- api
- Εφαρμογή
- εφαρμογές
- πλησιάζω
- περίπου
- αρχιτεκτονική
- ΕΙΝΑΙ
- ΠΕΡΙΟΧΗ
- επιχείρημα
- επιχειρήματα
- τεχνητός
- τεχνητή νοημοσύνη
- Τεχνητή νοημοσύνη (AI)
- AS
- Βοήθεια
- At
- διαθεσιμότητα
- διαθέσιμος
- μέσος
- AWS
- Balancer
- βάση
- βασίζονται
- Βασικα
- BE
- επειδή
- γίνονται
- ήταν
- πριν
- αρχίζουν
- πίσω
- αναφοράς
- αναφοράς
- Μεγάλος
- δισεκατομμύρια
- BIN
- Μπλοκ
- Μηνύματα Blog
- σώμα
- Κάτω μέρος
- Εγκέφαλος
- ευρύς
- προϋπολογισμός
- χτίζω
- Κτίριο
- χτισμένο
- ενσωματωμένο
- βάρος
- επιχείρηση
- επιχειρήσεις
- αλλά
- by
- κλήση
- που ονομάζεται
- κλήση
- CAN
- δυνατότητες
- περίπτωση
- περιπτώσεις
- CD
- αλλαγή
- αλλαγή
- επιλογή
- Επιλέξτε
- ταξινόμηση
- πελάτης
- Backup
- κωδικός
- COM
- συνδυασμός
- έρχεται
- Επικοινωνία
- συγκρίσιμος
- σύγκριση
- σύμφωνος
- πλήρης
- Υπολογίστε
- υπολογιστή
- Computer Vision
- χρήση υπολογιστή
- Connect
- Εξετάστε
- αποτελείται
- πρόξενος
- Δοχείο
- Εμπορευματοκιβώτια
- περιεχόμενο
- δημιουργία περιεχομένου
- έλεγχος
- πυρήνας
- Κόστος
- εξοικονόμηση κόστους
- Δικαστικά έξοδα
- θα μπορούσε να
- κάλυμμα
- δημιουργία
- δημιουργήθηκε
- δημιουργία
- Διαπιστεύσεις
- επιμέλεια
- Ρεύμα
- Πελάτες
- προσαρμόσετε
- ημερομηνία
- Ημερομηνία
- Ημ.
- αφιερωμένο
- βαθύς
- βαθιά μάθηση
- Προεπιλογή
- καταδεικνύει
- Σε συνάρτηση
- παρατάσσω
- αναπτυχθεί
- ανάπτυξη
- αναπτύξεις
- σχεδιασμένα
- καθέκαστα
- αναπτύχθηκε
- Εργολάβος
- προγραμματιστές
- Ανάπτυξη
- διαφορετικές
- Σύνοψη
- συζητήσουν
- συζήτηση
- διανέμονται
- κατανεμημένη εκπαίδευση
- διάφορα
- do
- Λιμενεργάτης
- γίνεται
- Μην
- κατεβάσετε
- λήψεις
- οδηγός
- οδηγοί
- οδήγηση
- δυο
- δυναμικός
- κάθε
- Νωρίτερα
- ευκολία
- εύκολα
- εύκολος
- αποτέλεσμα
- αποτελεσματικά
- αποδοτικότητα
- αποτελεσματικά
- προσπάθεια
- είτε
- ενεργοποιήσετε
- ενεργοποιημένη
- κρυπτογράφηση
- τέλος
- Τελικό σημείο
- μηχανικός
- ενισχυμένη
- εξ ολοκλήρου
- Περιβάλλον
- εποχή
- σφάλμα
- αξιολογήσει
- εκτίμηση
- Even
- ΠΑΝΤΑ
- Κάθε
- παράδειγμα
- υφιστάμενα
- Ανάπτυξη
- αναμένω
- εμπειρία
- διερευνήσει
- εκθετικός
- εξαγωγή
- επεκτείνουν
- Επεκτείνεται
- ύφασμα
- Πρόσωπο
- οικογένεια
- γρηγορότερα
- ταχύτερα
- Χαρακτηριστικά
- λίγοι
- Εικόνα
- Αρχεία
- Αρχεία
- τελικός
- Εύρεση
- Όνομα
- ταιριάζουν
- Ευελιξία
- επιπλέων
- Συγκέντρωση
- εστιάζοντας
- ακολουθήστε
- Εξής
- Για
- Πλαίσιο
- πλαισίων
- από
- πλήρως
- περαιτέρω
- παράγουν
- παράγεται
- γενεά
- γενεών
- γενετική
- Παραγωγική τεχνητή νοημοσύνη
- παίρνω
- Git
- GitHub
- Δώστε
- δίνει
- Παγκόσμιο
- GPU
- GPU
- Group
- Ανάπτυξη
- καθοδήγηση
- Έχω
- που έχει
- he
- βαριά
- βαριά ανύψωση
- βοήθεια
- βοηθά
- υψηλή απόδοση
- υψηλότερο
- υψηλότερο
- του
- κατέχει
- οικοδεσπότης
- φιλοξενία
- Πως
- Ωστόσο
- HTML
- http
- HTTPS
- Hub
- Εκατοντάδες
- Υβριδικό
- ID
- Ταυτότητα
- if
- απεικονίζει
- εικόνα
- εικόνες
- εφαρμογή
- εκτέλεση
- εισαγωγή
- βελτίωση
- βελτιωθεί
- βελτίωση
- βελτιώσεις
- βελτίωση
- in
- περιλαμβάνουν
- περιλαμβάνονται
- περιλαμβάνει
- Συμπεριλαμβανομένου
- Αυξάνουν
- αύξηση
- ανεξάρτητος
- βιομηχανίες
- Υποδομή
- εισαγωγή
- εγκαθιστώ
- εγκατασταθεί
- εγκατάσταση
- παράδειγμα
- αντί
- οδηγίες
- Ενσωματώνει
- Intel
- Νοημοσύνη
- σε
- Επενδύσεις
- IP
- ειρωνεία
- IT
- ΤΟΥ
- Θέσεις εργασίας
- jpg
- json
- Κλειδί
- επιγραφή
- Γλώσσα
- large
- μεγάλης κλίμακας
- μεγαλύτερος
- Αφάνεια
- αργότερο
- τελευταία έκδοση
- ξεκινήσει
- Οδηγεί
- μάθηση
- αριστερά
- βιβλιοθήκες
- Βιβλιοθήκη
- ανύψωση
- Μου αρέσει
- Περιωρισμένος
- γραμμή
- linux
- Λιστα
- φορτίο
- τοπικά
- που βρίσκεται
- κλειδωμένη
- κούτσουρο
- Σύνδεση
- off
- χαμηλότερα
- χαμηλότερο
- μηχανή
- μάθηση μηχανής
- διατηρήσουν
- κάνω
- Κατασκευή
- διαχείριση
- διαχειρίζεται
- πολοί
- μαθηματικά
- max
- Ενδέχεται..
- Γνωρίστε
- μέλος
- Μνήμη
- συγχωνεύεται
- Μεταδεδομένα
- μέθοδος
- Metrics
- εκατομμύριο
- ML
- MLOps
- Τρόπος
- μοντέλο
- μοντέλα
- ενότητες
- μήνες
- περισσότερο
- κίνηση
- πολλαπλούς
- όνομα
- Φυσικό
- Επεξεργασία φυσικής γλώσσας
- απαραίτητος
- Ανάγκη
- που απαιτούνται
- ανάγκες
- αρνητικός
- δίκτυο
- δικτύωσης
- Ουδέτερος
- Νέα
- Νέες δυνατότητες
- Νέες τεχνολογίες
- επόμενη
- κόμβων
- Notes
- Ειδοποίηση..
- τώρα
- Nvidia
- στόχοι
- of
- προσβλητικός
- προσφορά
- προσφορά
- προσφορές
- on
- ONE
- ανοικτού κώδικα
- ανοίγει
- επιχειρήσεων
- βελτιστοποίηση
- βελτιστοποιημένη
- Επιλογές
- or
- ενορχήστρωση
- οργανωτικός
- OS
- ΑΛΛΑ
- Άλλα
- δικός μας
- έξω
- παραγωγή
- εκτός
- δική
- πακέτο
- συσκευάζονται
- παράμετροι
- μέρος
- Patch
- Διόρθωση
- επίδοση
- άδεια
- δικαιώματα
- Φοίνιξ
- επιλέξτε
- εκλεκτός
- αγωγού
- πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- σας παρακαλούμε
- Σημείο
- Πολιτικές
- πολιτική
- Δημοφιλής
- δυνατότητες
- Θέση
- Δημοσιεύσεις
- τροφοδοτείται
- ισχυρός
- προβλέψει
- πρόβλεψη
- Προβλέψεις
- Προετοιμάστε
- προετοιμασία
- προαπαιτούμενα
- προηγούμενος
- Κύριος
- Πρόβλημα
- διαδικασια μας
- μεταποίηση
- επεξεργαστές
- παραγωγή
- παραγωγικότητα
- Προϊόντα
- σχέδιο
- έργα
- ιδιόκτητο
- αποδεδειγμένη
- παρέχουν
- παρέχει
- δημόσιο
- βάζω
- Python
- pytorch
- έτοιμος
- πρόσφατος
- πρόσφατα
- επαναλαμβανόμενα
- μείωση
- περιοχή
- μητρώου
- τακτικά
- σχετικής
- απελευθερώνουν
- αξιόπιστος
- υπόλοιπα
- αναφέρθηκαν
- απαιτούν
- απαιτείται
- απαιτήσεις
- Απαιτεί
- πόρος
- απάντησης
- περιορισμούς
- αποτέλεσμα
- απόδοση
- ανασκόπηση
- Ρόλος
- ρίζα
- τρέξιμο
- τρέξιμο
- σοφός
- Συμπεράσματα SageMaker
- ίδιο
- Οικονομίες
- επεκτάσιμη
- Κλίμακα
- σάρωση
- scikit-μάθετε
- έκταση
- σκορ
- μηδέν
- Εφαρμογές
- Τμήμα
- τμήματα
- προστατευμένο περιβάλλον
- ασφάλεια
- δείτε
- επιλογή
- επιλογή
- αποστολή
- αρχαιότερος
- συναίσθημα
- ξεχωριστό
- εξυπηρετούν
- υπηρεσία
- Υπηρεσίες
- Συνεδρίαση
- σειρά
- ρυθμίσεις
- setup
- επτά
- διάφοροι
- SHA256
- Shared
- θα πρέπει να
- βιτρίνα
- έδειξε
- παρουσιάζεται
- Δείχνει
- σημαντικός
- Απλούς
- ενιαίας
- Μέγεθος
- μεγέθη
- So
- λογισμικό
- Μηχανικός Λογισμικού
- λύση
- Λύσεις
- μερικοί
- Χώρος
- ειδικευμένος
- ειδικεύεται
- συγκεκριμένες
- ειδικά
- ταχύτητα
- ταχύτητες
- δαπανήσει
- Δαπάνες
- σταθερότητα
- σωρός
- πρότυπο
- Εκκίνηση
- ξεκίνησε
- ξεκινά
- Δήλωση
- στατιστική
- Βήμα
- Βήματα
- χώρος στο δίσκο
- επιλογές αποθήκευσης
- στρατηγικές
- δομή
- τέτοιος
- υποστήριξη
- υποστηριζόνται!
- Στήριξη
- Υποστηρίζει
- σύστημα
- συστήματα
- επειξειργασμένος από ραπτήν
- εργασίες
- Τεχνικός
- τεχνικές
- Τεχνολογίες
- tensorflow
- δοκιμή
- δοκιμαστεί
- από
- ότι
- Η
- Η περιοχή
- τους
- Τους
- τότε
- Αυτοί
- αυτοί
- πράγματα
- αυτό
- αν και?
- Μέσω
- διακίνηση
- κερκίδα
- ώρα
- φορές
- προς την
- εργαλεία
- δάδα
- Τρένο
- εκπαιδευμένο
- Εκπαίδευση
- μετασχηματιστής
- μετασχηματιστές
- μετασχηματίζοντας
- προσπαθώ
- τιτίβισμα
- tweets
- Τουίτερ
- δύο
- τύπος
- τύποι
- τυπικός
- Ubuntu
- υπό
- καταλαβαίνω
- ανερχόμενος
- Ενημέρωση
- ενημερώθηκε
- αναβάθμισης
- Φορτώθηκε
- Χρήση
- χρήση
- περίπτωση χρήσης
- μεταχειρισμένος
- Χρήστες
- χρησιμοποιώντας
- χρησιμότητα
- αξία
- ποικιλία
- διάφορα
- επαληθεύει
- εκδοχή
- όραμα
- τόμος
- Θέματα ευπάθειας
- θέλω
- we
- ιστός
- διαδικτυακές υπηρεσίες
- Εβδ.
- βάρος
- καλωσόρισμα
- πότε
- Ποιό
- ευρέως
- θα
- με
- χωρίς
- Εργασία
- ροής εργασίας
- λειτουργεί
- γράφω
- γραφή
- X
- Εσείς
- Σας
- zephyrnet
- ζώνες