Jak zmiany wag wpływają na dokładność modelu
Teraz zmienisz wagi w prawdziwej sieci i zobaczysz, jak wpływają na dokładność modelu!
Przyjrzyj się poniższej sieci neuronowej:

Jej wagi zostały wstępnie załadowane jako weights_0. Twoim zadaniem w tym ćwiczeniu jest zaktualizowanie jednej wagi w weights_0, aby utworzyć weights_1, która daje idealne przewidywanie (w którym wartość przewidywana jest równa target_actual: 3).
Jeśli potrzebujesz, skorzystaj z kartki i długopisu, aby eksperymentować z różnymi kombinacjami. Użyj funkcji predict_with_network(), która przyjmuje tablicę danych jako pierwszy argument, a wagi jako drugi argument.
To ćwiczenie jest częścią kursu
Wprowadzenie do uczenia głębokiego w Pythonie
Instrukcje do ćwiczenia
- Utwórz słownik wag o nazwie
weights_1, w którym zmieniasz 1 wagę zweights_0(wystarczy tylko 1 zmiana wweights_0, aby uzyskać idealne przewidywanie). - Oblicz przewidywania z nowymi wagami, używając funkcji
predict_with_network()z argumentamiinput_dataiweights_1. - Oblicz błąd dla nowych wag, odejmując
target_actualodmodel_output_1. - Kliknij „Prześlij odpowiedź", aby porównać błędy!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)