Classificazione delle immagini con reti neurali convoluzionali (CNN)

Archiviazione BLOB di Azure
Registro Azure Container
Data Science Macchine virtuali di Azure
Servizio Azure Kubernetes
Azure Machine Learning

Idee per le soluzioni

Questo articolo è un'idea di soluzione. Per espandere il contenuto con altre informazioni, ad esempio potenziali casi d'uso, servizi alternativi, considerazioni sull'implementazione o indicazioni sui prezzi, inviare commenti e suggerimenti su GitHub.

Usare reti neurali convoluzionali (CNN) per classificare in modo efficiente volumi elevati di immagini per identificare gli elementi nelle immagini.

Architettura

Architecture diagram: image classification with convolutional neural networks and Azure Machine Learning.

Scaricare un file di Visio di questa architettura.

Flusso di dati

  1. I caricamenti di immagini in Archiviazione BLOB di Azure vengono inseriti da Azure Machine Learning.
  2. Poiché la soluzione segue un approccio di apprendimento supervisionato e richiede l'etichettatura dei dati per eseguire il training del modello, le immagini inserite vengono etichettate in Machine Learning.
  3. Il modello CNN viene sottoposto a training e convalidato nel notebook di Machine Learning. Sono disponibili diversi modelli di classificazione delle immagini con training preliminare. È possibile usarli usando un approccio di apprendimento per il trasferimento. Per informazioni su alcune varianti di reti NEURALi con training preliminare, vedere Miglioramenti nella classificazione delle immagini usando reti neurali convoluzionali. È possibile scaricare questi modelli di classificazione delle immagini e personalizzarli con i dati etichettati.
  4. Dopo il training, il modello viene archiviato in un registro modelli in Machine Learning.
  5. Il modello viene distribuito tramite endpoint gestiti in batch.
  6. I risultati del modello vengono scritti in Azure Cosmos DB e usati tramite l'applicazione front-end.

Componenti

  • Archiviazione BLOB è un servizio che fa parte di Archiviazione di Azure. Archiviazione BLOB offre l'archiviazione ottimizzata di oggetti cloud per grandi quantità di dati non strutturati.
  • Machine Learning è un ambiente basato sul cloud che è possibile usare per eseguire il training, distribuire, automatizzare, gestire e tenere traccia dei modelli di Machine Learning. È possibile usare i modelli per prevedere comportamenti, risultati e tendenze futuri.
  • Azure Cosmos DB è un database multimodello distribuito a livello globale. Azure Cosmos DB garantisce alle soluzioni la scalabilità elastica della velocità effettiva e dello spazio di archiviazione in un numero qualsiasi di aree geografiche.
  • Registro Azure Container compila, archivia e gestisce le immagini del contenitore e può archiviare modelli di Machine Learning in contenitori.

Dettagli dello scenario

Con l'aumento delle tecnologie come Internet delle cose (IoT) e IoT, il mondo sta generando grandi quantità di dati. L'estrazione di informazioni rilevanti dai dati è diventata una sfida importante. La classificazione delle immagini è una soluzione pertinente per identificare ciò che rappresenta un'immagine. La classificazione delle immagini consente di classificare volumi elevati di immagini. Le reti neurali convoluzionali (CNN) eseguono il rendering di buone prestazioni nei set di dati di immagini. Le reti cnn hanno svolto un ruolo importante nello sviluppo di soluzioni di classificazione delle immagini all'avanguardia.

Esistono tre tipi principali di livelli nelle reti cnn:

  • Livelli convoluzionali
  • Livelli di pooling
  • Livelli completamente connessi

Il livello convoluzionale è il primo livello di una rete convoluzionale. Questo livello può seguire un altro livello convoluzionale o livelli di pooling. In generale, il livello completamente connesso è il livello finale nella rete.

Man mano che aumenta il numero di livelli, aumenta la complessità del modello e il modello può identificare parti maggiori dell'immagine. I livelli iniziali si concentrano su caratteristiche semplici, ad esempio i bordi. Man mano che i dati dell'immagine avanzano attraverso i livelli della CNN, la rete inizia a riconoscere elementi o forme più sofisticati nell'oggetto. Infine, identifica l'oggetto previsto.

Potenziali casi d'uso

  • Questa soluzione consente di automatizzare il rilevamento degli errori, che è preferibile affidarsi esclusivamente agli operatori umani. Ad esempio, questa soluzione può aumentare la produttività identificando componenti elettronici difettosi. Questa funzionalità è importante per la produzione snella, il controllo dei costi e la riduzione dei rifiuti nella produzione. Nella produzione di circuiti stampati eventuali circuiti difettosi possono costare denaro e produttività ai produttori. Le linee di assemblaggio si basano su operatori umani per esaminare e convalidare rapidamente le schede contrassegnate come potenzialmente difettose dai computer di test della linea di montaggio.
  • La classificazione delle immagini è ideale per il settore sanitario. La classificazione delle immagini aiuta a rilevare crepe ossee, vari tipi di cancro e anomalie nei tessuti. È anche possibile usare la classificazione delle immagini per contrassegnare le irregolarità che possono indicare la presenza di malattie. Un modello di classificazione delle immagini può migliorare l'accuratezza delle istanze mrI.
  • Nel dominio dell'agricoltura, le soluzioni di classificazione delle immagini aiutano a identificare le malattie e le piante vegetali che richiedono acqua. Di conseguenza, la classificazione delle immagini consente di ridurre la necessità di intervento umano.

Collaboratori

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dal collaboratore seguente.

Autore principale:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passaggi successivi

Ricerca visiva al dettaglio con Azure Cosmos DB