FeatureElimination¶
- class elimination.FeatureElimination(db, target_col, model, grid, feat_to_check=None, sample_col=None, sample_train_value=None, algo_type='auto', cv_funct=<class 'sklearn.model_selection._search.RandomizedSearchCV'>, cv_scoring='auto', n_iter=20, manage_groups=False, groups=None, cv_type=StratifiedKFold(n_splits=5, random_state=42, shuffle=True), use_ohe=False, step_size=0.1, min_n_feat_step=5, final_n_feature=1, verbose=True, write_final=False, write_substep=False, dim_cat_threshold=10)¶
Classe utilizzata per implementare tecniche di eliminazione delle feature.
Questa classe orchestra il processo di Recursive Feature Elimination (RFE) utilizzando i valori SHAP come metrica di importanza delle feature. Gestisce la preparazione dei dati, la cross-validation, l’ottimizzazione degli iperparametri (opzionale), l’applicazione di OHE (opzionale) e la selezione finale delle feature basata su diverse regole.
La classe applica un meccanismo di Feature Selection in-training, ovvero un modello viene addestrato in modo iterativo e ad ogni iterazione viene calcolato l’impatto che le feature hanno sulle predizioni del modello, quindi vengono tolte le feature che hanno un impatto minore finchè non vi è una descrescita critica sulle performance del modello.
Methods
Inizializza l'istanza di FeatureElimination.
Genera un'analisi esplorativa dei dati (EDA) di base.
Estrae la lista finale delle feature selezionate in base a una regola specificata.
Restituisce il DataFrame originale contenente solo le feature inizialmente considerate.
Restituisce il DataFrame contenente solo le feature finali selezionate.
Restituisce il DataFrame originale senza le feature eliminate.
Restituisce il valore di uno o più attributi della classe.
Esegue il processo SHAP RFE e genera il report delle performance per ogni iterazione.
Genera un grafico delle performance (train e validation score) rispetto al numero di feature.
Imposta il valore di uno o più attributi della classe.