Twój pierwszy model RNN
W tym ćwiczeniu wykorzystasz moduły Keras, aby zbudować swój pierwszy model RNN i użyć go do klasyfikacji sentymentu w recenzjach filmowych.
Ten pierwszy model ma jedną warstwę rekurencyjną z podstawową komórką RNN: SimpleRNN, oraz warstwę wyjściową z dwiema możliwymi wartościami: 0 oznaczającą sentyment negatywny i 1 oznaczającą sentyment pozytywny.
Skorzystasz ze zbioru danych IMDB dostępnego w keras.datasets. Model został już wcześniej wytrenowany, a jego wagi zapisano w pliku model_weights.h5. Zbudujesz architekturę modelu i użyjesz wczytanych zmiennych x_test oraz y_test, aby sprawdzić jego wydajność.
To ćwiczenie jest częścią kursu
Rekurencyjne sieci neuronowe (RNN) do modelowania języka w Keras
Instrukcje do ćwiczenia
- Dodaj komórkę
SimpleRNNze128jednostkami. - Dodaj warstwę
Densez jedną jednostką do klasyfikacji sentymentu. - Użyj odpowiedniej funkcji straty dla klasyfikacji binarnej.
- Oceń model na wczytanym wcześniej zbiorze walidacyjnym:
(x_test, y_test).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Build model
model = Sequential()
model.add(____(units=____, input_shape=(None, 1)))
model.add(Dense(____, activation='sigmoid'))
model.compile(loss='____',
optimizer='adam',
metrics=['accuracy'])
# Load pre-trained weights
model.load_weights('model_weights.h5')
# Method '.evaluate()' shows the loss and accuracy
loss, acc = model.evaluate(____, ____, verbose=0)
print("Loss: {0} \nAccuracy: {1}".format(loss, acc))