Machine learning nel controllo industriale: quando conviene

Roboterhand und menschliche Hand berühren gemeinsam einen Bildschirm mit einem Netzwerk aus Linien und Punkten

IA e machine learning

Una stazione di controllo segnala troppi falsi allarmi, oppure certi difetti sfuggono sempre di nuovo. Subito si fa il nome del machine learning. Se lo sforzo valga la pena, però, non lo decide l'algoritmo, ma i dati, il processo e obiettivi chiari.

Dove il machine learning dà il meglio

I metodi ad apprendimento esprimono i loro punti di forza quando i difetti sono difficili da tradurre in regole: graffi su superfici strutturate, alterazioni di colore, difetti su prodotti naturali o tessili, punti di saldatura con molte varianti ammesse. Sono d'aiuto anche quando gli stessi pezzi buoni hanno un aspetto molto diverso tra loro.

Il machine learning ha meno senso dove bisogna misurare con esattezza. Dimensioni, distanze e posizioni vengono determinate dai metodi classici in modo più preciso e tracciabile.

Tre presupposti per trarne vantaggio

  • Dati: abbastanza immagini che coprano la dispersione reale – lotti, turni, sporcizia, illuminazione che invecchia. Inoltre immagini di difetti in numero sufficiente, annotate con cura.
  • Acquisizione stabile delle immagini: il machine learning non sostituisce né una telecamera adatta né una buona illuminazione. Più uniforme è la ripresa, meno dati servono al modello.
  • Obiettivo chiaro: quanti difetti sfuggiti (difetti non rilevati) e quanto falso scarto (pezzi buoni scartati per errore) sono accettabili? Senza questi valori nessun modello può essere collaudato in modo sensato.

Quando mancano le immagini dei difetti: rilevamento delle anomalie

In molte produzioni i difetti sono rari. Ci sono migliaia di pezzi buoni, ma quasi nessun pezzo difettoso. Qui aiutano i metodi di rilevamento delle anomalie: imparano soltanto l'aspetto di un pezzo buono e segnalano tutto ciò che se ne discosta. Il dataset pubblico MVTec AD è stato composto proprio per compiti di controllo industriale di questo tipo. Contiene per ogni categoria immagini di addestramento prive di difetti e immagini di test con diversi tipi di difetto. Per iniziare, il rilevamento delle anomalie è spesso più realistico di un classificatore che deve conoscere ogni tipo di difetto.

Conviene? Una valutazione rapida

DomandaA favore del machine learningContro
Quadro dei difetti vario, difficile da descrivere chiaramente descrivibile, misurabile
Disponibilità di dati molte immagini, difetti documentati poche immagini, nessuna annotazione
Varianti molti prodotti simili, stesso principio di controllo pezzi sempre nuovi e molto diversi
Controllo attuale manuale, faticoso, disomogeneo il controllo a regole funziona in modo stabile
Obbligo di prova controllo interno, campionamenti possibili ogni decisione deve essere motivata

Valutare con onestà invece di farsi impressionare

Un tasso di successo da solo dice poco. Decisivo è quali difetti il modello non vede e quanto spesso scarta pezzi buoni. Misuri entrambi i valori separatamente, e precisamente su immagini di test che il modello non ha mai visto durante l'addestramento:

# Ogni giudizio: (verità, modello), valori "iO" (conforme) o "niO" (non conforme)

def pruefkennzahlen(urteile):

    schlechte = [modell for wahr, modell in urteile if wahr == "niO"]

    gute = [modell for wahr, modell in urteile if wahr == "iO"]

    schlupf = schlechte.count("iO") / max(len(schlechte), 1)

    pseudoausschuss = gute.count("niO") / max(len(gute), 1)

    return schlupf, pseudoausschuss



urteile = [("iO", "iO"), ("niO", "niO"), ("niO", "iO"), ("iO", "iO")]

schlupf, pseudo = pruefkennzahlen(urteile)

print(f"Schlupf: {schlupf:.1%}, Pseudoausschuss: {pseudo:.1%}")

Un modello con poco falso scarto che lascia passare difetti critici è inutile per la garanzia della qualità. Al contrario, troppo falso scarto fa salire i costi e fa perdere al sistema l'accettazione sulla linea.

Dalla pratica

In un progetto per un produttore di telecamere non abbiamo solo verificato quali reti neurali risolvono un problema di riconoscimento, ma anche quanto dura l'addestramento in funzione della qualità desiderata. Questa visione costi-benefici fa parte di ogni decisione. Nel progetto di ricerca HIRAC, un sistema di assistenza basato sull'IA per sedie a rotelle, impieghiamo il deep learning là dove elaborazione delle immagini, feedback dei sensori e manipolazione degli oggetti interagiscono – cioè dove le regole fisse raggiungono i loro limiti. E nel miglioramento delle immagini per un produttore di sensori verifichiamo prima gli algoritmi in MATLAB, prima che entrino nel prodotto in C#. Prima testare, poi costruire: questo vale allo stesso modo per il machine learning.

Errori tipici

  • Cominciare dal modello invece che dai dati e dai criteri di accettazione.
  • Immagini di addestramento e di test dello stesso lotto o dello stesso giorno – il risultato sembra migliore di quanto sia sulla linea.
  • Riportare solo il tasso di successo complessivo senza separare difetti sfuggiti e falso scarto.
  • Non avere un piano per il riaddestramento quando cambiano materiale, fornitore o illuminazione.
  • Non coinvolgere gli addetti al controllo: chi conosce i difetti dovrebbe aiutare ad annotare le immagini.
  • Mettere in esercizio un modello senza un livello di riserva, ad esempio senza un ricontrollo manuale dei casi incerti.

Come La aiutiamo

Dai nostri progetti: analisi di reti neurali per un produttore di telecamere, progetto di ricerca HIRAC (finanziato nell'ambito dello ZIM, con la Hochschule Offenburg), miglioramento delle immagini per un produttore di sensori. Approfondimento: MVTec AD – dataset per il rilevamento industriale delle anomalie.

CONTACT

Seleziona la tua lingua

Primo colloquiofissare oraPrimo colloquiofissare ora