Del 2: Förstå GRU-modeller
Nu ska du se hur du kan använda Keras-modeller för att acceptera batchar av godtycklig storlek. Det är viktigt av flera anledningar – till exempel kan du definiera en enda Keras-modell och experimentera med olika batchstorlekar under träningen, utan att behöva ändra något i själva modellen.
I den här övningen har keras och numpy (som np) redan importerats.
Den här övningen är en del av kursen
Maskinöversättning med Keras
Övningsinstruktioner
- Definiera ett indatalager som accepterar en godtyckligt stor batch av data med sekvensläng 3 och indatastorlek 4.
- Definiera ett GRU-lager med 10 dolda enheter som tar emot föregående indata och producerar ett utdata.
- Definiera en modell med namnet
modelsom tar indatalagret som indata och producerar utdata från GRU-lagret. Kom ihåg att du kan använda syntaxenkeras.models.Model(<argument>=<värde>)för att definiera en modell. - Prediktera modellens utdata för både
x1ochx2.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)