Condividi tramite


Soluzione di riferimento per le applicazioni di immagine

Informazioni su come eseguire l'inferenza del modello di immagine distribuita dai notebook della soluzione di riferimento usando pandas UDF, PyTorch e TensorFlow in una configurazione comune condivisa da molte applicazioni di immagini reali. Questa configurazione presuppone che molte immagini vengano archiviate in uno store di oggetti e che arrivino potenzialmente nuove immagini in continuazione.

Flusso di lavoro per l'inferenza del modello di immagine

Si supponga di avere diversi modelli di Deep Learning (DL) sottoposti a training per la classificazione delle immagini e il rilevamento degli oggetti (ad esempio MobileNetV2, utile a rilevare gli oggetti umani nelle foto caricate dall'utente per proteggere la privacy), e applicare questi modelli DL alle immagini archiviate.

È possibile eseguire nuovamente il training dei modelli e aggiornare le stime calcolate in precedenza. Tuttavia, caricare molte immagini e applicare i modelli DL è pesante sia a livello di I/O sia che di calcolo. Fortunatamente, il carico di lavoro di inferenza è perfettamente parallelo e in teoria può essere distribuito facilmente. Questa guida illustra una soluzione pratica che contiene due fasi principali:

  1. Immagini ETL in una tabella Delta usando il caricatore automatico
  2. Eseguire l'inferenza distribuita usando la funzione pandas UDF

Immagini ETL in una tabella Delta usando il caricatore automatico

Per le applicazioni di immagine, incluse le attività di training e inferenza, Databricks consiglia di usare immagini ETL in una tabella Delta con ilcaricatore automatico. Il caricatore automatico consente la gestione dei dati e gestisce automaticamente il flusso di nuove immagini in arrivo.

Set di dati di immagini ETL in un notebook di tabella Delta

Ottenere il notebook

Eseguire l'inferenza distribuita usando la funzione pandas UDF

I notebook seguenti usano PyTorch e TensorFlow e tf.Keras per illustrare la soluzione di riferimento.

Inferenza distribuita tramite notebook Pytorch e pandas UDF

Ottenere il notebook

Inferenza distribuita tramite notebook Keras e pandas UDF

Ottenere il notebook

Limitazioni: dimensioni dei file di immagine

Per i file di immagine di grandi dimensioni (dimensioni medie delle immagini superiori a 100 MB), quando necessario, Databricks consiglia di usare la tabella Delta solo per gestire i metadati (elenco di nomi di file) e caricare le immagini dall'archivio oggetti usando i percorsi.