YOLOv5 🚀 su AWS Deep Learning Instance: Guida completa
La configurazione di un ambiente di deep learning ad alte prestazioni può essere scoraggiante per i nuovi arrivati, ma non temete! 🛠️ In questa guida vi guideremo attraverso il processo di avvio di YOLOv5 su un'istanza AWS Deep Learning. Sfruttando la potenza di Amazon Web Services (AWS), anche chi è alle prime armi con l'apprendimento automatico può iniziare a lavorare in modo rapido e conveniente. La scalabilità della piattaforma AWS è perfetta sia per la sperimentazione che per la produzione.
Altre opzioni di avvio rapido per YOLOv5 sono le nostre Taccuino Colab , GCP Deep Learning VMe la nostra immagine Docker all'indirizzo Hub Docker .
Passo 1: accesso alla console AWS
Iniziare creando un account o accedendo alla console AWS all'indirizzo https://aws.amazon.com/console/. Una volta effettuato l'accesso, selezionare il servizio EC2 da gestire e impostare le istanze.
Passo 2: Avviare l'istanza
Nella dashboard di EC2, si trova il pulsante Avvia istanza, che è la porta d'accesso alla creazione di un nuovo server virtuale.
Selezione della giusta immagine della macchina Amazon (AMI)
Qui si sceglie il sistema operativo e lo stack software per l'istanza. Digitate"Deep Learning" nel campo di ricerca e selezionate l'ultima AMI Deep Learning basata su Ubuntu, a meno che le vostre esigenze non impongano diversamente. Le AMI Deep Learning di Amazon sono preinstallate con i framework più diffusi e i driver GPU per semplificare il processo di configurazione.
Scegliere un tipo di istanza
Per i compiti di deep learning, la scelta di un tipo di istanza GPU è generalmente consigliata, in quanto può accelerare notevolmente l'addestramento del modello. Per quanto riguarda le dimensioni dell'istanza, ricordate che i requisiti di memoria del modello non devono mai superare la capacità dell'istanza.
Nota: la dimensione del modello deve essere un fattore di selezione dell'istanza. Se il modello supera la RAM disponibile di un'istanza, selezionare un altro tipo di istanza con memoria sufficiente per l'applicazione.
Per un elenco dei tipi di istanza disponibili su GPU , visitate Tipi di istanza EC2, in particolare sotto la voce Computing accelerato.
Per ulteriori informazioni sul monitoraggio e l'ottimizzazione di GPU , consultare GPU Monitoring and Optimization. Per i prezzi, vedere Prezzi su richiesta e Prezzi spot.
Configurazione dell'istanza
Le Istanze Spot di Amazon EC2 offrono un modo economico per eseguire le applicazioni, in quanto consentono di fare offerte per la capacità inutilizzata a una frazione del costo standard. Per un'esperienza persistente che conserva i dati anche quando l'istanza Spot si spegne, optate per una richiesta persistente.
Ricordarsi di regolare le altre impostazioni dell'istanza e le configurazioni di sicurezza, come necessario, nei passaggi 4-7 prima dell'avvio.
Passo 3: Connettersi all'istanza
Una volta che l'istanza è in esecuzione, selezionare la casella di controllo e fare clic su Connetti per accedere alle informazioni SSH. Utilizzare il comando SSH visualizzato nel terminale preferito per stabilire una connessione all'istanza.
Fase 4: Esecuzione YOLOv5
Effettuato l'accesso alla propria istanza, si è ora pronti a clonare il repository YOLOv5 e a installare le dipendenze in un ambiente Python 3.8 o successivo. YOLOv5 I modelli e i dataset verranno scaricati automaticamente dall'ultima versione.
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependencies
Una volta configurato l'ambiente, si può iniziare ad addestrare, convalidare, eseguire l'inferenza ed esportare i modelli YOLOv5 :
# Train a model on your data
python train.py
# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt
# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images
# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite
Extra opzionali
Per aggiungere più memoria di swap, che può essere una salvezza per i grandi insiemi di dati, eseguire:
sudo fallocate -l 64G /swapfile # allocate 64GB swap file
sudo chmod 600 /swapfile # modify permissions
sudo mkswap /swapfile # set up a Linux swap area
sudo swapon /swapfile # activate swap file
free -h # verify swap memory
E questo è tutto! 🎉 Avete creato con successo un'istanza AWS Deep Learning ed eseguito YOLOv5. Sia che stiate iniziando con il rilevamento di oggetti o che stiate scalando verso la produzione, questa configurazione può aiutarvi a raggiungere i vostri obiettivi di apprendimento automatico. Buona formazione, validazione e distribuzione! Se si incontrano intoppi lungo il percorso, la solida documentazione di AWS e l'attiva comunità di Ultralytics sono qui per supportarvi.