CommencerCommencer gratuitement

Réseaux de neurones à plusieurs couches

Dans cet exercice, vous allez écrire le code de propagation avant pour un réseau de neurones avec 2 couches cachées. Chaque couche cachée comporte deux nœuds. Les données d’entrée ont été préchargées sous le nom input_data. Les nœuds de la première couche cachée s’appellent node_0_0 et node_0_1. Leurs poids ont été préchargés en tant que weights['node_0_0'] et weights['node_0_1'] respectivement.

Les nœuds de la deuxième couche cachée s’appellent node_1_0 et node_1_1. Leurs poids ont été préchargés en tant que weights['node_1_0'] et weights['node_1_1'] respectivement.

Nous créons ensuite une sortie de modèle à partir des nœuds cachés en utilisant des poids préchargés sous weights['output'].

Ch1Ex10

Cet exercice fait partie du cours

Introduction au Deep Learning en Python

Afficher le cours

Instructions

  • Calculez node_0_0_input à l’aide de ses poids weights['node_0_0'] et des input_data fournies. Appliquez ensuite la fonction relu() pour obtenir node_0_0_output.
  • Faites de même pour node_0_1_input afin d’obtenir node_0_1_output.
  • Calculez node_1_0_input à l’aide de ses poids weights['node_1_0'] et des sorties de la première couche cachée : hidden_0_outputs. Appliquez ensuite la fonction relu() pour obtenir node_1_0_output.
  • Faites de même pour node_1_1_input afin d’obtenir node_1_1_output.
  • Calculez model_output à l’aide de ses poids weights['output'] et du tableau des sorties de la deuxième couche cachée hidden_1_outputs. N’appliquez pas la fonction relu() à cette sortie.

Exercice interactif pratique

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

def predict_with_network(input_data):
    # Calculate node 0 in the first hidden layer
    node_0_0_input = (____ * ____).sum()
    node_0_0_output = relu(____)

    # Calculate node 1 in the first hidden layer
    node_0_1_input = ____
    node_0_1_output = ____

    # Put node values into array: hidden_0_outputs
    hidden_0_outputs = np.array([node_0_0_output, node_0_1_output])
    
    # Calculate node 0 in the second hidden layer
    node_1_0_input = ____
    node_1_0_output = ____

    # Calculate node 1 in the second hidden layer
    node_1_1_input = ____
    node_1_1_output = ____

    # Put node values into array: hidden_1_outputs
    hidden_1_outputs = np.array([node_1_0_output, node_1_1_output])

    # Calculate model output: model_output
    model_output = ____
    
    # Return model_output
    return(model_output)

output = predict_with_network(input_data)
print(output)
Modifier et exécuter le code