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

Vícenásobné aktualizace vah

Teď provedeme několik aktualizací za sebou, abys výrazně zlepšil/a váhy modelu a mohl/a sledovat, jak se s každou aktualizací zlepšují i předpovědi.

Aby byl kód přehledný, máš k dispozici předem načtenou funkci get_slope(), která přijímá argumenty input_data, target a weights. K dispozici je také funkce get_mse() se stejnými argumenty. Proměnné input_data, target a weights jsou také předem načteny.

Tato síť nemá žádné skryté vrstvy – vstup (se 3 uzly) vede přímo na výstupní uzel. Všimni si, že weights je jednoduché pole.

Předem je načten také matplotlib.pyplot – po dokončení kroků gradientního sestupu se zobrazí graf průběhu chyby.

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

Úvod do deep learningu v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Pomocí cyklu for iterativně aktualizuj váhy:
    • Vypočítej sklon pomocí funkce get_slope().
    • Aktualizuj váhy s použitím rychlosti učení 0.01.
    • Vypočítej střední kvadratickou chybu (mse) pro aktualizované váhy pomocí funkce get_mse().
    • Přidej mse do mse_hist.
  • Klikni na Submit Answer a zobraz mse_hist. Jaký trend si všimneš?

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

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

n_updates = 20
mse_hist = []

# Iterate over the number of updates
for i in range(n_updates):
    # Calculate the slope: slope
    slope = ____(____, ____, ____)
    
    # Update the weights: weights
    weights = ____ - ____ * ____
    
    # Calculate mse with new weights: mse
    mse = ____(____, ____, ____)
    
    # Append the mse to mse_hist
    ____

# Plot the mse history
plt.plot(mse_hist)
plt.xlabel('Iterations')
plt.ylabel('Mean Squared Error')
plt.show()
Upravit a spustit kód