Začněte nyníZačněte zdarma

Sestavení křivek učení

Pokud chceme otestovat velké množství různých hodnot jednoho hyperparametru, může být jejich zobrazení v podobě DataFrame dost nepřehledné. Dříve jsi se naučil/a šikovný trik, jak to řešit. Graf zvaný „křivka učení" dokáže přehledně ukázat, jak zvyšování nebo snižování konkrétního hyperparametru ovlivňuje výsledný výstup.

Místo testování jen několika hodnot míry učení jich otestuješ mnohem více, abys snadno viděl/a vliv tohoto hyperparametru napříč širokým rozsahem hodnot. Užitečná funkce z NumPy je np.linspace(start, end, num), která ti umožní vytvořit zadaný počet hodnot (num) rovnoměrně rozložených v intervalu (start, end).

K dispozici máš datové sady X_train, X_test, y_train a y_test.

Toto cvičení je součástí kurzu

Hyperparameter Tuning in Python

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř seznam 30 hodnot míry učení rovnoměrně rozložených mezi 0,01 a 2.
  • Vytvoř podobnou smyčku jako v předchozím cvičení, ale tentokrát ukládej pouze skóre přesnosti do seznamu.
  • Vykresli graf závislosti míry učení na skóre přesnosti.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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.____
Upravit a spustit kód