Vytvoření modelu pro generování textu
V tomto cvičení definuješ model pro generování textu pomocí Kerasu.
V prostředí jsou již načteny proměnné n_vocab obsahující velikost slovníku a input_shape obsahující tvar dat použitých při trénování. K dispozici je také soubor model_weights.h5 s váhami předtrénovaného modelu. Model byl trénován na trénovacích datech po dobu 40 epoch. Připomeň si, že pro trénování modelu v Kerasu stačí zavolat metodu .fit() na trénovacích datech (X, y) s parametrem epochs. Například:
model.fit(X_train, y_train, epochs=40)
Toto cvičení je součástí kurzu
Rekurentní neuronové sítě (RNN) pro jazykové modelování s Keras
Pokyny k cvičení
- Přidej jednu vrstvu
LSTM, která vrací sekvence. - Přidej jednu vrstvu
LSTM, která sekvence nevrací. - Přidej výstupní vrstvu s
n_vocabjednotkami. - Zobraz přehled modelu.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Instantiate the model
model = Sequential(name="LSTM model")
# Add two LSTM layers
model.add(____(64, input_shape=input_shape, dropout=0.15, recurrent_dropout=0.15, return_sequences=____, name="Input_layer"))
model.add(____(64, dropout=0.15, recurrent_dropout=0.15, return_sequences=____, name="LSTM_hidden"))
# Add the output layer
model.add(Dense(____, activation='softmax', name="Output_layer"))
# Compile and load weights
model.compile(loss='categorical_crossentropy', optimizer='adam')
model.load_weights('model_weights.h5')
# Summary
model.____