Esplorare l'architettura della soluzione

Completato

Prima di iniziare, esaminiamo l'architettura per comprendere tutti i requisiti. Portare un modello in produzione significa dimensionare la soluzione e collaborare con altri team. Insieme a scienziati dei dati, ingegneri dei dati e team dell'infrastruttura, si è deciso di usare l'approccio seguente:

  • Tutti i dati verranno memorizzati in un archivio di Archiviazione BLOB di Azure, che verrà gestito dall'ingegnere dei dati.
  • Il team dell'infrastruttura creerà le risorse di Azure necessarie, ad esempio l'area di lavoro di Azure Machine Learning.
  • Lo scienziato dei dati si concentrerà sul ciclo interno: sviluppo e training del modello.
  • Il tecnico di Machine Learning prenderà il modello sottoposto a training e lo distribuirà nel ciclo esterno.

Insieme al team allargato è stata progettata un'architettura di tipo MLOps (Machine Learning Operations).

Diagramma dell'architettura delle operazioni di Machine Learning.

Nota

Il diagramma è una rappresentazione semplificata di un'architettura MLOps. Per visualizzare un'architettura più dettagliata, esaminare i vari casi d'uso nell'acceleratore di soluzioni MLOps (v2).

L'obiettivo principale dell'architettura MLOps è creare una soluzione affidabile e riproducibile. Per raggiungere questo obiettivo, l'architettura include:

  1. Installazione: creare tutte le risorse di Azure necessarie per la soluzione.
  2. Sviluppo di modelli (ciclo interno): esplorare ed elaborare i dati per eseguire il training e valutare il modello.
  3. Integrazione continua: creare un pacchetto e registrare il modello.
  4. Distribuzione del modello (ciclo esterno): distribuire il modello.
  5. Distribuzione continua: testare il modello e promuovere l'ambiente di produzione.
  6. Monitoraggio: monitorare le prestazioni del modello e dell'endpoint.

A questo punto nel progetto viene creata l'area di lavoro di Azure Machine Learning, i dati vengono memorizzati in un archivio di Archiviazione BLOB di Azure e il team di data science ha eseguito il training del modello.

Si vuole passare dal ciclo interno e dallo sviluppo del modello al ciclo esterno distribuendo il modello in produzione. È quindi necessario convertire l'output del team di data science in una pipeline affidabile e riproducibile in Azure Machine Learning.

Assicurarsi che tutto il codice sia archiviato come script ed eseguire gli script come processi di Azure Machine Learning renderà più semplice automatizzare il training del modello e ripetere il training del modello in futuro.

Diagramma che mostra i dettagli dello sviluppo di modelli che si basa sulla configurazione.

Il team di data science sta lavorando allo sviluppo del modello. Consegnano un notebook di Jupyter, che include le attività seguenti:

  1. Leggere ed esplorare i dati.
  2. Eseguire l'ingegneria delle funzionalità.
  3. Eseguire il training del modello.
  4. Valutare il modello.

Nell'ambito della configurazione, il team dell'infrastruttura ha creato:

  1. Un'area di lavoro sviluppo (dev) di Azure Machine Learning che può essere usata dal team di data science per l'esplorazione e la sperimentazione.
  2. Risorsa di dati nell'area di lavoro, che fa riferimento a una cartella in Azure Blob Storage che contiene i dati.
  3. Risorse di calcolo necessarie per eseguire notebook e script.

La prima attività nell'ottica MLOps consiste nel convertire il lavoro degli scienziati dei dati, in modo da poter automatizzare facilmente lo sviluppo del modello. Mentre il team di data science ha lavorato in un notebook Jupyter, è necessario usare script ed eseguirli tramite processi di Azure Machine Learning. L'input del processo sarà l'asset di dati creato dal team dell'infrastruttura, che punta ai dati che risiedono in Archiviazione BLOB di Azure, connessi all'area di lavoro di Azure Machine Learning.