Začněte nyníZačněte zdarma

Sestav CNN model pro text

PyBooks úspěšně sestavil engine pro doporučování knih. Dalším úkolem je implementovat model pro analýzu sentimentu, který pomůže porozumět uživatelským recenzím a získat přehled o preferencích čtenářů.

K klasifikaci textových dat (recenzí knih) podle sentimentu použiješ model konvoluční neuronové sítě (CNN).

torch, torch.nn jako nn a torch.nn.functional jako F jsou již načteny.

Toto cvičení je součástí kurzu

Deep Learning for Text with PyTorch

Zobrazit kurz

Pokyny k cvičení

  • Inicializuj embedding vrstvu v metodě __init__().
  • V metodě forward() aplikuj konvoluční vrstvu self.conv na embedded text.
  • V metodě forward() aplikuj na tuto vrstvu aktivační funkci ReLU.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

class TextClassificationCNN(nn.Module):
    def __init__(self, vocab_size, embed_dim):
        super(TextClassificationCNN, self).__init__()
        # Initialize the embedding layer 
        self.embedding = ____.____(vocab_size, embed_dim)
        self.conv = nn.Conv1d(embed_dim, embed_dim, kernel_size=3, stride=1, padding=1)
        self.fc = nn.Linear(embed_dim, 2)
    def forward(self, text):
        embedded = self.embedding(text).permute(0, 2, 1)
        # Pass the embedded text through the convolutional layer and apply a ReLU
        conved = ____.____(self.conv(____))
        conved = conved.mean(dim=2) 
        return self.fc(conved)
Upravit a spustit kód