Farklı maksimum derinlikleri dene
Her zaman Machine Learning modellerimizi mümkün olan en iyi tahminleri yapacak şekilde optimize etmek isteriz. Bunu, modellerimizin ayarları olan hiperparametreleri ayarlayarak yapabiliriz. Bunların neden faydalı olduğunu ilerleyen bölümlerde daha ayrıntılı göreceğiz; şimdilik, tahminlerimizi olabildiğince iyi hale getirmek için çevirebileceğimiz düğmeler gibi düşünebilirsin.
Standart decision tree modellerinde muhtemelen en önemli hiperparametre max_depth'tür. Bu, bir karar ağacındaki bölünme sayısını sınırlar. Test kümesindeki modelimizin R\(^2\) puanına göre en iyi max_depth değerini bulalım; bunu karar ağacı modellerimizin score() yöntemiyle elde edebiliriz.
Bu egzersiz, kursun bir parçasıdır
Python ile Finans için Machine Learning
Egzersiz talimatları
- Karar ağacı modelimizde
max_depthparametresi olarak kullanılmak üzere 3, 5 ve 10 değerlerini döngüyle gez. - Her döngü adımında DecisionTreeRegressor içindeki
max_depthparametresinid'ye eşitle. - Modelin
train_featuresvetrain_targetsüzerindeki skorunu yazdır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Loop through a few different max depths and check the performance
for d in [____]:
# Create the tree and fit it
decision_tree = DecisionTreeRegressor(____)
decision_tree.fit(train_features, train_targets)
# Print out the scores on train and test
print('max_depth=', str(d))
print(decision_tree.score(____))
print(decision_tree.score(test_features, test_targets), '\n')