Soluzione di riferimento per 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 sia possibile archiviare molte immagini in un archivio oggetti e, facoltativamente, l'arrivo continuo di nuove immagini.

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 per 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, è sia di I/O-heavy che di calcolo per caricare molte immagini e applicare modelli DL. Fortunatamente, il carico di lavoro di inferenza è imbarazzantemente 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 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 eseguire le immagini ETL in una tabella Delta con il caricatore automatico. Il caricatore automatico consente la gestione dei dati e gestisce automaticamente l'arrivo continuo di nuove immagini.

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

Ottenere un notebook

Eseguire l'inferenza distribuita usando pandas UDF

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

Inferenza distribuita tramite Pytorch e pandas UDF notebook

Ottenere un notebook

Inferenza distribuita tramite keras e pandas UDF notebook

Ottenere un notebook

Limitazioni: dimensioni del file di immagine

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