CommencerCommencer gratuitement

Coder l’impact des variations de poids sur la précision

Vous allez maintenant modifier des poids dans un réseau réel et voir comment cela affecte la précision du modèle !

Examinez le réseau de neurones suivant : Ch2Ex4

Ses poids ont été préchargés sous le nom weights_0. Votre tâche dans cet exercice est de mettre à jour un seul poids dans weights_0 pour créer weights_1, de façon à obtenir une prédiction parfaite (où la valeur prédite est égale à target_actual : 3).

Utilisez papier et crayon si nécessaire pour tester différentes combinaisons. Vous allez utiliser la fonction predict_with_network(), qui prend un tableau de données comme premier argument, et les poids comme second argument.

Cet exercice fait partie du cours

Introduction au Deep Learning en Python

Afficher le cours

Instructions

  • Créez un dictionnaire de poids appelé weights_1 où vous avez modifié 1 poids par rapport à weights_0 (vous n’avez besoin d’effectuer qu’une seule modification à weights_0 pour obtenir la prédiction parfaite).
  • Obtenez des prédictions avec les nouveaux poids en utilisant la fonction predict_with_network() avec input_data et weights_1.
  • Calculez l’erreur pour les nouveaux poids en soustrayant target_actual de model_output_1.
  • Cliquez sur "Soumettre la réponse" pour voir comment les erreurs se comparent !

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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)
Modifier et exécuter le code