Hiperparametrelere Genel Bakış

Python'da Hiperparametre Ayarlama

Alex Scriven

Data Scientist

Hiperparametre nedir

Hiperparametreler:

  • Modellemeden önce sizin belirlediğiniz öğeler (eski radyodaki düğmeler gibi)
    • Hiperparametrelerinizi 'ayarlar'sınız!
  • Algoritma bunları öğrenmez

Düğmeli eski radyo

Python'da Hiperparametre Ayarlama

Rastgele Ormanda Hiperparametreler

Basit bir rastgele orman tahminleyicisi oluşturup yazdırın:

rf_clf = RandomForestClassifier()
print(rf_clf)

RandomForestClassifier(n_estimators='warn', criterion='gini', max_depth=None, max_features='auto', max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, min_samples_leaf=1, min_samples_split=2, min_weight_fraction_leaf=0.0, n_jobs=None, oob_score=False, random_state=None, verbose=0,bootstrap=True, class_weight=None, warm_start=False)

Daha fazla bilgi: http://scikit-learn.org

Python'da Hiperparametre Ayarlama

Tek bir hiperparametre

n_estimators parametresini ele alalım.

Veri türü ve varsayılan değer:

n_estimators : integer, optional (default=10)

Tanım:

Ormandaki ağaç sayısı.

Python'da Hiperparametre Ayarlama

Hiperparametreleri ayarlama

Bazı hiperparametreleri oluştururken ayarlayın:

rf_clf = RandomForestClassifier(n_estimators=100, criterion='entropy')
print(rf_clf)
RandomForestClassifier(n_estimators=100, criterion='entropy',
            max_depth=None, max_features='auto', max_leaf_nodes=None,
            min_impurity_decrease=0.0, min_impurity_split=None,
            min_samples_leaf=1, min_samples_split=2,
            min_weight_fraction_leaf=0.0, n_jobs=None,
            oob_score=False, random_state=None, verbose=0,bootstrap=True,
            class_weight=None, warm_start=False)
Python'da Hiperparametre Ayarlama

Lojistik Regresyonda Hiperparametreler

Lojistik Regresyonun hiperparametrelerini bulun:

log_reg_clf = LogisticRegression()

print(log_reg_clf) LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True, intercept_scaling=1, max_iter=100, multi_class='warn', n_jobs=None, penalty='l2', random_state=None, solver='warn', tol=0.0001, verbose=0, warm_start=False)

Bu algoritmada ayarlanacak hiperparametre daha az!

Python'da Hiperparametre Ayarlama

Hiperparametre Önemi

 

Bazı hiperparametreler diğerlerinden daha önemlidir.

Bazıları model performansına yardımcı olmaz:

Rastgele orman sınıflandırıcısı için:

  • n_jobs
  • random_state
  • verbose

Tüm hiperparametreler 'eğitilmeye' uygun değildir

Python'da Hiperparametre Ayarlama

Rastgele Orman: Önemli Hiperparametreler

 

Bazı önemli hiperparametreler:

  • n_estimators (yüksek değer)
  • max_features (farklı değerler deneyin)
  • max_depth & min_sample_leaf (aşırı öğrenme için kritik)
  • (belki) criterion

Unutmayın: bu sadece bir rehberdir

Python'da Hiperparametre Ayarlama

Hangi hiperparametreler önemli nasıl bulunur?

 

Bunu öğrenmek için bazı kaynaklar:

  • Akademik makaleler
  • Güvenilir bloglar ve eğitimler (DataCamp gibi!)
  • Scikit-learn modül dokümantasyonu
  • Deneyim
Python'da Hiperparametre Ayarlama

Hadi pratik yapalım!

Python'da Hiperparametre Ayarlama

Preparing Video For Download...