Část 2: Pochopení modelů GRU
Teď se podíváš na to, jak pomocí Keras modelů přijímat dávky vstupů libovolné velikosti. Tato schopnost je důležitá z mnoha důvodů. Umožňuje ti například definovat jeden Keras model a během trénování experimentovat s různými velikostmi dávek, aniž bys musel/a cokoli v modelu měnit.
Pro toto cvičení jsou keras a numpy (jako np) již naimportovány.
Toto cvičení je součástí kurzu
Machine Translation with Keras
Pokyny k cvičení
- Definuj vstupní vrstvu, která přijímá dávky dat libovolné velikosti s délkou sekvence 3 a velikostí vstupu 4.
- Definuj vrstvu GRU s 10 skrytými jednotkami, která zpracuje předchozí vstup a vytvoří výstup.
- Definuj model s názvem
model, který přijímá vstupní vrstvu jako vstup a jako výstup vrací výstup vrstvy GRU. Nezapomeň, že k definování modelu můžeš použít syntaxikeras.models.Model(<argument>=<value>). - Předpověz výstup modelu pro
x1ix2.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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)