Inizia subitoInizia gratis

Reti neurali multistrato

In questo esercizio scriverai il codice per eseguire la forward propagation per una rete neurale con 2 livelli nascosti. Ciascun livello nascosto ha due nodi. I dati di input sono stati precaricati come input_data. I nodi nel primo livello nascosto si chiamano node_0_0 e node_0_1. I loro pesi sono precaricati rispettivamente come weights['node_0_0'] e weights['node_0_1'].

I nodi nel secondo livello nascosto si chiamano node_1_0 e node_1_1. I loro pesi sono precaricati rispettivamente come weights['node_1_0'] e weights['node_1_1'].

Creiamo poi l'output del modello a partire dai nodi nascosti usando pesi precaricati come weights['output'].

Ch1Ex10

Questo esercizio fa parte del corso

Introduzione al Deep Learning in Python

Visualizza corso

Istruzioni dell'esercizio

  • Calcola node_0_0_input usando i suoi pesi weights['node_0_0'] e i input_data forniti. Poi applica la funzione relu() per ottenere node_0_0_output.
  • Fai lo stesso per node_0_1_input per ottenere node_0_1_output.
  • Calcola node_1_0_input usando i suoi pesi weights['node_1_0'] e gli output del primo livello nascosto - hidden_0_outputs. Poi applica la funzione relu() per ottenere node_1_0_output.
  • Fai lo stesso per node_1_1_input per ottenere node_1_1_output.
  • Calcola model_output usando i suoi pesi weights['output'] e l'array degli output del secondo livello nascosto hidden_1_outputs. Non applicare la funzione relu() a questo output.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

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)
Modifica ed esegui il codice