Come AWS Prototyping ha permesso a ICL-Group di costruire modelli di computer vision su Amazon SageMaker

Come AWS Prototyping ha permesso a ICL-Group di creare modelli di computer vision su Amazon SageMaker

Questo è un post congiunto tra clienti scritto congiuntamente da dipendenti di ICL e AWS.

ICL è una società multinazionale di manifattura e mining con sede in Israele che produce prodotti basati su minerali unici e soddisfa i bisogni essenziali dell’umanità, principalmente in tre mercati: agricoltura, cibo e materiali ingegnerizzati. I loro siti di estrazione mineraria utilizzano attrezzature industriali che devono essere monitorate perché i guasti delle macchine possono comportare perdite di entrate o addirittura danni ambientali. A causa delle condizioni estremamente difficili (temperature basse e alte, vibrazioni, acqua salata, polvere), è difficile attaccare sensori a queste macchine minerarie per il monitoraggio remoto. Pertanto, la maggior parte delle macchine viene monitorata manualmente o visivamente in modo continuo da operai sul posto. Questi operai controllano frequentemente le immagini delle telecamere per monitorare lo stato di una macchina. Sebbene questo approccio abbia funzionato in passato, non è scalabile e comporta costi relativamente elevati.

Per superare questa sfida aziendale, ICL ha deciso di sviluppare internamente le capacità per utilizzare l’apprendimento automatico (ML) per la visione artificiale (CV) per monitorare automaticamente le loro macchine minerarie. Come società mineraria tradizionale, la disponibilità di risorse interne con competenze in scienze dei dati, CV o ML era limitata.

In questo post, discutiamo i seguenti argomenti:

  • Come ICL ha sviluppato le capacità interne per creare e mantenere soluzioni CV che consentono il monitoraggio automatico delle attrezzature minerarie per migliorarne l’efficienza e ridurre gli sprechi
  • Un’approfondita analisi di una soluzione per i separatori minerari sviluppata con il supporto del programma di prototipazione di AWS

Utilizzando l’approccio descritto in questo post, ICL è stata in grado di sviluppare un framework su AWS utilizzando Amazon SageMaker per creare altri casi d’uso basati su visioni estrapolate da circa 30 telecamere, con il potenziale di scalare fino a migliaia di tali telecamere nei loro siti di produzione.

Sviluppo delle capacità interne tramite la prototipazione di AWS

Creare e mantenere soluzioni di apprendimento automatico per carichi di lavoro aziendali critici richiede personale sufficientemente qualificato. L’esternalizzazione di tali attività spesso non è possibile perché il know-how interno sul processo aziendale deve essere combinato con la creazione di soluzioni tecniche. Pertanto, ICL si è rivolta ad AWS per il supporto nel loro percorso verso la creazione di una soluzione CV per monitorare le loro attrezzature di estrazione mineraria e acquisire le competenze necessarie.

Prototyping di AWS è un programma di investimento in cui AWS inserisce specialisti nei team di sviluppo dei clienti per creare casi d’uso critici per la missione. Durante tale impegno, al team di sviluppo del cliente viene consentito di utilizzare le tecnologie sottostanti AWS mentre costruiscono il caso d’uso nel corso di 3-6 settimane e ricevono assistenza pratica. Oltre a un caso d’uso corrispondente, tutto ciò di cui il cliente ha bisogno sono 3-7 sviluppatori che possono dedicare oltre l’80% del loro tempo di lavoro alla costruzione del suddetto caso d’uso. Durante questo periodo, gli specialisti AWS sono completamente assegnati al team del cliente e collaborano con loro a distanza o in loco.

Caso d’uso di visione artificiale di ICL

Per l’impegno di prototipazione, ICL ha selezionato il caso d’uso per il monitoraggio dei loro separatori minerari. Un separatore è una grande macchina industriale per l’estrazione mineraria in cui i minerali disciolti in acqua vengono elaborati. L’acqua scorre in diverse corsie dalla parte superiore della macchina fino alla parte inferiore. L’afflusso è monitorato per ciascuna corsia individualmente. Quando l’afflusso si esaurisce nella corsia, si verifica un trabocco, che indica che la macchina è sovraccarica. Il materiale che trabocca sono minerali che non vengono elaborati dal separatore e vengono persi. Questo deve essere evitato regolando l’afflusso. Senza una soluzione di ML, il trabocco deve essere monitorato dagli esseri umani e potrebbe richiedere tempo prima che venga osservato e gestito.

Le seguenti immagini mostrano l’input e gli output dei modelli CV. L’immagine grezza della telecamera (a sinistra) viene elaborata utilizzando un modello di segmentazione semantica (al centro) per rilevare le diverse corsie. Quindi il modello (a destra) stima la copertura (bianca) e il trabocco (rosso).

Anche se l’impegno di prototipazione si è concentrato su un singolo tipo di macchina, l’approccio generale di utilizzare le telecamere e elaborare automaticamente le loro immagini mediante CV è applicabile a un’ampia gamma di attrezzature minerarie. Ciò consente a ICL di estrapolare le competenze acquisite durante l’impegno di prototipazione ad altre località, tipi di telecamere e macchine, nonché di mantenere i modelli di ML senza necessitare di supporto da parte di terzi.

