Clasificarea articolelor de știri
În acest exercițiu vei crea un model de clasificare multi-clasă.
Setul de date este deja încărcat în mediu ca news_novel. De asemenea, toată preprocesarea datelor de antrenament este deja realizată, iar tokenizer este disponibil în mediu.
Un model RNN a fost pre-antrenat cu următoarea arhitectură: un strat Embedding, un strat LSTM și un strat de ieșire Dense care așteaptă trei clase: sci.space, alt.atheism și soc.religion.christian. Ponderile acestui model antrenat sunt disponibile în fișierul classify_news_weights.h5.
Vei preprocesa datele noi și vei evalua modelul pe setul de date news_novel.
Acest exercițiu face parte din cursul
Rețele Neuronale Recurente (RNN) pentru Modelare a Limbajului cu Keras
Instrucțiuni pentru exercițiu
- Transformă datele din
news_novel.datafolosindtokenizer-ul încărcat. - Aplică padding secvențelor de indecși numerici obținute.
- Transformă etichetele din
news_novel.targetîntr-o reprezentare one-hot. - Evaluează modelul folosind metoda
.evaluate()și afișează valoarea pierderii și acuratețea obținute.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____, ____))