Inizia subitoInizia gratis

Parte 2: comprendere i modelli GRU

Ora vedrai come usare i modelli Keras per accettare batch di input di dimensioni arbitrarie. La capacità di accettare batch di dimensioni arbitrarie è importante per molti motivi. Ad esempio, ti permette di definire un unico modello Keras ed esplorare diverse dimensioni del batch durante l’addestramento del modello, senza dover modificare nulla nel modello.

Per questo esercizio, keras e numpy (come np) sono già stati importati.

Questo esercizio fa parte del corso

Traduzione automatica con Keras

Visualizza corso

Istruzioni dell'esercizio

  • Definisci un livello di input che accetti un batch di dimensioni arbitrarie con lunghezza di sequenza 3 e dimensione dell’input 4.
  • Definisci un livello GRU con 10 unità nascoste che consumi l’input precedente e produca un output.
  • Definisci un Model chiamato model che prenda il livello di input come input e produca come output l’uscita del livello GRU. Ricorda che puoi usare la sintassi keras.models.Model(<argument>=<value>) per definire un modello.
  • Predici l’output del modello sia per x1 sia per x2.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

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