Öğrenme Eğrileri Oluşturma
Tek bir hiperparametre için birçok farklı değeri test etmek istersek, bunu bir DataFrame içinde kolayca görmek zor olabilir. Daha önce bunu analiz etmek için güzel bir hile öğrenmiştin. 'Öğrenme eğrisi' adı verilen bir grafik, belirli bir hiperparametreyi artırmanın veya azaltmanın nihai sonuç üzerindeki etkisini güzelce gösterir.
Öğrenme oranı için yalnızca birkaç değeri test etmek yerine, bu hiperparametrenin geniş bir değer aralığındaki etkisini kolayca görmek için birçok değeri test edeceksin. NumPy'den yararlı bir işlev np.linspace(start, end, num); belirttiğin aralıkta (start, end) eşit aralıklarla dağıtılmış belirli sayıda (num) değer oluşturmanı sağlar.
X_train, X_test, y_train ve y_test veri kümeleri hazır olacak.
Bu egzersiz
Python'da Hiperparametre Ayarlama
kursunun bir parçasıdırEgzersiz talimatları
- 0.01 ile 2 arasında eşit aralıklarla dağılmış 30 öğrenme oranından oluşan bir liste oluştur.
- Son egzersize benzer bir döngü kur ama yalnızca doğruluk puanlarını bir listeye kaydet.
- Öğrenme oranlarını doğruluk puanına karşı çiz.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Set the learning rates & accuracies list
learn_rates = np.linspace(____, ____, num=____)
accuracies = []
# Create the for loop
for learn_rate in learn_rates:
# Create the model, predictions & save the accuracies as before
model = GradientBoostingClassifier(learning_rate=____)
predictions = model.fit(____, ____).predict(____)
accuracies.append(accuracy_score(y_test, ____))
# Plot results
plt.plot(____, ____)
plt.gca().set(xlabel='learning_rate', ylabel='Accuracy', title='Accuracy for different learning_rates')
plt.____