Eseguire più aggiornamenti dei pesi
Ora farai più aggiornamenti per migliorare sensibilmente i pesi del tuo modello e vedere come le previsioni migliorano a ogni passo.
Per mantenere il codice pulito, è già caricata una funzione get_slope() che accetta input_data, target e weights come argomenti. C'è anche una funzione get_mse() che prende gli stessi argomenti. input_data, target e weights sono già stati caricati.
Questa rete non ha livelli nascosti e passa direttamente dall'input (con 3 nodi) a un nodo di output. Nota che weights è un singolo array.
Abbiamo anche pre-caricato matplotlib.pyplot, e la cronologia degli errori verrà tracciata dopo che avrai eseguito i passaggi di discesa del gradiente.
Questo esercizio fa parte del corso
Introduzione al Deep Learning in Python
Istruzioni dell'esercizio
- Usando un ciclo
forper aggiornare iterativamente i pesi:- Calcola la pendenza usando la funzione
get_slope(). - Aggiorna i pesi usando un tasso di apprendimento di
0.01. - Calcola l'errore quadratico medio (
mse) con i pesi aggiornati usando la funzioneget_mse(). - Aggiungi
mseamse_hist.
- Calcola la pendenza usando la funzione
- Premi "Invia risposta" per visualizzare
mse_hist. Che andamento noti?
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
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()