I data scientist hanno bisogno di un ambiente coerente e riproducibile per i carichi di lavoro di machine learning (ML) e data science che consenta la gestione delle dipendenze e sia sicuro. Contenitori per l'apprendimento profondo AWS fornisce già immagini Docker predefinite per l'addestramento e la pubblicazione di modelli in framework comuni come TensorFlow, PyTorch e MXNet. Per migliorare questa esperienza, abbiamo annunciato una beta pubblica della distribuzione open source SageMaker al JupyterCon 2023. Ciò fornisce un'esperienza ML unificata end-to-end tra gli sviluppatori ML con diversi livelli di esperienza. Gli sviluppatori non devono più passare da un framework framework all'altro per la sperimentazione o mentre passano dagli ambienti JupyterLab locali e dai notebook SageMaker ai lavori di produzione su SageMaker. La distribuzione open source SageMaker supporta i pacchetti e le librerie più comuni per data science, ML e visualizzazione, come TensorFlow, PyTorch, Scikit-learn, Pandas e Matplotlib. Puoi iniziare a utilizzare il contenitore da Galleria pubblica Amazon ECR a partire da oggi.
In questo post, ti mostriamo come utilizzare la distribuzione open source SageMaker per sperimentare rapidamente nel tuo ambiente locale e promuoverli facilmente a lavori su SageMaker.
Panoramica della soluzione
Per il nostro esempio, mostriamo l'addestramento di un modello di classificazione delle immagini utilizzando PyTorch. Noi usiamo il KMNIST set di dati disponibile pubblicamente su PyTorch. Formiamo un modello di rete neurale, testiamo le prestazioni del modello e infine stampiamo l'addestramento e testiamo la perdita. Il taccuino completo per questo esempio è disponibile nel file Repository di esempi di SageMaker Studio Lab. Iniziamo la sperimentazione su un laptop locale utilizzando la distribuzione open source, spostala su Amazon Sage Maker Studio per l'utilizzo di un'istanza più grande, quindi pianificare il notebook come processo notebook.
Prerequisiti
Sono necessari i seguenti prerequisiti:
Configura il tuo ambiente locale
Puoi iniziare direttamente a utilizzare la distribuzione open source sul tuo laptop locale. Per avviare JupyterLab, esegui i seguenti comandi sul tuo terminale:
È possibile sostituire ECR_IMAGE_ID
con uno qualsiasi dei tag immagine disponibili nel file Galleria pubblica Amazon ECR, oppure scegli il latest-gpu
tag se stai utilizzando una macchina che supporta la GPU.
Questo comando avvierà JupyterLab e fornirà un URL sul terminale, come http://127.0.0.1:8888/lab?token=<token>
. Copia il link e inseriscilo nel tuo browser preferito per avviare JupyterLab.
Installa Studio
Studio è un ambiente di sviluppo integrato (IDE) end-to-end per il machine learning che consente a sviluppatori e data scientist di creare, addestrare, distribuire e monitorare modelli di machine learning su larga scala. Studio fornisce un ampio elenco di immagini proprietarie con framework e pacchetti comuni, come Data Science, TensorFlow, PyTorch e Spark. Queste immagini rendono semplice per i data scientist iniziare con ML semplicemente scegliendo un framework e un tipo di istanza di loro scelta per il calcolo.
Ora puoi utilizzare la distribuzione open source SageMaker su Studio utilizzando Studio's porta la tua immagine caratteristica. Per aggiungere la distribuzione open source al tuo dominio SageMaker, completa i seguenti passaggi:
- Aggiungi la distribuzione open source al tuo account Registro dei contenitori Amazon Elastic (Amazon ECR) eseguendo i seguenti comandi sul tuo terminale:
- Crea un'immagine SageMaker e allega l'immagine al dominio Studio:
- Sulla console SageMaker, avvia Studio scegliendo il tuo dominio e il profilo utente esistente.
- Facoltativamente, riavvia Studio seguendo i passaggi in Chiudi e aggiorna SageMaker Studio.
Scarica il taccuino
Scarica il notebook di esempio in locale da Repository GitHub.
Apri il notebook nell'IDE che preferisci e aggiungi una cella all'inizio del notebook da installare torchsummary
. torchsummary
pacchetto non fa parte della distribuzione e l'installazione di questo sul notebook assicurerà che il notebook funzioni end-to-end. Si consiglia di utilizzare conda
or micromamba
per gestire ambienti e dipendenze. Aggiungi la seguente cella al taccuino e salva il taccuino:
Esperimento sul taccuino locale
Carica il notebook nell'interfaccia utente di JupyterLab avviata scegliendo l'icona di caricamento come mostrato nello screenshot seguente.
Quando è caricato, avvia il file cv-kmnist.ipynb
taccuino. Puoi iniziare a eseguire le celle immediatamente, senza dover installare dipendenze come torch, matplotlib o ipywidgets.
Se hai seguito i passaggi precedenti, puoi vedere che puoi utilizzare la distribuzione localmente dal tuo laptop. Nel passaggio successivo, utilizziamo la stessa distribuzione su Studio per sfruttare le funzionalità di Studio.
Sposta la sperimentazione in Studio (facoltativo)
Facoltativamente, promuoviamo la sperimentazione in Studio. Uno dei vantaggi di Studio è che le risorse di elaborazione sottostanti sono completamente elastiche, quindi puoi aumentare o diminuire facilmente le risorse disponibili e le modifiche vengono apportate automaticamente in background senza interrompere il tuo lavoro. Se desideri eseguire lo stesso notebook di prima su un set di dati e un'istanza di calcolo più grandi, puoi eseguire la migrazione a Studio.
Passa all'interfaccia utente di Studio avviata in precedenza e scegli l'icona di caricamento per caricare il taccuino.
Dopo aver avviato il notebook, ti verrà chiesto di scegliere l'immagine e il tipo di istanza. Nel programma di avvio del kernel, scegli sagemaker-runtime
come l'immagine e un ml.t3.medium
esempio, quindi scegli Seleziona.
Ora puoi eseguire il notebook end-to-end senza che sia necessario apportare modifiche al notebook dall'ambiente di sviluppo locale ai notebook Studio!
Pianifica il taccuino come lavoro
Al termine della sperimentazione, SageMaker offre diverse opzioni per la produzione del tuo notebook, come i lavori di formazione e le pipeline SageMaker. Una di queste opzioni consiste nell'eseguire direttamente il notebook stesso come processo notebook pianificato non interattivo utilizzando Lavori notebook SageMaker. Ad esempio, potresti voler riaddestrare periodicamente il tuo modello o ottenere periodicamente inferenze sui dati in arrivo e generare report per il consumo da parte delle parti interessate.
Da Studio, scegli l'icona del processo del notebook per avviare il processo del notebook. Se hai installato localmente l'estensione dei lavori del notebook sul tuo laptop, puoi anche pianificare il notebook direttamente dal tuo laptop. Vedere Guida all'installazione per configurare localmente l'estensione dei processi notebook.
Il processo notebook utilizza automaticamente l'URI dell'immagine ECR della distribuzione open source, in modo da poter pianificare direttamente il processo notebook.
Scegli Corri nei tempi previsti, scegli un programma, ad esempio ogni settimana il sabato, e scegli Creare. Puoi anche scegliere Corri adesso se desideri visualizzare immediatamente i risultati.
Quando il primo lavoro del notebook è completato, puoi visualizzare gli output del notebook direttamente dall'interfaccia utente di Studio scegliendo Taccuino per File di output.
Ulteriori considerazioni
Oltre a utilizzare l'immagine ECR pubblicamente disponibile direttamente per i carichi di lavoro ML, la distribuzione open source offre i seguenti vantaggi:
- Il Dockerfile utilizzato per creare l'immagine è disponibile pubblicamente per consentire agli sviluppatori di esplorare e creare le proprie immagini. Puoi anche ereditare questa immagine come immagine di base e installare le tue librerie personalizzate per avere un ambiente riproducibile.
- Se non sei abituato a Docker e preferisci utilizzare gli ambienti Conda nel tuo ambiente JupyterLab, ti forniamo un
env.out
file per ciascuna delle versioni pubblicate. Puoi usare le istruzioni nel file per creare il tuo ambiente Conda che imiterà lo stesso ambiente. Ad esempio, vedere il file dell'ambiente della CPU cpu.env.out. - Puoi utilizzare le versioni GPU dell'immagine per eseguire carichi di lavoro compatibili con GPU, come il deep learning e l'elaborazione delle immagini.
ripulire
Completa i seguenti passaggi per ripulire le tue risorse:
- Se hai pianificato l'esecuzione del blocco appunti in base a una pianificazione, metti in pausa o elimina la pianificazione sul Definizioni di lavoro per notebook scheda per evitare di pagare per lavori futuri.
- Chiudi tutte le app di Studio per evitare di pagare per l'utilizzo del computer inutilizzato. Vedere Chiudi e aggiorna le app di Studio per le istruzioni.
- Facoltativamente, elimina il dominio di Studio se ne hai creato uno.
Conclusione
Mantenere un ambiente riproducibile nelle diverse fasi del ciclo di vita del machine learning è una delle maggiori sfide per data scientist e sviluppatori. Con la distribuzione open source SageMaker, forniamo un'immagine con versioni reciprocamente compatibili dei framework e dei pacchetti ML più comuni. La distribuzione è anche open source, fornendo agli sviluppatori trasparenza sui pacchetti e sui processi di compilazione, facilitando la personalizzazione della propria distribuzione.
In questo post, ti abbiamo mostrato come utilizzare la distribuzione nel tuo ambiente locale, su Studio e come contenitore per i tuoi lavori di formazione. Questa funzione è attualmente in versione beta pubblica. Ti invitiamo a provare questo e condividere i tuoi commenti e problemi su repository GitHub pubblico!
Circa gli autori
Durga Sury è un ML Solutions Architect del team Amazon SageMaker Service SA. È appassionata di rendere il machine learning accessibile a tutti. Nei suoi 4 anni in AWS, ha contribuito a configurare piattaforme AI/ML per clienti aziendali. Quando non lavora, ama i giri in moto, i romanzi gialli e le lunghe passeggiate con il suo husky di 5 anni.
Ketan Vijayvargiya è un Senior Software Development Engineer in Amazon Web Services (AWS). Le sue aree di interesse sono l'apprendimento automatico, i sistemi distribuiti e l'open source. Al di fuori del lavoro, gli piace trascorrere il tempo ospitandosi da solo e godendosi la natura.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- EVM Finance. Interfaccia unificata per la finanza decentralizzata. Accedi qui.
- Quantum Media Group. IR/PR amplificato. Accedi qui.
- PlatoAiStream. Intelligenza dei dati Web3. Conoscenza amplificata. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/get-started-with-the-open-source-amazon-sagemaker-distribution/
- :ha
- :È
- :non
- $ SU
- 1
- 10
- 100
- 11
- 2023
- 7
- 9
- a
- WRI
- accessibile
- operanti in
- aggiungere
- aggiunta
- aggiuntivo
- Vantaggio
- vantaggi
- AI / ML
- Tutti
- già
- anche
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- Amazon Web Services (AWS)
- an
- ed
- ha annunciato
- in qualsiasi
- App
- applicazioni
- SONO
- aree
- AS
- At
- allegare
- automaticamente
- disponibile
- evitare
- AWS
- sfondo
- base
- basato
- BE
- Inizio
- beta
- fra
- Maggiore
- del browser
- costruire
- by
- Materiale
- CAT
- Celle
- sfide
- Modifiche
- scegliere
- Scegli
- la scelta
- classificazione
- COM
- Uncommon
- compatibile
- completamento di una
- Calcolare
- Configurazione
- coerente
- consolle
- consumo
- Contenitore
- Tecnologie Container
- creare
- creato
- Attualmente
- costume
- Clienti
- personalizzare
- dati
- scienza dei dati
- dataset
- deep
- apprendimento profondo
- Predefinito
- schierare
- descrivere
- sviluppatori
- Mercato
- diverso
- direttamente
- distribuito
- sistemi distribuiti
- distribuzione
- docker
- dominio
- fatto
- giù
- ogni
- In precedenza
- più facile
- facilmente
- Abilita
- incoraggiare
- fine
- da un capo all'altro
- ingegnere
- garantire
- entrare
- Impresa
- Ambiente
- ambienti
- Ogni
- tutti
- esempio
- Esempi
- esistente
- esperienza
- esperimento
- competenza
- esplora
- export
- estensione
- estensivo
- caratteristica
- Caratteristiche
- feedback
- Compila il
- Infine
- Nome
- Focus
- seguito
- i seguenti
- Nel
- Contesto
- quadri
- da
- pieno
- completamente
- futuro
- generare
- ottenere
- GitHub
- GPU
- Avere
- avendo
- he
- aiutato
- suo
- il suo
- Come
- Tutorial
- HTML
- HTTPS
- ICON
- if
- Immagine
- Classificazione delle immagini
- immagini
- subito
- competenze
- in
- In arrivo
- install
- installato
- installazione
- esempio
- istruzioni
- integrato
- ai miglioramenti
- sicurezza
- IT
- stessa
- Lavoro
- Offerte di lavoro
- jpg
- json
- laboratorio
- laptop
- superiore, se assunto singolarmente.
- lanciare
- lanciato
- apprendimento
- Consente di
- livelli
- biblioteche
- ciclo di vita
- piace
- piace
- LINK
- Lista
- locale
- a livello locale
- accesso
- Lunghi
- più a lungo
- spento
- ama
- macchina
- machine learning
- make
- Fare
- gestire
- gestione
- matplotlib
- forza
- migrare
- ML
- modello
- modelli
- Monitorare
- maggior parte
- MOTO
- cambiano
- multiplo
- reciprocamente
- Mistero
- Nome
- Natura
- Bisogno
- che necessitano di
- Rete
- rete neurale
- New
- GENERAZIONE
- no
- taccuino
- adesso
- of
- Offerte
- on
- ONE
- aprire
- open source
- Opzione
- Opzioni
- or
- nostro
- su
- al di fuori
- proprio
- pacchetto
- Packages
- panda
- parte
- appassionato
- pausa
- pagamento
- performance
- posto
- Piattaforme
- Platone
- Platone Data Intelligence
- PlatoneDati
- Post
- preferire
- preferito
- prerequisiti
- Stampa
- un bagno
- i processi
- lavorazione
- Produzione
- Profilo
- promuoverlo
- fornire
- fornisce
- fornitura
- la percezione
- pubblicamente
- pubblicato
- Spingi
- Python
- pytorch
- rapidamente
- raccomandare
- sostituire
- Report
- deposito
- Requisiti
- Risorse
- Risultati
- Correre
- running
- s
- SA
- sagemaker
- Pipeline SageMaker
- stesso
- sabato
- Risparmi
- Scala
- programma
- in programma
- Scienze
- scienziati
- scikit-impara
- sicuro
- vedere
- anziano
- servizio
- Servizi
- servizio
- set
- impostazioni
- Condividi
- lei
- mostrare attraverso le sue creazioni
- vetrina
- ha mostrato
- mostrato
- Un'espansione
- semplicemente
- So
- Software
- lo sviluppo del software
- Soluzioni
- Fonte
- Scintilla
- spendere
- tappe
- stakeholder
- inizia a
- iniziato
- Di partenza
- step
- Passi
- studio
- tale
- supporti
- Interruttore
- SISTEMI DI TRATTAMENTO
- TAG
- Fai
- team
- tensorflow
- terminal
- test
- che
- Il
- loro
- Li
- poi
- Strumenti Bowman per analizzare le seguenti finiture:
- di
- questo
- tempo
- a
- oggi
- torcia
- Treni
- Training
- Trasparenza
- prova
- Digitare
- ui
- sottostante
- unificato
- non usato
- Aggiornanento
- caricato
- URL
- Impiego
- uso
- utilizzato
- Utente
- usa
- utilizzando
- versione
- Visualizza
- visualizzazione
- volere
- ricercato
- we
- sito web
- servizi web
- settimana
- quando
- volere
- con
- senza
- Lavora
- lavoro
- anni
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro