Kom igångKom igång gratis

Neurala nätverk med flera lager

I den här övningen skriver du kod för framåtpropagering i ett neuralt nätverk med 2 dolda lager. Varje dolt lager har två noder. Indata är förinläst som input_data. Noderna i det första dolda lagret heter node_0_0 och node_0_1. Deras vikter är förinlästa som weights['node_0_0'] respektive weights['node_0_1'].

Noderna i det andra dolda lagret heter node_1_0 och node_1_1. Deras vikter är förinlästa som weights['node_1_0'] respektive weights['node_1_1'].

Sedan skapar vi ett modellutdatavärde från de dolda noderna med vikter förinlästa som weights['output'].

Ch1Ex10

Den här övningen är en del av kursen

Introduktion till djupinlärning i Python

Visa kurs

Övningsinstruktioner

  • Beräkna node_0_0_input med hjälp av vikterna weights['node_0_0'] och den givna input_data. Applicera sedan funktionen relu() för att få node_0_0_output.
  • Gör samma sak för node_0_1_input för att få node_0_1_output.
  • Beräkna node_1_0_input med hjälp av vikterna weights['node_1_0'] och utdata från det första dolda lagret – hidden_0_outputs. Applicera sedan funktionen relu() för att få node_1_0_output.
  • Gör samma sak för node_1_1_input för att få node_1_1_output.
  • Beräkna model_output med hjälp av vikterna weights['output'] och arrayen hidden_1_outputs med utdata från det andra dolda lagret. Applicera inte funktionen relu() på detta utdatavärde.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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)
Redigera och kör kod