TUTTO CIÒ CHE DEVI SAPERE SU KUBEFLOW
Costruito dagli sviluppatori di Google, IBM, Cisco, tra gli altri, Kubeflow è un toolkit di apprendimento automatico open source per Kubernetes. Kubeflow è basato su Kubernetes come sistema per la distribuzione, il ridimensionamento e la gestione di sistemi complessi. Inizialmente, Kubeflow ha iniziato a funzionare come un modo più semplice per eseguire TensorFlow su Kubernetes, che era basato su una pipeline nota come TensorFlow Extended e poi si è espanso per diventare un framework multi-architettura e multi-cloud per l’esecuzione di intere pipeline di machine learning.
Secondo gli sviluppatori, il motivo alla base dello sviluppo di questa piattaforma è dovuto alla costruzione e alla distribuzione di applicazioni di machine learning nel mondo reale, è difficile e costoso a causa della mancanza di strumenti, che copre il processo di sviluppo e distribuzione di machine learning end-to-end. La creazione di un modello di apprendimento automatico ad alte prestazioni include una serie di componenti critici al fine di fornire un prodotto di apprendimento automatico end-to-end. Kubeflow è una piattaforma per la costruzione e la distribuzione di tali modelli di apprendimento automatico senza troppi problemi.
Il flusso di lavoro di base di Kuberflow è menzionato di seguito:
Scarica ed esegui il file binario di distribuzione di Kubeflow.
Personalizza i file di configurazione risultanti.
Esegui lo script specificato per distribuire i contenitori in un ambiente specifico.
Caratteristiche
Kubeflow aiuta a ridimensionare i modelli di machine learning e distribuirli alla produzione secondo necessità. Offre diversi componenti che è possibile utilizzare per creare formazione sull’apprendimento automatico, ottimizzazione dell’iperparametro e servire carichi di lavoro su più piattaforme. Esistono diverse funzionalità di questa piattaforma, che sono menzionate di seguito:
Kubeflow fornisce il ridimensionamento in base alla domanda
Aiuta a distribuire e gestire microservizi debolmente accoppiati
Fornisce implementazioni facili, ripetibili e portatili su diverse infrastrutture
Casi d’uso
Ecco alcuni dei casi d’uso critici di Kubeflow menzionati di seguito
Implementazione e gestione di un sistema ML complesso su larga scala: con Kubeflow, è possibile gestire l’intera organizzazione AI su larga scala. I viaggi di utenti critici (CUJ) di base ed ecosistemici di Kubeflow forniscono soluzioni software per flussi di lavoro end-to-end, il che significa che si può facilmente costruire, formare, distribuire, sviluppare un modello, creare, eseguire ed esplorare una pipeline.
Sperimentazione con l’addestramento di un modello ML: Kubeflow 1.0 fornisce sottosistemi software stabili per l’addestramento dei modelli, inclusi i notebook Jupyter, i più diffusi operatori di formazione sull’apprendimento automatico come Tensorflow e Pytorch che funzionano in modo efficiente e sicuro negli spazi dei nomi isolati di Kubernetes.
Carichi di lavoro ML end-to-end ibridi e multi-cloud: Kubrflow è supportato da tutti i principali fornitori di cloud e disponibile per l’installazione locale, che soddisfa i requisiti di sviluppo di modelli di apprendimento automatico in un ibrido e con portabilità multi-cloud.
Ottimizzazione degli iperparametri del modello durante l’allenamento: L’ ottimizzazione degli iperparametri è fondamentale per le prestazioni e l’accuratezza del modello. Con l’aiuto del sintonizzatore di iperparametri di Kubeflow (Katib), la messa a punto di modelli di iperparametri può essere facilmente eseguita in modo automatico. Questa automazione non solo riduce i tempi di calcolo, ma accelera anche la consegna di modelli migliorati.
Integrazione e distribuzione continue (CI / CD) per ML: sebbene, attualmente Kubeflow non disponga di uno strumento dedicato per CI / CD, le condutture Kubeflow possono essere utilizzate per creare flussi di lavoro riproducibili. Questi flussi di lavoro automatizzano i passaggi necessari per creare un flusso di lavoro ML, che garantisce coerenza, risparmia tempo di iterazione e aiuta nel debug, requisiti di conformità e altro ancora.
Chi lo usa
Questa piattaforma è pensata per i data scientist che vogliono costruire e sperimentare pipeline ML. Kubeflow è anche per ingegneri ML e team operativi che vogliono implementare sistemi ML in vari ambienti per sviluppo, test e servizio a livello di produzione.
Kubeflow rilascia una versione principale alla fine di ogni trimestre, mentre le versioni secondarie si verificano quando e quando necessario per correggere bug importanti. L’anno scorso è stata rilasciata la versione 0.6 di Kubeflow, che ha introdotto numerose funzionalità e miglioramenti intuitivi come il tracciamento degli artefatti, il versioning dei dati in ambienti multiutente basati su Istio e altri.