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

Architektura Q-sítě

Jsi skoro připraven/a trénovat svého prvního agenta pro Deep Reinforcement Learning! Než se pustíš do kompletní trénovací smyčky, potřebuješ architekturu neuronové sítě, která bude řídit rozhodování agenta a jeho schopnost učit se.

Upravíš obecnou architekturu, kterou jsi definoval/a v předchozím cvičení. torch a torch.nn jsou v cvičení už naimportované.

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

Deep Reinforcement Learning v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř instanci první skryté vrstvy; jejím vstupem bude stav prostředí s dimenzí state_size.
  • Vytvoř instanci výstupní vrstvy; ta poskytuje Q-hodnoty pro každou akci s dimenzí action_size.
  • Dokonči metodu forward(); jako aktivační funkci použij torch.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 QNetwork(nn.Module):
    def __init__(self, state_size, action_size):
        super(QNetwork, self).__init__()
        # Instantiate the first hidden layer
        self.fc1 = nn.Linear(____, ____)
        self.fc2 = nn.Linear(64, 64)
        # Instantiate the output layer
        self.fc3 = nn.Linear(____, ____)
    def forward(self, state):
        # Ensure the ReLU activation function is used
        x = ____(self.fc1(torch.tensor(state)))
        x = ____(self.fc2(x))
        return self.fc3(x)
Upravit a spustit kód