MulaiMulai sekarang secara gratis

Membangun Kurva Pembelajaran

Jika kita ingin menguji banyak nilai berbeda untuk satu hyperparameter, akan sulit untuk melihatnya dengan mudah dalam bentuk DataFrame. Sebelumnya Anda mempelajari trik yang bagus untuk menganalisis hal ini. Grafik yang disebut 'learning curve' dapat menunjukkan dengan jelas dampak peningkatan atau penurunan suatu hyperparameter tertentu terhadap hasil akhir.

Alih-alih menguji hanya beberapa nilai untuk learning rate, Anda akan menguji banyak nilai agar mudah melihat dampak hyperparameter ini pada rentang nilai yang luas. Fungsi berguna dari NumPy adalah np.linspace(start, end, num) yang memungkinkan Anda membuat sejumlah nilai (num) yang tersebar merata dalam sebuah interval (start, end) yang Anda tentukan.

Anda akan memiliki himpunan data X_train, X_test, y_train, dan y_test.

Latihan ini adalah bagian dari kursus

Penyetelan Hyperparameter di Python

Lihat Kursus

Petunjuk latihan

  • Buat daftar 30 learning rate yang tersebar merata antara 0,01 dan 2.
  • Buat loop serupa seperti latihan sebelumnya tetapi hanya simpan skor akurasi ke dalam sebuah daftar.
  • Plot learning rate terhadap skor akurasi.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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.____
Edit dan Jalankan Kode