Класифікація новинних статей
У цій вправі ви створите модель багатокласової класифікації.
Набір даних уже завантажено в середовище як news_novel. Також весь попередній обробіток тренувальних даних уже виконано, і tokenizer теж доступний у середовищі.
RNN-модель була попередньо натренована з такою архітектурою: шар Embedding, один шар LSTM і вихідний шар Dense, що передбачає три класи: sci.space, alt.atheism та soc.religion.christian. Ваги цієї натренованої моделі доступні у файлі classify_news_weights.h5.
Ви виконаєте попередню обробку нових даних і оціните модель на новому наборі news_novel.
Ця вправа є частиною курсу
Recurrent Neural Networks (RNNs) для моделювання мови з Keras
Інструкції до вправи
- Перетворіть дані з
news_novel.data, використовуючи завантаженийtokenizer. - Доповніть (pad) отримані послідовності числових індексів до однакової довжини.
- Перетворіть мітки з
news_novel.targetна one-hot-представлення. - Оцініть модель методом
.evaluate()і виведіть отримані значення втрат (loss) та точності (accuracy).
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Change text for numerical ids and pad
X_novel = tokenizer.texts_to_sequences(____)
X_novel = pad_sequences(____, maxlen=400)
# One-hot encode the labels
Y_novel = to_categorical(____)
# Load the model pre-trained weights
model.load_weights('classify_news_weights.h5')
# Evaluate the model on the new dataset
loss, acc = model.____(X_novel, Y_novel, batch_size=64)
# Print the loss and accuracy obtained
print("Loss:\t{0}\nAccuracy:\t{1}".format(____, ____))