Durante l’impegno, gli specialisti di AWS e il team di sviluppo di ICL si incontravano tutti i giorni e sviluppavano la soluzione passo dopo passo. Gli scienziati dei dati di ICL lavoravano in modo indipendente ai compiti loro assegnati o ricevevano il supporto pratico del pair-programming da specialisti di ML di AWS. Questo approccio garantisce che gli scienziati dei dati di ICL acquisiscano non solo esperienza nello sviluppo sistematico di modelli di ML utilizzando SageMaker, ma anche nell’incorporare tali modelli in applicazioni e nell’automatizzare l’intero ciclo di vita di tali modelli, compresa la rielaborazione o il monitoraggio automatico dei modelli. Dopo 4 settimane di questa collaborazione, ICL è riuscita a portare questo modello in produzione senza richiedere ulteriori supporti entro 8 settimane e ha costruito modelli per altri casi d’uso da allora in poi. L’approccio tecnico di questo impegno è descritto nella sezione successiva.

Monitoraggio degli screening minerari utilizzando modelli CV con SageMaker

SageMaker è una piattaforma completamente gestita che si occupa dell’intero ciclo di vita di un modello di ML: fornisce servizi e funzionalità che supportano i team che lavorano su modelli di ML dall’etichettatura dei dati in Amazon SageMaker Ground Truth al training e all’ottimizzazione del modello, nonché all’hosting di modelli di ML per l’utilizzo in produzione. Prima dell’impegno, ICL aveva installato le telecamere e ottenuto immagini come mostrato nelle immagini precedenti (immagine più a sinistra) e le aveva archiviate in un bucket di Amazon Simple Storage Service (Amazon S3). Prima che i modelli possano essere addestrati, è necessario generare dati di addestramento. Il team congiunto ICL-AWS ha affrontato questo in tre fasi:

  1. Etichettare i dati utilizzando un lavoro di etichettatura della segmentazione semantica in SageMaker Ground Truth, come mostrato nell’immagine seguente.
  2. Prelavorare le immagini etichettate utilizzando tecniche di aumentazione delle immagini per aumentare il numero di campioni di dati.
  3. Suddividere le immagini etichettate in set di addestramento, test e di convalida, in modo che le prestazioni e l’accuratezza del modello possano essere misurate in modo adeguato durante il processo di addestramento.

Per ottenere una scala di produzione per i carichi di lavoro di ML, automatizzare queste fasi è fondamentale per mantenere la qualità dell’input di addestramento. Pertanto, ogni volta che vengono etichettate nuove immagini utilizzando SageMaker Ground Truth, le fasi di pre-elaborazione e suddivisione vengono eseguite automaticamente e i set di dati risultanti vengono archiviati in Amazon S3, come mostrato nel diagramma seguente del flusso di addestramento del modello. Allo stesso modo, il flusso di distribuzione del modello utilizza risorse di SageMaker per aggiornare automaticamente gli endpoint ogni volta che un modello aggiornato è disponibile.

ICL sta utilizzando diverse approcci per implementare modelli di ML in produzione. Alcuni coinvolgono la loro attuale piattaforma AI chiamata KNIME, che consente loro di distribuire rapidamente modelli sviluppati nell’ambiente di sviluppo in produzione industrializzandoli in prodotti. Sono stati analizzate diverse combinazioni di utilizzo di KNIME e servizi AWS; l’architettura precedente era la più adatta all’ambiente di ICL.

L’algoritmo integrato di segmentazione semantica di SageMaker viene utilizzato per addestrare modelli per la segmentazione dell’area di griglia dello screening. Scegliendo questo algoritmo integrato rispetto a un container autocostruito, ICL non deve occuparsi della complessa gestione di una rete neurale convoluzionale (CNN) mentre può utilizzare tale CNN per il suo caso d’uso. Dopo aver sperimentato diverse configurazioni e parametri, ICL ha utilizzato un algoritmo di Fully Convolutional Network (FCN) con una pyramid scene parsing network (PSPNet) per addestrare il modello. Ciò ha permesso a ICL di finalizzare la costruzione del modello entro 1 settimana dell’impegno di prototipazione.

Dopo che un modello è stato addestrato, deve essere implementato per poter essere utilizzato per il monitoraggio dello screen. In linea con l’addestramento del modello, questo processo è completamente automatizzato e orchestrato utilizzando AWS Step Functions e AWS Lambda. Dopo che il modello è stato implementato con successo sul punto di accesso di SageMaker, le immagini in arrivo dalle telecamere vengono ridimensionate per adattarsi al formato di input del modello e quindi inviate al punto di accesso per le previsioni utilizzando le funzioni di Lambda. Il risultato della previsione di segmentazione semantica così come il rilevamento di overflow vengono quindi archiviati in Amazon DynamoDB e Amazon S3 per l’analisi in downstream. Se viene rilevato un overflow, Amazon Simple Notification Service (Amazon SNS) o le funzioni di Lambda possono essere utilizzate per mitigare automaticamente l’overflow e controllare le corsie corrispondenti sullo screen interessato. Il diagramma seguente illustra questa architettura.

Conclusione

In questo post ho descritto come ICL, un’azienda mineraria israeliana, ha sviluppato il proprio approccio di visione artificiale per il monitoraggio automatizzato delle attrezzature minerarie utilizzando telecamere. Prima abbiamo mostrato come affrontare una sfida del genere da un punto di vista organizzativo che si concentra sull’abilitazione, quindi abbiamo fornito un’analisi dettagliata su come è stato costruito il modello utilizzando AWS. Sebbene la sfida del monitoraggio possa essere unica per ICL, l’approccio generale di costruire un prototipo insieme agli specialisti di AWS può essere applicato a sfide simili, in particolare per le organizzazioni che non dispongono delle conoscenze AWS necessarie.

Se desideri apprendere come costruire un prototipo di scala di produzione per il tuo caso d’uso, contatta il tuo team account AWS per discutere di un coinvolgimento nel prototipaggio.