Oamenii de știință de date au nevoie de un mediu coerent și reproductibil pentru sarcinile de lucru de învățare automată (ML) și știința datelor, care să permită gestionarea dependențelor și să fie sigur. Containere de învățare profundă AWS oferă deja imagini Docker prefabricate pentru antrenarea și servirea modelelor în cadre obișnuite, cum ar fi TensorFlow, PyTorch și MXNet. Pentru a îmbunătăți această experiență, am anunțat o versiune beta publică a distribuției open-source SageMaker la 2023 JupyterCon. Aceasta oferă o experiență ML unificată de la capăt la capăt la dezvoltatorii ML cu diferite niveluri de expertiză. Dezvoltatorii nu mai trebuie să comute între diferite containere cadru pentru experimentare sau pe măsură ce trec de la mediile locale JupyterLab și notebook-uri SageMaker la joburi de producție pe SageMaker. Distribuția SageMaker cu sursă deschisă acceptă cele mai comune pachete și biblioteci pentru știința datelor, ML și vizualizare, cum ar fi TensorFlow, PyTorch, Scikit-learn, Pandas și Matplotlib. Puteți începe să utilizați recipientul din Galeria publică Amazon ECR începând de azi.
În această postare, vă arătăm cum puteți utiliza distribuția open-source SageMaker pentru a experimenta rapid mediul dvs. local și pentru a le promova cu ușurință la locuri de muncă pe SageMaker.
Prezentare generală a soluțiilor
Pentru exemplul nostru, prezentăm antrenarea unui model de clasificare a imaginilor folosind PyTorch. Noi folosim KMNIST set de date disponibil public pe PyTorch. Antrenăm un model de rețea neuronală, testăm performanța modelului și, în cele din urmă, imprimăm pierderile de antrenament și test. Blocnotesul complet pentru acest exemplu este disponibil în Depozitul de exemple SageMaker Studio Lab. Începem experimentarea pe un laptop local folosind distribuția open-source, mutam-o la Amazon SageMaker Studio pentru utilizarea unei instanțe mai mari și apoi programați blocnotesul ca o lucrare de blocnotes.
Cerințe preliminare
Aveți nevoie de următoarele condiții preliminare:
Configurați mediul dvs. local
Puteți începe direct să utilizați distribuția open-source pe laptopul local. Pentru a porni JupyterLab, rulați următoarele comenzi pe terminalul dvs.:
Puteți înlocui ECR_IMAGE_ID
cu oricare dintre etichetele de imagine disponibile în Galeria publică Amazon ECR, sau alegeți latest-gpu
eticheta dacă utilizați o mașină care acceptă GPU.
Această comandă va porni JupyterLab și va furniza o adresă URL pe terminal, cum ar fi http://127.0.0.1:8888/lab?token=<token>
. Copiați linkul și introduceți-l în browserul dvs. preferat pentru a porni JupyterLab.
Configurați Studio
Studio este un mediu de dezvoltare integrat (IDE) end-to-end pentru ML, care permite dezvoltatorilor și cercetătorilor de date să construiască, să antreneze, să implementeze și să monitorizeze modele ML la scară. Studio oferă o listă extinsă de imagini primare cu cadre și pachete comune, cum ar fi Data Science, TensorFlow, PyTorch și Spark. Aceste imagini fac simplu pentru oamenii de știință să înceapă cu ML prin simpla alegere a unui cadru și a unui tip de instanță la alegerea lor pentru calcul.
Acum puteți utiliza distribuția open-source SageMaker pe Studio folosind Studio aduce propria ta imagine caracteristică. Pentru a adăuga distribuția open-source la domeniul dvs. SageMaker, parcurgeți următorii pași:
- Adăugați distribuția open-source la contul dvs Registrul Amazon de containere elastice (Amazon ECR) rulând următoarele comenzi pe terminalul dvs.:
- Creați o imagine SageMaker și atașați imaginea la domeniul Studio:
- Pe consola SageMaker, lansați Studio alegându-vă domeniul și profilul de utilizator existent.
- Opțional, reporniți Studio urmând pașii din Închideți și actualizați SageMaker Studio.
Descărcați caietul
Descărcați eșantionul de blocnotes local din GitHub repo.
Deschideți notebook-ul în IDE-ul ales de dvs. și adăugați o celulă la începutul notebook-ului pentru instalare torchsummary
. torchsummary
pachetul nu face parte din distribuție, iar instalarea acestuia pe notebook va asigura ca notebook-ul rulează cap la cap. Vă recomandăm să utilizați conda
or micromamba
pentru a gestiona medii și dependențe. Adăugați următoarea celulă în blocnotes și salvați blocnotesul:
Experimentați pe caietul local
Încărcați blocnotesul în interfața de utilizare JupyterLab pe care ați lansat-o alegând pictograma de încărcare, așa cum se arată în următoarea captură de ecran.
Când este încărcat, lansați cv-kmnist.ipynb
caiet. Puteți începe să rulați celulele imediat, fără a fi nevoie să instalați dependențe, cum ar fi torch, matplotlib sau ipywidgets.
Dacă ați urmat pașii anteriori, puteți vedea că puteți utiliza distribuția local de pe laptop. În pasul următor, folosim aceeași distribuție pe Studio pentru a profita de funcțiile Studio.
Mutați experimentarea în Studio (opțional)
Opțional, să promovăm experimentarea în Studio. Unul dintre avantajele Studio este că resursele de calcul de bază sunt complet elastice, astfel încât să puteți apela cu ușurință resursele disponibile în sus sau în jos, iar modificările au loc automat în fundal, fără a vă întrerupe munca. Dacă doriți să rulați același blocnotes de mai devreme pe un set de date și o instanță de calcul mai mare, puteți migra la Studio.
Navigați la interfața de utilizare Studio pe care ați lansat-o mai devreme și alegeți pictograma de încărcare pentru a încărca blocnotesul.
După ce lansați blocnotesul, vi se va solicita să alegeți imaginea și tipul de instanță. Pe lansatorul de nucleu, alegeți sagemaker-runtime
ca imaginea si an ml.t3.medium
exemplu, apoi alegeți Selectați.
Acum puteți rula blocnotesul cap la cap, fără a avea nevoie de modificări în blocnotes, din mediul dvs. de dezvoltare local în blocnotesurile Studio!
Programați caietul ca o slujbă
Când ați terminat cu experimentarea, SageMaker oferă mai multe opțiuni pentru a vă productiviza notebook-ul, cum ar fi joburi de formare și conducte SageMaker. O astfel de opțiune este de a rula direct blocnotesul ca o lucrare de blocnotes programată, non-interactivă Locuri de muncă pentru notebook-uri SageMaker. De exemplu, ați putea dori să vă reanalizați periodic modelul sau să obțineți inferențe cu privire la datele primite periodic și să generați rapoarte pentru consum de către părțile interesate.
Din Studio, alegeți pictograma de lucru pentru notebook pentru a lansa lucrarea pentru notebook. Dacă ați instalat local pe laptop extensia de joburi pentru notebook, puteți programa și notebook-ul direct de pe laptop. Vedea Ghid de instalare pentru a configura local extensia de joburi pentru notebook.
Lucrarea pentru notebook folosește automat URI-ul de imagine ECR al distribuției open-source, astfel încât să puteți programa direct lucrarea pentru notebook.
Alege Rulați conform programului, alegeți un program, de exemplu în fiecare săptămână sâmbăta și alegeți Crea. Puteți alege, de asemenea Fugi acum dacă doriți să vedeți rezultatele imediat.
Când prima lucrare de blocnotes este finalizată, puteți vizualiza ieșirile blocnotesului direct din interfața de utilizare Studio, alegând Blocnotes în Fișiere de ieșire.
Considerații suplimentare
Pe lângă utilizarea directă a imaginii ECR disponibilă public pentru sarcinile de lucru ML, distribuția open-source oferă următoarele avantaje:
- Dockerfile folosit pentru a construi imaginea este disponibil public pentru dezvoltatori pentru a explora și a construi propriile imagini. De asemenea, puteți moșteni această imagine ca imagine de bază și puteți instala bibliotecile personalizate pentru a avea un mediu reproductibil.
- Dacă nu sunteți obișnuit cu Docker și preferați să utilizați mediile Conda în mediul dvs. JupyterLab, vă oferim un
env.out
fișier pentru fiecare dintre versiunile publicate. Puteți folosi instrucțiunile din fișier pentru a vă crea propriul mediu Conda care va imita același mediu. De exemplu, vedeți fișierul de mediu CPU cpu.env.out. - Puteți utiliza versiunile GPU ale imaginii pentru a rula sarcini de lucru compatibile cu GPU, cum ar fi învățarea profundă și procesarea imaginilor.
A curăța
Parcurgeți următorii pași pentru a vă curăța resursele:
- Dacă ați programat blocnotesul să ruleze conform unui program, întrerupeți sau ștergeți programul din Definiții job pentru notebook fila pentru a evita plata pentru locuri de munca viitoare.
- Închideți toate aplicațiile Studio pentru a evita să plătiți pentru utilizarea calculatoarelor neutilizate. Vedea Închideți și actualizați aplicațiile Studio pentru instrucțiuni.
- Opțional, ștergeți domeniul Studio dacă ați creat unul.
Concluzie
Menținerea unui mediu reproductibil în diferite etape ale ciclului de viață ML este una dintre cele mai mari provocări pentru oamenii de știință și dezvoltatorii de date. Cu distribuția open-source SageMaker, oferim o imagine cu versiuni compatibile reciproc ale celor mai comune cadre și pachete ML. Distribuția este, de asemenea, open source, oferind dezvoltatorilor transparență în pachete și procese de construire, facilitând personalizarea propriei distribuții.
În această postare, ți-am arătat cum să folosești distribuția în mediul tău local, pe Studio și ca container pentru joburile tale de formare. Această funcție este în prezent în versiune beta publică. Vă încurajăm să încercați acest lucru și să vă împărtășiți feedbackul și problemele cu privire la depozit public GitHub!
Despre autori
Durga Sury este arhitect de soluții ML în echipa Amazon SageMaker Service SA. Este pasionată de a face învățarea automată accesibilă tuturor. În cei 4 ani la AWS, ea a ajutat la crearea platformelor AI/ML pentru clienții întreprinderilor. Când nu lucrează, îi plac plimbările cu motocicleta, romanele misterioase și plimbările lungi cu husky-ul ei de 5 ani.
Ketan Vijayvargiya este inginer senior de dezvoltare software în Amazon Web Services (AWS). Domeniile sale de interes sunt învățarea automată, sistemele distribuite și sursa deschisă. În afara serviciului, îi place să-și petreacă timpul auto-găzduindu-se și bucurându-se de natură.
- Distribuție de conținut bazat pe SEO și PR. Amplifică-te astăzi.
- EVM Finance. Interfață unificată pentru finanțare descentralizată. Accesați Aici.
- Grupul Quantum Media. IR/PR amplificat. Accesați Aici.
- PlatoAiStream. Web3 Data Intelligence. Cunoștințe amplificate. Accesați Aici.
- Sursa: https://aws.amazon.com/blogs/machine-learning/get-started-with-the-open-source-amazon-sagemaker-distribution/
- :are
- :este
- :nu
- $UP
- 1
- 10
- 100
- 11
- 2023
- 7
- 9
- a
- Despre Noi
- accesibil
- peste
- adăuga
- plus
- Suplimentar
- Avantaj
- Avantajele
- AI / ML
- TOATE
- deja
- de asemenea
- Amazon
- Amazon SageMaker
- Amazon Web Services
- Amazon Web Services (AWS)
- an
- și
- a anunțat
- Orice
- aplicaţia
- Apps
- SUNT
- domenii
- AS
- At
- atașa
- în mod automat
- disponibil
- evita
- AWS
- fundal
- de bază
- bazat
- BE
- Început
- beta
- între
- Cea mai mare
- browser-ul
- construi
- by
- CAN
- CAT
- Celule
- provocări
- Modificări
- alegere
- Alege
- alegere
- clasificare
- COM
- Comun
- compatibil
- Completă
- Calcula
- Configuraţie
- consistent
- Consoleze
- consum
- Recipient
- Containere
- crea
- a creat
- În prezent
- personalizat
- clienţii care
- personaliza
- de date
- știința datelor
- seturi de date
- adânc
- învățare profundă
- Mod implicit
- implementa
- descrie
- Dezvoltatorii
- Dezvoltare
- diferit
- direct
- distribuite
- sisteme distribuite
- distribuire
- Docher
- domeniu
- făcut
- jos
- fiecare
- Mai devreme
- mai ușor
- cu ușurință
- permite
- încuraja
- capăt
- un capăt la altul
- inginer
- asigura
- Intrați
- Afacere
- Mediu inconjurator
- medii
- Fiecare
- toată lumea
- exemplu
- exemple
- existent
- experienţă
- experiment
- expertiză
- explora
- exporturile
- extensie
- extensiv
- Caracteristică
- DESCRIERE
- feedback-ul
- Fișier
- În cele din urmă
- First
- Concentra
- a urmat
- următor
- Pentru
- Cadru
- cadre
- din
- Complet
- complet
- viitor
- genera
- obține
- GitHub
- GPU
- Avea
- având în
- he
- a ajutat
- ei
- lui
- Cum
- Cum Pentru a
- HTML
- HTTPS
- ICON
- if
- imagine
- Clasificarea imaginilor
- imagini
- imediat
- îmbunătăţi
- in
- Intrare
- instala
- instalat
- Instalarea
- instanță
- instrucțiuni
- integrate
- în
- probleme de
- IT
- în sine
- Loc de munca
- Locuri de munca
- jpg
- JSON
- de laborator
- laptop
- mai mare
- lansa
- a lansat
- învăţare
- Permite
- nivelurile de
- biblioteci
- ciclu de viață
- ca
- îi place
- LINK
- Listă
- local
- la nivel local
- Logare
- Lung
- mai lung
- de pe
- iubeste
- maşină
- masina de învățare
- face
- Efectuarea
- administra
- de conducere
- matplotlib
- ar putea
- migra
- ML
- model
- Modele
- monitor
- cele mai multe
- motocicletă
- muta
- multiplu
- reciproc
- Mister
- nume
- Natură
- Nevoie
- au nevoie
- reţea
- rețele neuronale
- Nou
- următor
- Nu.
- caiet
- acum
- of
- promoții
- on
- ONE
- deschide
- open-source
- Opțiune
- Opţiuni
- or
- al nostru
- afară
- exterior
- propriu
- pachet
- ofertele
- panda
- parte
- pasionat
- pauză
- de plată
- performanță
- Loc
- Platforme
- Plato
- Informații despre date Platon
- PlatoData
- Post
- a prefera
- preferat
- premise
- privat
- procese
- prelucrare
- producere
- Profil
- promova
- furniza
- furnizează
- furnizarea
- public
- public
- publicat
- Împinge
- Piton
- pirtorh
- repede
- recomanda
- înlocui
- Rapoarte
- depozit
- Cerinţe
- Resurse
- REZULTATE
- Alerga
- funcţionare
- s
- SA
- sagemaker
- Conducte SageMaker
- acelaşi
- sâmbătă
- Economisiți
- Scară
- programa
- programată
- Ştiinţă
- oamenii de stiinta
- scikit-learn
- sigur
- vedea
- senior
- serviciu
- Servicii
- servire
- set
- setări
- Distribuie
- ea
- Arăta
- prezenta
- a arătat
- indicat
- simplu
- pur şi simplu
- So
- Software
- de dezvoltare de software
- soluţii
- Sursă
- Scânteie
- petrece
- Stadiile
- părțile interesate
- Începe
- început
- Pornire
- Pas
- paşi
- studio
- astfel de
- Sprijină
- Intrerupator
- sisteme
- TAG
- Lua
- echipă
- tensorflow
- Terminal
- test
- acea
- lor
- Lor
- apoi
- Acestea
- ei
- acest
- timp
- la
- astăzi
- lanternă
- Tren
- Pregătire
- Transparență
- încerca
- tip
- ui
- care stau la baza
- unificat
- nefolosit
- Actualizează
- încărcat
- URL-ul
- Folosire
- utilizare
- utilizat
- Utilizator
- utilizări
- folosind
- versiune
- Vizualizare
- vizualizare
- vrea
- dorit
- we
- web
- servicii web
- săptămână
- cand
- voi
- cu
- fără
- Apartamente
- de lucru
- ani
- Tu
- Ta
- zephyrnet