Klasifikace zpravodajských článků
V tomto cvičení vytvoříš model pro multi-class klasifikaci.
Dataset je v prostředí již načtený jako news_novel. Veškeré předzpracování trénovacích dat je hotové a v prostředí je dostupný také tokenizer.
Model RNN byl předtrénován s následující architekturou: vrstva Embedding, jedna vrstva LSTM a výstupní vrstva Dense očekávající tři třídy: sci.space, alt.atheism a soc.religion.christian. Váhy tohoto natrénovaného modelu jsou k dispozici v souboru classify_news_weights.h5.
Tvým úkolem je předzpracovat nová data a vyhodnotit model na datasetu news_novel.
Toto cvičení je součástí kurzu
Rekurentní neuronové sítě (RNN) pro jazykové modelování s Keras
Pokyny k cvičení
- Transformuj data z
news_novel.datapomocí načtenéhotokenizeru. - Doplň získané sekvence numerických indexů paddingem.
- Převeď štítky z
news_novel.targetdo reprezentace one-hot. - Vyhodnoť model pomocí metody
.evaluate()a vypiš výslednou ztrátu a přesnost.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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(____, ____))