Zacznij terazZacznij za darmo

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

Zobacz kurs

Instrukcje do ćwiczenia

  • Dodaj komórkę SimpleRNN ze 128 jednostkami.
  • Dodaj warstwę Dense z 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))
Edytuj i uruchom kod