Aplicar la red a muchas observaciones/filas de datos
Ahora definirás una función llamada predict_with_network()
que generará predicciones para múltiples observaciones de datos, que se cargan previamente como input_data
. Como antes, weights
también está precargado. Además, se ha precargado la función relu()
que definiste en el ejercicio anterior.
Este ejercicio forma parte del curso
Introducción al Aprendizaje Profundo en Python
Instrucciones de ejercicio
- Define una función llamada
predict_with_network()
que acepte dos argumentos -input_data_row
yweights
- y devuelva como salida una predicción de la red. - Calcula los valores de entrada y salida de cada nodo, almacenándolos como:
node_0_input
,node_0_output
,node_1_input
, ynode_1_output
.- Para calcular el valor de entrada de un nodo, multiplica las matrices correspondientes y calcula su suma.
- Para calcular el valor de salida de un nodo, aplica la función
relu()
al valor de entrada del nodo.
- Calcula la salida del modelo calculando
input_to_final_layer
ymodel_output
del mismo modo que calculaste los valores de entrada y salida de los nodos. - Utiliza un bucle
for
para iterar sobreinput_data
:- Utiliza tu
predict_with_network()
para generar predicciones para cada fila delinput_data
-input_data_row
. Añade cada predicción aresults
.
- Utiliza tu
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Define predict_with_network()
def predict_with_network(input_data_row, weights):
# Calculate node 0 value
node_0_input = ____
node_0_output = ____
# Calculate node 1 value
node_1_input = ____
node_1_output = ____
# Put node values into array: hidden_layer_outputs
hidden_layer_outputs = np.array([node_0_output, node_1_output])
# Calculate model output
input_to_final_layer = ____
model_output = ____
# Return model output
return(model_output)
# Create empty list to store prediction results
results = []
for input_data_row in input_data:
# Append prediction to results
results.append(____)
# Print results
print(results)