Kom igångKom igång gratis

Objektet RandomizedSearchCV

Precis som biblioteket GridSearchCV från Scikit Learn erbjuder RandomizedSearchCV många användbara funktioner för att effektivt genomföra en slumpmässig sökning. Du ska skapa ett RandomizedSearchCV-objekt med den lilla justering som krävs jämfört med GridSearchCV-objektet.

De önskade inställningarna är:

  • En Gradient Boosting Classifier-estimator med standardinställningar
  • 5-faldig korsvalidering
  • Använd accuracy för att utvärdera modellerna
  • Använd 4 kärnor för parallell bearbetning
  • Se till att den bästa modellen tränas om och att träningsresultat returneras
  • Sampla slumpmässigt 10 modeller

Hyperparametergallret ska innehålla learning_rate (150 värden mellan 0,1 och 2) och min_samples_leaf (alla heltalsvärden från och med 20 till och med 64).

Datamängderna X_train och y_train finns tillgängliga.

Den här övningen är en del av kursen

Hyperparameterjustering i Python

Visa kurs

Övningsinstruktioner

  • Skapa ett parametergaller enligt beskrivningen ovan.
  • Skapa ett RandomizedSearchCV-objekt enligt beskrivningen ovan.
  • Anpassa RandomizedSearchCV-objektet till träningsdata.
  • Skriv ut de värden som modelleringsprocessen valde för båda hyperparametrarna.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Create the parameter grid
param_grid = {'learning_rate': np.linspace(____,____,150), 'min_samples_leaf': list(range(____,65))} 

# Create a random search object
random_GBM_class = ____(
    estimator = ____,
    ____ = param_grid,
    ____ = 10,
    scoring='____', n_jobs=____, cv = ____, refit=____, return_train_score = ____)

# Fit to the training data
random_GBM_class.fit(____, ____)

# Print the values used for both hyperparameters
print(random_GBM_class.____['param_learning_rate'])
print(random_GBM_class.cv_results_['____'])
Redigera och kör kod