Partea 2: Înțelegerea modelelor GRU
Vei vedea acum cum poți folosi modelele Keras pentru a accepta loturi de intrări de dimensiuni arbitrare. Această capacitate este importantă din mai multe motive. De exemplu, îți permite să definești un singur model Keras și să experimentezi cu diferite dimensiuni de lot în etapa de antrenare, fără a fi nevoie să modifici nimic în model.
Pentru acest exercițiu, keras și numpy (ca np) au fost deja importate.
Acest exercițiu face parte din cursul
Traducere automată cu Keras
Instrucțiuni pentru exercițiu
- Definește un strat de intrare care acceptă un lot de dimensiune arbitrară, cu lungimea secvenței 3 și dimensiunea intrării 4.
- Definește un strat GRU cu 10 unități ascunse care procesează intrarea anterioară și produce o ieșire.
- Definește un model numit
model, care primește stratul de intrare ca intrare și produce ieșirea stratului GRU ca rezultat. Reține că poți folosi sintaxakeras.models.Model(<argument>=<valoare>)pentru a defini un model. - Obține predicțiile modelului atât pentru
x1, cât și pentrux2.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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)