Cum afectează modificările ponderilor acuratețea
Acum vei putea modifica ponderi într-o rețea reală și vei vedea cum influențează acuratețea modelului!
Aruncă o privire la următoarea rețea neuronală:

Ponderile sale au fost preîncărcate ca weights_0. Sarcina ta în acest exercițiu este să actualizezi o singură pondere din weights_0 pentru a crea weights_1, care să genereze o predicție perfectă (în care valoarea prezisă este egală cu target_actual: 3).
Folosește hârtie și creion dacă este necesar pentru a experimenta cu diferite combinații. Vei folosi funcția predict_with_network(), care primește ca prim argument un array de date și ca al doilea argument ponderile.
Acest exercițiu face parte din cursul
Introducere în Deep Learning în Python
Instrucțiuni pentru exercițiu
- Creează un dicționar de ponderi numit
weights_1în care ai modificat 1 pondere dinweights_0(este suficientă o singură modificare înweights_0pentru a obține predicția perfectă). - Obține predicții cu noile ponderi folosind funcția
predict_with_network()cu argumenteleinput_datașiweights_1. - Calculează eroarea pentru noile ponderi scăzând
target_actualdinmodel_output_1. - Apasă „Trimite răspunsul" pentru a compara erorile!
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# The data point you will make a prediction for
input_data = np.array([0, 3])
# Sample weights
weights_0 = {'node_0': [2, 1],
'node_1': [1, 2],
'output': [1, 1]
}
# The actual target value, used to calculate the error
target_actual = 3
# Make prediction using original weights
model_output_0 = predict_with_network(input_data, weights_0)
# Calculate error: error_0
error_0 = model_output_0 - target_actual
# Create weights that cause the network to make perfect prediction (3): weights_1
weights_1 = {'node_0': [____, ____],
'node_1': [____, ____],
'output': [____, ____]
}
# Make prediction using new weights: model_output_1
model_output_1 = ____
# Calculate error: error_1
error_1 = ____ - ____
# Print error_0 and error_1
print(error_0)
print(error_1)