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

Vytvoření modelu RNN pro generování textu

V PyBooks máš za úkol vyvinout algoritmus pro generování textu. Projekt se zaměřuje na automatické doplňování názvů knih. Jako první krok se rozhodneš experimentovat s rekurentní neuronovou sítí (RNN) – díky tomu pochopíš, jak RNN funguje, než přejdeš ke složitějším modelům.

K dispozici máš následující importy: torch, torch.nn jako nn.

Proměnná data je inicializována úryvkem z knihy Alenka v říši divů od Lewise Carrolla.

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

Deep Learning for Text with PyTorch

Zobrazit kurz

Pokyny k cvičení

  • Do třídy RNNmodel přidej vrstvu RNN a lineární vrstvu.
  • Vytvoř instanci modelu RNN se vstupní velikostí odpovídající délce chars, skrytou vrstvou o velikosti 16 a výstupní velikostí odpovídající délce chars.

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

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

# Include an RNN layer and linear layer in RNNmodel class
class RNNmodel(nn.Module):
    def __init__(self, input_size, hidden_size, output_size):
        super(RNNmodel, self).__init__()
        self.hidden_size = hidden_size
        self.rnn = nn.____(input_size, hidden_size, batch_first=True)
        self.fc = nn.____(hidden_size, output_size)

    def forward(self, x):
      h0 = torch.zeros(1, x.size(0), self.hidden_size)
      out, _ = self.rnn(x, h0)  
      out = self.fc(out[:, -1, :])  
      return out

# Instantiate the RNN model
model = RNNmodel(____, ____, ____)
Upravit a spustit kód