ПочатиПочніть безкоштовно

Тестування моделі CNN для аналізу тональності

Тепер, коли модель натреновано, PyBooks хоче перевірити її на нових відгуках про книги.

Вам потрібно визначити, чи є тональність відгуку позитивною або негативною.

Для вас імпортовано такі пакети: torch, torch.nn як nn, torch.nn.functional як F, torch.optim як optim.

Екземпляр TextClassificationCNN() з аргументами vocab_size і embed_dim також завантажено та збережено як model.

Ця вправа є частиною курсу

Глибоке навчання для тексту з PyTorch

Переглянути курс

Інструкції до вправи

  • Ітеруйтеся списком book_reviews, перетворюючи слова кожного відгуку на тензор.
  • Отримайте вихід моделі для кожного input_tensor.
  • Знайдіть індекс найімовірнішої категорії тональності з outputs.data.
  • Видобудьте та перетворіть елемент predicted_label на рядок тональності, де 1 — це мітка "Positive".

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

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")
Редагувати та запускати код