Iperparametri nella classificazione
È possibile considerare gli iperparametri come impostazioni usate per il training. Ad esempio, è possibile scegliere di eseguire il training lentamente o rapidamente. Gli iperparametri influiscono sul training e quindi sulle prestazioni del modello finale. Gli iperparametri disponibili dipendono esattamente dal tipo di modello di cui si esegue il training. In genere si sperimentano gli iperparametri per ottimizzare le prestazioni del modello.
Foreste casuali come esempio
Le foreste casuali hanno diversi tipi di iperparametri disponibili. Con le foreste casuali in particolare, la linea tra gli iperparametri delle decisioni architetturali può essere sfocata. Ciò è dovuto al fatto che gli iperparametri non influiscono solo sui parametri all'interno del modello, ma anche su come sono strutturati gli alberi e la foresta.
Tenere presente che all'inizio del training a ogni albero delle decisioni vengono forniti numerosi campioni, ad esempio 100 ginnasti, alcuni dei quali hanno vinto medaglie. È necessario creare un albero che divide progressivamente questi campioni in sottogruppi più piccoli di atleti. L'obiettivo è che questi sottogruppi contengano atleti simili, ad esempio all'interno di ogni sottogruppo tutti gli atleti che hanno vinto medaglie o tutti gli atleti che non le hanno vinte. Vengono esaminati ora alcuni iperparametri che possono influire su questo processo di training.
Criteri in base ai quali eseguire la suddivisione
Durante il training, l'ottimizzatore deve decidere quando dividere un nodo. Esistono diversi modi in cui è possibile prendere decisioni come questa e il metodo scelto viene definito iperparametro. In sostanza, metodi diversi fanno riferimento a modi diversi per valutare la somiglianza di un campione.
I metodi comuni che suddividono i nodi si basano sulla teoria delle informazioni. Questo approccio può essere immaginato approssimativamente come la suddivisione di un campione in modo che i due sottocampioni risultanti siano 'più puri' dell'originale. I metodi disponibili differiscono leggermente e possono comportare lievi differenze nell'albero finale risultante, in modo molto simile al modo in cui le funzioni di costo usate per la discesa del gradiente possono fornire modelli finali diversi. Nel set di esercizi successivo verranno sperimentati due criteri.
Riduzione minima delle impurità
È possibile personalizzare ulteriormente il criterio usato per suddividere i nodi. Ad esempio, l'impostazione della riduzione minima della purezza significa che un nodo può essere suddiviso solo se il modello verrà migliorato di una determinata quantità o più. Esistono diversi iperparametri correlati che possono bloccare la creazione di nuovi nodi, ad esempio la profondità massima o il numero minimo di campioni in un nodo.
Il motivo per cui si limita la crescita eccessiva di un albero è quello di evitare l'overfitting. Gli alberi di dimensioni maggiori consentono di trovare più corrispondenze con il set di dati di training, ma possono diventare così ottimizzati per questo set di training che non funzionano più per altri dati. In altre parole, limitare la complessità di un albero può ridurne la tendenza all'overfitting.
Numero massimo di caratteristiche
Quando vengono creati gli alberi in una foresta casuale, questi vengono forniti con un subset di dati di training da adattare e un elenco di caratteristiche da usare. È importante notare che ogni albero può ricevere raccolte diverse di caratteristiche. Ad esempio, un albero può usare Peso e Altezza, mentre un altro usa Altezza ed Età.
Aumentando il numero massimo di caratteristiche che ogni albero può ricevere, è probabile migliorare la capacità di ogni albero di adattarsi al set di training, poiché vengono fornite più informazioni. Se questo aiuti o meno le relative capacità per il set di test può richiedere una sperimentazione. Questo perché fornire sempre molte caratteristiche può significare che gli alberi nella foresta finiscano per essere più simili tra loro, riducendo il vantaggio di una foresta casuale rispetto a un semplice albero delle decisioni. Trovare l'equilibrio tra questi estremi richiede in genere una sperimentazione.
Seeding
L'adattamento del modello in genere si basa, a un certo punto, su numeri casuali. I computer non producono numeri realmente casuali, ma contengono regole che specificano come produrre un elenco di numeri casuali, dato un numero iniziale, denominato valore di inizializzazione casuale.
Ad esempio, se il valore di inizializzazione è 10 e accetta i primi tre numeri 'casuali', il computer potrebbe produrre 0,75, 0,13, 0,68. Anche se questi numeri appaiono casuali, ogni volta che si imposta 10 come valore di inizializzazione, si otterrà lo stesso set di numeri.
In Machine Learning vengono usati numeri casuali per inizializzare i parametri del modello e/o suddividere i set di dati in set di training e di test. Se il valore di inizializzazione casuale viene impostato, i valori casuali usati durante il processo di training saranno uguali ogni volta che si esegue di nuovo il codice, ovvero ogni volta che si esegue di nuovo il codice, si assegnano gli stessi dati ai set di test o ai set di training e ai modelli con lo stesso stato di inizializzazione (parametri iniziali).
Al contrario, se non si imposta il valore di inizializzazione, il computer ne selezionerà automaticamente uno, ad esempio in base all'ora, il che significa che eseguire il training due volte può dare risultati leggermente diversi.
Il valore di inizializzazione casuale non è strettamente un iperparametro, ma viene illustrato qui per evidenziare che questo parametro esterno può avere un ruolo nell'efficacia del training. Sebbene questo aspetto sia in genere di minore importanza, se il modello è molto complesso e/o la quantità di dati disponibili è piccola, le prestazioni del set di test del modello possono essere notevolmente diverse se vengono usati due valori di inizializzazione diversi. In tali situazioni, spesso è utile eseguire il training con più valori di inizializzazione diversi per valutare fino a che punto il design del modello è adeguato e fino a che punto le prestazioni sono semplicemente “pura fortuna”.