Testování CNN modelu pro analýzu sentimentu
Model je teď natrénovaný a PyBooks chce otestovat, jak si poradí s novými recenzemi knih.
Tvým úkolem je zjistit, zda je sentiment v recenzi pozitivní, nebo negativní.
Následující balíčky jsou již naimportované:
torch, torch.nn jako nn, torch.nn.functional jako F, torch.optim jako optim.
Instance třídy TextClassificationCNN() s argumenty vocab_size a embed_dim je také načtená a uložená jako model.
Toto cvičení je součástí kurzu
Deep Learning for Text with PyTorch
Pokyny k cvičení
- Projdi seznam
book_reviewsa převeď slova v každé recenzi na tensor. - Získej výstup modelu pro každý
input_tensor. - Najdi index nejpravděpodobnější kategorie sentimentu z
outputs.data. - Extrahuj položku
predicted_labela převeď ji na řetězec sentimentu, kde1odpovídá štítku "Positive".
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
book_reviews = [
"I love this book".split(),
"I do not like this book".split()
]
for review in book_reviews:
# Convert the review words into tensor form
input_tensor = ____.____([word_to_ix[w] for w in review], dtype=torch.long).unsqueeze(0)
# Get the model's output
outputs = model(____)
# Find the index of the most likely sentiment category
_, predicted_label = ____.____(outputs.data, 1)
# Convert the predicted label into a sentiment string
sentiment = "Positive" if ____ else "Negative"
print(f"Book Review: {' '.join(review)}")
print(f"Sentiment: {sentiment}\n")