Tworzenie modelu generowania tekstu
W tym ćwiczeniu zdefiniujesz model generowania tekstu za pomocą Keras.
Zmienne n_vocab zawierająca rozmiar słownika oraz input_shape zawierająca kształt danych treningowych są już załadowane w środowisku. Wagi wstępnie wytrenowanego modelu są dostępne w pliku model_weights.h5. Model był trenowany przez 40 epok na danych treningowych. Przypomnij sobie, że aby wytrenować model w Keras, wystarczy użyć metody .fit() na danych treningowych (X, y) z parametrem epochs. Na przykład:
model.fit(X_train, y_train, epochs=40)
To ćwiczenie jest częścią kursu
Rekurencyjne sieci neuronowe (RNN) do modelowania języka w Keras
Instrukcje do ćwiczenia
- Dodaj jedną warstwę
LSTMzwracającą sekwencje. - Dodaj jedną warstwę
LSTMniezwracającą sekwencji. - Dodaj warstwę wyjściową z
n_vocabjednostkami. - Wyświetl podsumowanie modelu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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.____