IniziaInizia gratis

La tua prima pipeline - di nuovo!

Tornando alla startup che si occupa di aritmie, si avvicina la review mensile e, come parte di quella, un programmatore Python esperto controllerà il tuo codice. Decidi di fare pulizia seguendo le best practice e sostituire lo script per la selezione delle caratteristiche e la classificazione con random forest con una pipeline. Stai usando un insieme di dati di training disponibile come X_train e y_train, e diversi moduli: RandomForestClassifier, SelectKBest() e f_classif() per la selezione delle caratteristiche, oltre a GridSearchCV e Pipeline.

Questo esercizio fa parte del corso

Progettare workflow di Machine Learning in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una pipeline con il selettore di caratteristiche fornito dal codice di esempio e un classificatore random forest. Dai alla prima fase il nome feature_selection.
  • Aggiungi due coppie chiave-valore in params: una per il numero di caratteristiche k nel selettore con valori 10 e 20, e una per n_estimators nella foresta con possibili valori 2 e 5.
  • Inizializza un oggetto GridSearchCV con la pipeline e la griglia di parametri fornite.
  • Adatta l'oggetto ai dati e stampa la combinazione di parametri con le prestazioni migliori.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Create pipeline with feature selector and classifier
pipe = ___([
    (___, SelectKBest(f_classif)),
    ('clf', ___(random_state=2))])

# Create a parameter grid
params = {
   'feature_selection__k':___,
    ___:[2, 5]}

# Initialize the grid search object
grid_search = ___(___, ___=params)

# Fit it to the data and print the best value combination
print(grid_search.fit(___, ___).___)
Modifica ed esegui il codice