ComenzarEmpieza gratis

2.ª parte: Comprensión de los modelos GRU

Ahora verás cómo puedes utilizar los modelos Keras para aceptar lotes de entradas de tamaño arbitrario. La capacidad de aceptar lotes de tamaño arbitrario es importante por muchas razones. Por ejemplo, esto te permite definir un único modelo Keras y experimentar con diferentes tamaños de lotes durante la fase de entrenamiento del modelo, sin tener que cambiar nada en el modelo.

Para este ejercicio, ya se han importado keras y numpy (como np).

Este ejercicio forma parte del curso

Traducción automática con Keras

Ver curso

Instrucciones del ejercicio

  • Define una capa de entrada que acepte un lote de datos de tamaño arbitrario con una longitud de secuencia de 3 y un tamaño de entrada de 4.
  • Define una capa GRU con 10 unidades ocultas que consume la entrada anterior y produce una salida.
  • Define un modelo llamado « model » que toma la capa de entrada como entrada y produce la salida de la capa GRU como salida. Recuerda que puedes utilizar la sintaxis keras.models.Model(<argument>=<value>) para definir un modelo.
  • Predice el resultado del modelo tanto para x1 como para x2.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Define an input layer
inp = keras.layers.____(____=(____))
# Define a GRU layer that takes in the input
gru_out = keras.layers.____(____)(____)
# Define a model that outputs the GRU output
____ = keras.models.____(inputs=____, outputs=____)

x1 = np.random.normal(size=(2,3,4))
x2 = np.random.normal(size=(5,3,4))

# Get the output of the model and print the result
y1 = ____.____(____)
y2 = ____.____(____)
print("shape (y1) = ", y1.shape, " shape (y2) = ", y2.shape)
Editar y ejecutar código