Classification des articles d'actualité
Dans cet exercice, vous allez créer un modèle de classification multi-classes.
L'ensemble de données est déjà chargé dans l'environnement sous le nom news_novel
. De plus, tout le prétraitement des données d'entraînement est déjà effectué et l'tokenizer
est également disponible dans l'environnement.
Un modèle RNN a été pré-entraîné avec l'architecture suivante : utilisation de la couche « Embedding
», d'une couche « LSTM
» et de la couche de sortie « Dense
» prévoyant trois classes : « sci.space
», « alt.atheism
» et « soc.religion.christian
». Les poids de ce modèle entraîné sont disponibles dans le fichier classify_news_weights.h5
.
Vous pré-traiterez les nouvelles données et les évaluerez sur un nouvel ensemble de données news_novel
.
Cet exercice fait partie du cours
Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Veuillez transformer les données présentes sur
news_novel.data
à l'aide du fichiertokenizer
téléchargé. - Remplissez les séquences d'index numériques obtenues.
- Transformez les étiquettes présentes sur
news_novel.target
en une représentation one-hot. - Évaluez le modèle à l'aide de la méthode «
.evaluate()
» et affichez la perte et la précision obtenues.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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(____, ____))