Graph Neural Networks: un’applicazione all’identificazione di similarità in progetti di matrici di alluminio –  overview tecnica

Graph Neural Networks - Intellico

Indice

L’identificazione di pattern e elementi di somiglianza è una sfida comune a diversi settori. In un contesto di marketing, potremmo aver bisogno di comprendere le analogie nel comportamento d’acquisto tra clienti per aumentare la retention o le vendite. In un contesto sanitario, potremmo avere l’esigenza di comprendere quali e come i pazienti manifestano sintomi simili. Nella progettazione di nuovi prodotti, potremmo cercare somiglianze tra prove/progetti passati ed i nuovi concept per velocizzare il design delle nuove soluzioni.

Grapho: come valorizzare le similarità nei processi di business

Il “Design by-reuse” è infatti un approccio chiave per le aziende Engineer-to-Order e Make-to-Order, che puntano a migliorare la propria produttività sfruttando migliaia di progetti creati in passato.

Nel precedente articolo “AI & EU: AI Regio Project e l’Explainable AI per Manufacturing and R&D” abbiamo presentato come Intellico abbia sviluppato la soluzione Grapho all’interno del progetto AI Regio. Grapho è una tecnologia che impiega tecniche di intelligenza artificiale avanzate basate su GNN (Graph Neural Networks) per rendere più efficiente e accurato il processo di identificazione e riutilizzo dei componenti esistenti nelle nuove generazioni di prodotti. Il suo scopo è quello di migliorare la produttività e la competitività delle imprese manifatturiere europee velocizzando il processo di identificazione di piattaforme comuni e dunque riduzione delle varianti.

Qui riassumiamo alcune caratteristiche tecniche della soluzione. Contattateci per ulteriori dettagli.

Stato dell’Arte

L’identificazione e il riconoscimento di pattern sono un problema di apprendimento non-supervisionato, data la difficoltà di attribuire label che catturino sia concetti di alto livello che dettagli di grana fine. Per questo motivo, abbiamo utilizzato l’Apprendimento Auto-supervisionato (SLL – Self-Supervised Learning).

Il SLL sfrutta le proprietà intrinseche dei dati durante il processo di apprendimento, creando modelli pre-addestrati versatili che possono essere ulteriormente perfezionati per una varietà di compiti specifici. Gli sviluppi recenti hanno sottolineato l’efficacia del SLL e dimostrato la sua superiorità rispetto alle reti supervisionate, soprattutto nell’elaborazione di immagini e video, affrontando problemi come classificazione di immagini, rilevazione di oggetti, classificazione delle azioni e localizzazione delle azioni.

Uno dei paradigmi di punta del SLL è l’Apprendimento Contrastivo. Questa tecnica si basa sul selezionare tre diversi tipi di campioni, chiamati ancora, campione positivo e campione negativo. L’ancora è un campione pescato da un dataset, e quindi appartiene alla distribuzione originale dei dati. Con una serie di trasformazioni geometriche, viene generato il campione positivo a partire dall’ancora. Il nome è dovuto al fatto che si assume che tra l’ancora e questa versione elaborata vi sia un certo livello di similarità, e quindi le due immagini sono due visioni equivalenti di uno stesso oggetto o concetto.  Il campione negativo è chiamato in questo modo perché, contrariamento a quello positivo, è utilizzato dal modello per imparare il concetto di dissimilarità. Questo campione è spesso selezionato randomicamente oppure secondo certi criteri (nel caso in cui siano presenti delle etichette significative per il problema).
A questo punto, il processo di somiglianza consiste di massimizzare la somiglianza tra l’ancora e il campione positivo e allo stesso tempo distanziare il più possibile questi dal campione negativo.
L’elemento chiave nell’efficacia di questo paradigma è racchiuso in come i campioni vengono estratti e elaborati.

Metodi

È stato progettato un sistema a due componenti che comprende un modello di somiglianza e un modello di proposta automatica di classi. L’obiettivo è infatti quello di creare un sistema interpretabile in grado di individuare somiglianze tra diversi progetti.
Il modello di somiglianza è utilizzato per creare un database di “embeddings” (rappresentazioni) che permette una rapida ricerca di profili simili rispetto ad un progetto fornito come query.  Questo permette il riutilizzo efficiente di progetti ed elimina la necessità di avviare la fase di progettazione da zero.

