Questo lavoro affronta il problema di determinare la composizione di una miscela di polveri organiche,
per le quali si identifica la struttura utilizzando gli spettri infrarossi.
Abbiamo selezionato 6 polveri organiche e composto 13 accoppiamenti, con percentuali diverse di prodotti, per un totale di 62 diversi campioni di test.
Lo spettro infrarosso di un composto organico è costituito da diversi picchi, che caratterizzano le sottostrutture (gruppi funzionali) della molecola.
L'identificazione dei picchi è resa complessa dal fatto che essi possono sovrapporsi, a causa di valori bassi o di traslazioni della posizione, dovuti alle interazioni dei gruppi funzionali.
Sfida
Per classificare la quantità di un materiale in una miscela, gli strumenti analitici tradizionali si sono rivelati poco efficaci, mentre una rete neurale può essere addestrata per raggiungere questo obbiettivo.
Le reti neurali artificiali possono ricavare regole generali con cui estrarre parametri di identificazione da dati rumorosi.
Una rete neurale convoluzionale (CNN) può apprendere funzioni utili dal profilo spettrale e queste caratteristiche apprese possono alimentare direttamente una rete neurale completamente connessa per determinare le quantità di ciascun materiale in ciascuna miscela.
Nella figura si vede una generica rete di tipo 1D-CNN utilizzata sui campioni.
Risultati
MAE (Errore Assoluto Medio) MSE (Errore Quadratico Medio) RMSE (Scarto Quadratico Medio) R-squared (Coefficiente di Determinazione)
Abbiamo realizzato un modello di tipo 1D-CNN, composto da sette strati trainabili, quattro strati convoluzionali e due strati completamente collegati.
L'output di ogni livello convoluzionale viene passato al livello pooling.
Il livello di convoluzione contiene 32 filtri, ciascuno di dimensione 3, passo 1 e 0 padding.
Ogni due strati convoluzionali il numero di filtri viene raddoppiato, mentre gli altri parametri sono mantenuti uguali.
Le dimensioni di pooling sono 2 per il primo livello e 4 per l'ultimo.
Le mappe finali delle features ottenute dal livello di pooling vengono poi appiattite e utilizzate come input per il successivo passo, completamente connesso.
Lo strato finale ha il ruolo di regolarizzazione per mitigare problemi di over-fitting.
Il modello finale ha 713.510 parametri.
Molti modelli completano meglio la fase di training se il tasso di apprendimento viene gradualmente ridotto durante l'allenamento.
Abbiamo impostato il tasso di apprendimento dell'ottimizzatore di Adam in modo da diminuire iperbolicamente il tasso di apprendimento rispetto al base rate.
Il modello 1D-CNN addestrato che abbiamo ottenuto è in grado di determinare con precisione la quantità di un materiale in una miscela.