BaşlayınÜcretsiz Başlayın

RandomizedSearchCV ile hiperparametre ayarlama

Gördüğün gibi, özellikle büyük bir hiperparametre uzayında arama yapıyorsan GridSearchCV hesaplama açısından pahalı olabilir. Bu durumda, belirli olasılık dağılımlarından sabit sayıda hiperparametre ayarı deneyen RandomizedSearchCV kullanabilirsin.

diabetes_df veri kümesinden eğitim ve test setleri hedef değişkeni "diabetes" olacak şekilde X_train, X_test, y_train ve y_test olarak senin için önceden yüklendi. Bir lojistik regresyon modeli logreg olarak ve bir KFold değişkeni de kf olarak oluşturulup kaydedildi.

Bir hiperparametre aralığı tanımlayacak ve sklearn.model_selection içinden içe aktarılmış olan RandomizedSearchCV ile bu seçenekler arasından en iyi hiperparametreleri arayacaksın.

Bu egzersiz

scikit-learn ile Supervised Learning

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • params sözlüğünü oluştur: penalty için "l1" ve "l2" değerlerini ekle, C için 0.1 ile 1.0 arasında 50 adet float değerden oluşan bir aralık ayarla ve class_weight için "balanced" ya da 0:0.8, 1:0.2 içeren bir sözlük ver.
  • Modeli ve parametreleri geçirerek ve cv değerini kf olarak ayarlayarak Randomized Search CV nesnesini oluştur.
  • logreg_cv'yi eğitim verilerine fit et.
  • Modelin en iyi hiperparametrelerini ve doğruluk skorunu yazdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Create the parameter space
params = {"penalty": ["____", "____"],
         "tol": np.linspace(0.0001, 1.0, 50),
         "C": np.linspace(____, ____, ____),
         "class_weight": ["____", {0:____, 1:____}]}

# Instantiate the RandomizedSearchCV object
logreg_cv = ____(____, ____, cv=____)

# Fit the data to the model
logreg_cv.____(____, ____)

# Print the tuned parameters and score
print("Tuned Logistic Regression Parameters: {}".format(____.____))
print("Tuned Logistic Regression Best Accuracy Score: {}".format(____.____))
Kodu Düzenle ve Çalıştır