• Non ci sono risultati.

3.3 L’analisi empirica

3.3.3 Data pre-processing

3.3.3.3 Feature selection

La selezione delle funzionalità, come parte della strategia di preelaborazione dei dati, si è rivelata piuttosto efficace, soprattutto in caso di data set con dimensioni elevate.

Gli obiettivi della feature selection includono: la creazione di modelli più semplici e

comprensibili, il miglioramento delle prestazioni e la preparazione di dati chiari e comprensibili [92].

Possiamo definire formalmente la Feature Selection (FS) come segue: sia ei un'istanza ei = (ei1, ..., ein, eiy), dove eir corrisponde al r-esimo valore della caratteristica dell'i-esimo campione ed eiy corrisponde al valore della classe di output Y. Assumiamo un training set D con m esempi, le cui istanze ei sono formate da un insieme X di n caratteristiche e da un insieme di test Dt. Sθ ⊆ X è definito come il sottoinsieme di funzionalità selezionate prodotte da un algoritmo FS [93].

È possibile identificare tre diversi approcci sui quali si basano gli algoritmi di FS:

• filtering approaches, metodi statistici che classificano le caratteristiche in base a criteri specifici. Quando l'insieme delle funzionalità più classificate viene utilizzato per la previsione della classe, le prestazioni della classificazione sono spesso inferiori rispetto a quando vengono utilizzate tutte le funzionalità. Tra questi algoritmi troviamo ANOVA, Pearson correlation, variance thresholding;

• modelli wrapperx, dove il processo di selezione è legato alla performance di uno specifico modello di classificazione e la FS è realizzata utilizzando alcuni metodi di ottimizzazione e strategie di ricerca. Una variante molto utilizzata dei modelli wrapper è quella randomizzata, che si basa su strategie di ricerca come gli algoritmi genetici (GA), hill climbing e simulated annealing. SI tratta di un procedimento molto impegnativo dal punto di vista computazionale e che può portare alla selezione di funzionalità distorte rispetto al classificatore;

• metodi FS embedded, che incorporano il procedimento di selezione all’interno del processo di sviluppo del modello di apprendimento automatico. Questa tipologia di ricerca dei sottoinsiemi di funzionalità è un processo di ottimizzazione combinato che comprende sia la selezione di un insieme ottimizzato di funzionalità, sia la scelta

dei parametri di ottimizzazione del modello. Ne sono un esempio gli algoritmi Lasso, Ridge, Decision Tree e Random Forest.

Per analizzare l’importanza delle caratteristiche riguardo la correlazione con la variabile di output sono stati utilizzati tre algoritmi: 2 di tipo embedded, ovvero LASSO e il Random Forest e uno di tipo filtering, come ANOVA.

LASSO, acronimo di least absolute shrinkage and selection operator, è un metodo che si basa su una regressione lineare avente predittori xij standardizzati e valori di risposta yi centrati con i = 1, 2, …, N e j = 1, 2, …, p. L’obiettivo di questo metodo è trovare l’insieme di valori β ={βj} tali da minimizzare la seguente sommatoria:

∑ (𝑦𝑖− ∑ 𝑥𝑖𝑗𝛽𝑗

𝑗

)

2

+ 𝜆 ∑|𝛽𝑗|

𝑝

𝑗=1 𝑁

𝑖=1

Dove λ è un parametro di regolarizzazione non negativo, mentre il secondo termine può essere definito come l1 penalty ed è molto importante. L'approccio della penalizzazione l1 è chiamato anche ricerca delle basi nell'elaborazione del segnale.

LASSO agisce riducendo continuamente i coefficienti verso lo 0 all'aumentare di λ e accade che alcuni coefficienti, se λ è sufficientemente grande, sono ridotti esattamente a 0. In più, restringendo il set di variabili, spesso si è in grado di ottenere un miglioramento dell’accuratezza della previsione, grazie ad un compromesso tra bias e varianza.

Utilizzando i concetti di Jianqing Fan e Runze Li in Variable Selection via Nonconcave PenalizedLikelihood and its Oracle Properties, possiamo definire la procedura utilizzata per dedurre i coefficienti βj una oracle procedure, in quanto denota le seguenti proprietà [94]:

• seleziona le variabili principali da utilizzare per il modello {j: βj ≠ 0};

• produce il tasso di stima migliore una volta trovato il corretto subset di variabili [95].

ANOVA, acronimo di Analysis of Variance, è una tecnica statistica utilizzata per l’analisi della variazione in una variabile di risposta. Si tratta di una variabile casuale continua, misurata in condizioni definite da fattori discreti definibili come variabili di classificazione. ANOVA viene comunemente utilizzata per testare l'uguaglianza tra mezzi confrontando la varianza tra i gruppi rispetto alla varianza all'interno dei gruppi, ovvero il cosiddetto errore casuale [96].

Un altro campo di applicazione è nel calcolo della feature importance, utile per la valutazione delle caratteristiche nel procedimento di feature selection in ambito di Machine Learning. In particolare, sfruttando uno degli obiettivi tipici dell'ANOVA, ovvero confrontare i mezzi delle variabili di risposta per diverse combinazioni delle variabili di classificazione, viene utilizzato per decidere se una caratteristica mostra una differenza significativa tra due o più classi [97].

La selezione delle caratteristiche basata sul classificatore Random Forest sfrutta i punteggi di importanza forniti dal modello. Questo metodo ensemble di alberi decisionali, basandosi o sull’impurità di Gini o sull’entropia, implicitamente esegue una selezione delle caratteristiche utilizzando un piccolo sottoinsieme di «variabili forti» solo per la classificazione, fornendo la cosiddetta feature importance [98].

Nell’analisi si è deciso di utilizzare come metrica l’entropia:

𝐸 = − ∑ 𝑝(𝑖)

𝑛

𝑖=1

log2𝑝(𝑖)

dove pj rappresenta la probabilità della j-esima classe. Questo punteggio di importanza delle caratteristiche fornisce una classifica relativa delle caratteristiche spettrali ed è un sottoprodotto nell'addestramento del classificatore Random Forest. In ogni nodo τ all'interno degli alberi binari T della foresta casuale, viene ricercata la divisione ottimale

utilizzando l’entropia i(τ) per misurare quanto bene una divisione di potenziale sta separando i campioni delle due classi in un particolare nodo.

I risultati ottenuti dall’analisi della features importance sul data set trovano una rappresentazione grafica nelle figure 3.22 e 3.23. Il primo grafico riporta le caratteristiche scelte dai metodi LASSO e ANOVA (Figura 3.22), il secondo espone la features importance ricavata attraverso il Random Forest (Figura 3.23).

Figura 3.22 Selezione delle caratteristiche secondo LASSO e ANOVA, elaborazione personale con Matplotlib.

Figura 3.23 Analisi della features importance con classificatore Random Forest, elaborazione personale con Matplotlib.

A fronte dei risultati cui si è giunti, il data set da sottoporre al classificatore è stato limitato alle seguenti sette caratteristiche:

• Cross Section;

• Comp. Height Diff Perc.;

• Weld. Time Diff Perc.;

• Weld. Height Diff Perc.;

• Weld. Height;

• Weld. Height Ref.;

• Weld. Time.