Ho avuto un'interessante discussione sulla base di un progetto a cui stavamo lavorando: perché usare un sistema di ispezione visiva della CNN su un algoritmo di corrispondenza dei modelli?
Sfondo: avevo mostrato una demo di un semplice sistema di visione della CNN (webcam + laptop) che rilevava se un particolare tipo di oggetto era "rotto" / difettoso o no - in questo caso, un circuito stampato PCB. Al mio modello CNN sono stati mostrati esempi dei circuiti stampati corretti (circa 100 immagini di ciascuno) su uno sfondo statico. Il nostro modello ha utilizzato i primi pochi strati conv / maxpool di VGG16 pre-addestrato (su imagenet), e quindi abbiamo aggiunto alcuni conv / trains più allenabili, con alcuni dense, portando a un dim-3 un output vettoriale codificato a caldo per la classificazione : (is_empty, has_good_product, has_defective_product).
Il modello si è allenato abbastanza facilmente e ha raggiunto la validazione del 99% senza problemi; ci siamo anche allenati con vari miglioramenti dei dati poiché sappiamo che il nostro set di dati era piccolo. In pratica, ha funzionato circa 9 volte su 10, ma alcune traduzioni / rotazioni casuali dello stesso circuito stampato lo avrebbero occasionalmente inserito nella classe opposta. Forse un aumento dei dati più aggressivo avrebbe aiutato. Ad ogni modo, per un prototipo di progetto concettuale eravamo felici.
Ora ci stavamo presentando a un altro ingegnere e al suo collega, e ha sollevato l'argomento secondo cui le NN sono eccessive per questo, dovrebbe semplicemente usare la corrispondenza dei modelli, perché si vorrebbe fare delle CNN?
Non abbiamo avuto un'ottima risposta sul perché il nostro approccio potrebbe essere migliore in alcune applicazioni (ad esempio altre parti da ispezionare). Alcuni punti che abbiamo sollevato:
1) Più robusto per le invarianti (ad es. Aumento dei dati)
2) Può fare apprendimento online per migliorare il sistema (es. Umano può dire al software quali esempi ha sbagliato)
3) Non c'è bisogno di fissare soglie come nei classici algoritmi di visione artificiale Cosa ne pensate, ci sono più vantaggi per un sistema CNN per questo tipo di attività di ispezione? In quali casi sarebbe meglio della corrispondenza dei modelli?
Alcune idee casuali in più su quando le NN profonde potrebbero essere la tecnologia per il lavoro: per i sistemi che richiedono il rilevamento della profondità 3D come parte dell'input o qualsiasi tipo di oggetto che può essere deformato / allungato / schiacciato ma che è ancora "buono" e non difettoso (ad esempio un animale impagliato, fili, ecc.). Curioso di sentire i tuoi pensieri :)