L’importanza delle funzionalità è lo strumento più comune per spiegare un modello di machine learning. È così popolare che molti data scientist finiscono per credere che l’importanza delle funzionalità equivalga alla bontà delle funzionalità.
Non è così.
Quando una funzionalità è importante, significa semplicemente che il modello l’ha trovata utile nel set di addestramento. Tuttavia, questo non dice nulla sulla capacità della funzionalità di generalizzare su nuovi dati!
Per tener conto di ciò dobbiamo fare una distinzione tra due concetti:
- Contributo di previsione: il peso che una variabile ha nelle previsioni fatte dal modello. Ciò è determinato dai modelli che il modello ha trovato sul set di addestramento. Ciò equivale all’importanza della caratteristica.
- Contributo di errore: il peso che una variabile ha negli errori commessi dal modello su un dataset di controllo. Questo è un proxy migliore delle prestazioni della funzionalità sui nuovi dati.
In questo articolo spiegherò la logica dietro il calcolo di queste due quantità su un modello di classificazione. Mostrerò anche un esempio in cui l’utilizzo del contributo sugli errori per la selezione delle funzionalità porta a un risultato di gran lunga migliore, rispetto all’utilizzo del contributo della previsione.
Se sei più interessato alla regressione piuttosto che alla classificazione, puoi leggere il mio articolo precedente “Le tue caratteristiche sono importanti? Non significa che siano buoni”.
- Partendo da un esempio di giocattolo
- Quale “errore” dovremmo usare per i modelli di classificazione?
- Come dovremmo gestire i valori SHAP nei modelli di classificazione?
- Calcolo del “contributo di previsione”
- Calcolo del “contributo di errore”
- Un esempio di set di dati reale
- Dimostrare che funziona: eliminazione delle funzionalità ricorsive con il “contributo di errore”
- Conclusioni
Fonte: towardsdatascience.com