XGBoost ile rastgele arama
Çoğu zaman GridSearchCV oldukça zaman alıcı olabilir; bu yüzden pratikte, bu egzersizde yapacağın gibi, onun yerine RandomizedSearchCV kullanmak isteyebilirsin. Güzel haber şu ki RandomizedSearchCV kullanmak için GridSearchCV kodunda sadece birkaç küçük değişiklik yapman yeterli. Temel fark, param_grid yerine param_distributions parametresini belirtmen gerekmesidir.
Bu egzersiz
XGBoost ile Aşırı Gradyan Artırma
kursunun bir parçasıdırEgzersiz talimatları
'n_estimators'için tek bir değer (25) içeren bir liste ve'max_depth'için2ile11arasındaki değerleri içeren bir liste barındırangbm_param_gridadlı bir parametre ızgarası oluştur - bunun içinrange(2, 12)kullan.param_distributionsolarak parametre ızgarasını,estimatorolarakXGBRegressor'ı,scoringolarak"neg_mean_squared_error"'ı,n_iterolarak5'i vecvolarak4'ü alanrandomized_mseadlı birRandomizedSearchCVnesnesi oluştur. Ayrıca çıktıyı daha iyi anlayabilmek içinverbose=1belirt.RandomizedSearchCVnesnesiniXveyüzerine fit et.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Create the parameter grid: gbm_param_grid
gbm_param_grid = {
'____': [____],
'____': ____(____, ____)
}
# Instantiate the regressor: gbm
gbm = xgb.XGBRegressor(n_estimators=10)
# Perform random search: grid_mse
randomized_mse = ____
# Fit randomized_mse to the data
____
# Print the best parameters and lowest RMSE
print("Best parameters found: ", randomized_mse.best_params_)
print("Lowest RMSE found: ", np.sqrt(np.abs(randomized_mse.best_score_)))