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'].

Den här övningen är en del av kursen
Introduktion till djupinlärning i Python
Övningsinstruktioner
- Beräkna
node_0_0_inputmed hjälp av vikternaweights['node_0_0']och den givnainput_data. Applicera sedan funktionenrelu()för att fånode_0_0_output. - Gör samma sak för
node_0_1_inputför att fånode_0_1_output. - Beräkna
node_1_0_inputmed hjälp av vikternaweights['node_1_0']och utdata från det första dolda lagret –hidden_0_outputs. Applicera sedan funktionenrelu()för att fånode_1_0_output. - Gör samma sak för
node_1_1_inputför att fånode_1_1_output. - Beräkna
model_outputmed hjälp av vikternaweights['output']och arrayenhidden_1_outputsmed utdata från det andra dolda lagret. Applicera inte funktionenrelu()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)