Funzioni di Scoring personalizzate in Scikit-Learn

Personalizzazione delle funzioni di Scoring in Scikit-Learn

Un’immersione profonda nelle funzioni di scoring per l’uso in RandomizedSearchCV, GridSearchCV e cross_val_scorer

Foto di engin akyurt su Unsplash

RandomizedSearchCV, GridSearchCV e cross_val_scorer sono tutti strumenti per ottimizzare e valutare i modelli di apprendimento automatico in scikit-learn. Ciascuno di questi strumenti offre un approccio sistematico per l’ottimizzazione dei parametri e la valutazione delle prestazioni del modello.

Per molto tempo, ho usato questi strumenti così come erano, senza alcuna considerazione per la funzione di scoring. Tuttavia, ho imparato che quando si utilizzano questi strumenti, scikit-learn utilizza di default la funzione di scoring intrinseca al modello per valutare le prestazioni. La metrica di scoring predefinita non è sempre appropriata, il che può portare a decisioni erronee riguardo il modello.

Il resto di questo articolo si approfondirà su come e quando utilizzare funzioni di scoring personalizzate in scikit-learn.

Esempio: Regressione Tweedie su Sinistri Assicurativi

In questo esempio, sviluppiamo un regressore per prevedere i futuri costi dei sinistri assicurativi, un compito complicato dall’incertezza intrinseca nei dati assicurativi. L’incertezza nei dati assicurativi deriva da alcuni fattori.

  • Una volta che qualcuno ha acquistato una polizza assicurativa, non c’è garanzia che presenterà mai un sinistro. Ciò porta ad un’elevata concentrazione di zeri nel target.
  • Se qualcuno presenta un sinistro, le dimensioni di quel sinistro potrebbero essere grandi o piccole. Ciò porta ad una grande varianza nella variabile target.

Di default, RandomizedSearchCV, GridSearchCV e cross_val_scorer utilizzano la metrica di scoring predefinita associata al classificatore o regressore passato ad essi. Per molti regressori ampiamente utilizzati, le metriche tradizionali come R² e RMSE sono i punteggi predefiniti. Tuttavia, l’utilizzo di queste metriche per prendere decisioni riguardo all’ottimizzazione dei parametri o valutare le prestazioni del modello per i dati assicurativi spesso porta ad decisioni e risultati errati.

Di conseguenza, quando si lavora con dati assicurativi è necessario assicurarsi di passare una funzione di scoring appropriata a questi strumenti per impostare correttamente i parametri del modello e valutare le prestazioni del modello. In generale, ogni volta che si utilizzano questi strumenti si dovrebbe assicurarsi che la funzione di scoring…