RandomizedSearchCV

Validasi Model di Python

Kasey Jones

Data Scientist

Grid search untuk hiperparameter

Saat memilih nilai dari banyak hiperparameter, opsi yang mungkin membentuk sebuah grid. Grid ini disebut ruang hiperparameter.

Validasi Model di Python

Grid search lanjutan

Manfaat:

  • Menguji semua kombinasi yang mungkin

Kekurangan:

  • Hiperparameter tambahan menaikkan waktu latih secara eksponensial
Validasi Model di Python

Metode yang lebih baik

Validasi Model di Python

Pencarian acak

from sklearn.model_selection import RandomizedSearchCV

random_search = RandomizedSearchCV()

Distribusi Parameter:

param_dist = {"max_depth": [4, 6, 8, None],
              "max_features": range(2, 11),
              "min_samples_split": range(2, 11)}
Validasi Model di Python

Parameter pencarian acak

Parameter:

  • estimator: model yang digunakan
  • param_distributions: kamus hiperparameter dan nilai yang mungkin
  • n_iter: jumlah iterasi
  • scoring: metode penilaian yang digunakan
Validasi Model di Python

Menetapkan parameter RandomizedSearchCV

param_dist = {"max_depth": [4, 6, 8, None],
              "max_features": range(2, 11),
              "min_samples_split": range(2, 11)}
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import make_scorer, mean_absolute_error

rfr = RandomForestRegressor(n_estimators=20, random_state=1111)
scorer = make_scorer(mean_absolute_error)
Validasi Model di Python

RandomizedSearchCV diimplementasikan

Mempersiapkan pencarian acak:

random_search =\
    RandomizedSearchCV(estimator=rfr,
                       param_distributions=param_dist,
                       n_iter=40,
                       cv=5)
  • Tidak dapat menyetel hiperparameter tanpa memahami validasi model
  • Validasi model memungkinkan kita membandingkan banyak model dan set parameter
Validasi Model di Python

RandomizedSearchCV diimplementasikan

Mempersiapkan pencarian acak:

random_search =\
    RandomizedSearchCV(estimator=rfr,
                       param_distributions=param_dist,
                       n_iter=40,
                       cv=5)

Selesaikan pencarian acak:

random_search.fit(X, y)
Validasi Model di Python

Mari lihat beberapa contoh!

Validasi Model di Python

Preparing Video For Download...