Successivamente, il modello di proposta automatica di classi costruisce una rappresentazione interpretabile a partire dagli “embeddings” del modello di somiglianza. Da questa rappresentazione viene costruito un grafo e generate un insieme di classi “smart” artificiali, che permettono di comprendere le dinamiche interne del modello di somiglianza e aprono la strada a suggerimenti di progettazione esplicabili e intuitivi.

Modello di Similitudine: blocchi di costruzione

La Reti Neurali Convoluzionali (CNN) sono lo stato dell’arte per l’elaborazione di immagini, grazie alla loro capacità di estrarre informazioni su dettagli a basso livello e concetti di alto livello. Questo è possibile grazie all’uso di filtri convoluzionali che operano su insiemi adiacenti di pixel e introducono un bias spaziale nel modello. Infatti, rappresentazioni di insiemi di pixel vicini in un’immagine avranno caratteristiche simili. 

Le CNN presentano anche una forte invarianza traslazionale quando viene utilizzata un’operazione di pooling associativa su una “feature map” e , sotto determinate ipotesi di simmetria dell’immagine, una debole invarianza rispetto agli specchiamenti. Nel contesto specifico dell’analisi dei progetti di stampi per estrusione in alluminio, queste capacità intrinseche delle CNN diventano indispensabili, in quanto nel corso degli anni un singolo progetto potrebbe essere archiviato in diverse orientazioni (ruotate, capovolte o specchiate) ed è cruciale essere in grado di rilevare queste trasformazioni.

Il modello proposto viene addestrato in tre fasi, riutilizzando i parametri e gli output generati dalle fasi precedenti:

  • Autoencoder: ispirato all’architettura di UNET, è il punto di partenza della nostra architettura. Il modello è addestrato sul dataset originale in maniera non supervisionata, e impara una rappresentazione compatta delle immagini. In questa fase, il modello è solo in grado di riconoscere una somiglianza generale legata alla forma del profilo
  • Modello Contrastivo: il codificactore è esteso con una rete neurale, e viene eseguito un round di addestramento contrastivo. L’Autoencoder ha un ruolo fondamentale, in quanto durante l’allenamento viene considerato anche l’errore di ricostruzione dell’ancora e dei campioni positivi e negativi. Questo permette alla CNN di conservare caratteristiche geometriche rilevanti e di essere resistente a etichette troppo rumorose o troppo generale.
  • Le Reti Neurali Grafiche (GNNs) sono utilizzate per raffinare ulteriormente la selezione delle coppie negative nella funzione di errore contrastiva, evitando le limitazioni del campionamento casuale impiegate nelle fasi precedenti. La GNN  impara una rappresentazione grafica basata sulla rappresentazione appresa delle CNN. In questo approccio, l’errore contrastivo non viene calcolato su coppie casuali di immagini, ma vengono invece selezionati i campioni negativi più vicini, offrendo un insieme di campioni negativi più impegnativi da ottimizzare e quindi più informativi per l’addestramento. Questa strategia focalizzata accelera il processo di apprendimento, promuovendo un modello capace di distinguere anche le immagini più sottilmente diverse.

Risultati

Grapho è stato testato con un gruppo di designer esperti su un campione di 100 progetti, categorizzati per diversi livelli di complessità:

• Progetti semplici –  ridotto numero di dettagli: GRAPHO ha mostrato un tasso di riutilizzo del 95%

• Progetti complessi – elevato numero di dettagli e vincoli di cui tenere conto per la corretta estrusione: GRAPHO ha raggiunto un tasso di riutilizzo superiore all’80%

• Grapho ha mostrato significativi miglioramenti in termini computazionali, conducendo una scansione completa dell’intero database in 0,5 secondi, a fronte di una sostanziale impossibilità dei sistemi tradizionali di eseguire le operazioni in tempistiche compatibili con l’operatività

Necessiti maggiori informazioni?

Compila il form dedicato per essere contattato da un nostro esperto.