Scopri la potenza di YAML nell'AI/ML! Semplifica le configurazioni, ottimizza i flussi di lavoro e migliora la leggibilità con questo versatile formato dati.
YAML, acronimo di "YAML Ain't Markup Language", è uno standard di serializzazione dei dati leggibile dall'uomo, comunemente usato per le configurazioni. dati comunemente usato per i file di configurazione e per lo scambio di dati tra e per lo scambio di dati tra linguaggi. A differenza dei formati più verbosi, YAML privilegia la pulizia e la facilità d'uso, basandosi sull'indentazione piuttosto che su parentesi o tag per definire la struttura. Questo approccio minimalista lo rende una scelta scelta per gli sviluppatori e i data scientist che lavorano nei settori del Apprendimento automatico (ML) e Intelligenza Artificiale (AI), dove definire chiaramente ambienti e parametri complessi è essenziale. È possibile esplorare le specifiche ufficiali sul sito sito web di YAML.
Nel regno del Deep Learning (DL), YAML serve come per la gestione degli esperimenti e la riproducibilità. I sistemi complessi spesso richiedono la definizione di centinaia di parametri, dai percorsi dei file alle costanti matematiche. Esternalizzando queste impostazioni in file YAML, i ricercatori possono assicurano che le configurazioni dei dati di addestramento e le architetture dei modelli e le architetture dei modelli rimangano separate dalla base di codice. Questa separazione facilita le pratiche di DataOps e consente un più facile controllo di versione delle sperimentali.
YAML è onnipresente nei moderni stack di sviluppo dell'intelligenza artificiale. Ecco due modi principali in cui viene utilizzato:
Sebbene YAML abbia delle somiglianze con altri formati, si distingue per la sua filosofia di progettazione e per i casi d'uso:
Quando si lavora con il modello Ultralytics YOLO11 , i file YAML sono fondamentali per definire i dati che il modello vede. Il
data nella funzione di addestramento accetta un file YAML che punta alle immagini e alle etichette.
L'esempio seguente mostra come avviare una sessione di addestramento utilizzando un file di configurazione di un set di dati standard.
from ultralytics import YOLO
# Load a standard YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model using the 'coco8.yaml' dataset configuration
# The YAML file contains paths to images and class names (e.g., person, bus)
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)
Al di là della formazione diretta dei modelli, YAML è parte integrante del più ampio ecosistema ecosistema MLOps. È il formato formato di configurazione standard per Docker Compose durante l'orchestrazione dei contenitori per la distribuzione dei modelli. Allo stesso modo, Kubernetes utilizza YAML per definire la scalabilità delle applicazioni nel cloud.
Anche gli strumenti di automazione come GitHub Actions si basano su YAML per definire i flussi di lavoro CI/CD. flussi di lavoro CI/CD, assicurando che i test automatizzati e l'integrazione integrazione avvengano senza intoppi ogni volta che il codice viene inviato. Gli sviluppatori Python usano spesso la libreria PyYAML per leggere e scrivere programmaticamente questi file. per leggere e scrivere programmaticamente questi file, colmando il divario tra la configurazione statica e l'esecuzione dinamica del codice.