ПочатиПочніть безкоштовно

Embeddings підвищують продуктивність

Чи підвищує шар embedding точність моделі? Перевірмо це на тих самих даних IMDB.

Модель уже була навчена протягом 10 епох, як і попередня модель із клітиною simpleRNN. Щоб порівняти моделі, у середовищі доступний тестовий набір (X_test, y_test), а також стара модель simpleRNN_model. Точність старої моделі збережено в змінній acc_SimpleRNN.

Усі потрібні модулі та функції вже завантажені в середовище: Sequential() з keras.models, Embedding і Dense з keras.layers та SimpleRNN з keras.layers.

Ця вправа є частиною курсу

Recurrent Neural Networks (RNNs) для моделювання мови з Keras

Переглянути курс

Інструкції до вправи

  • Додайте до моделі шар embedding.
  • Обчисліть точність моделі та збережіть її в змінній acc_embeddings.
  • Виведіть точність старої та нової моделей.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create the model with embedding
model = Sequential(name="emb_model")
model.add(____(input_dim=max_vocabulary, output_dim=wordvec_dim, input_length=max_len))
model.add(SimpleRNN(units=128))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

# Load pre-trained weights
model.load_weights('embedding_model_weights.h5')

# Evaluate the models' performance (ignore the loss value)
_, ____ = model.evaluate(X_test, y_test, verbose=0)

# Print the results
print("SimpleRNN model's accuracy:\t{0}\nEmbeddings model's accuracy:\t{1}".format(acc_simpleRNN, ____))
Редагувати та запускати код