ÎncepețiÎncepe gratuit

Arhitectura rețelei Q

Ești aproape gata să antrenezi primul tău agent de Deep Reinforcement Learning! Înainte de a parcurge primul ciclu complet de antrenament, ai nevoie de o arhitectură de rețea neuronală care să ghideze deciziile agentului și capacitatea acestuia de a învăța.

Vei modifica arhitectura generică definită într-un exercițiu anterior. torch și torch.nn sunt deja importate în exercițiile tale.

Acest exercițiu face parte din cursul

Deep Reinforcement Learning în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Instanțiază primul strat ascuns; intrarea sa va fi starea mediului, cu dimensiunea state_size.
  • Instanțiază stratul de ieșire; acesta furnizează valorile Q pentru fiecare acțiune, cu dimensiunea action_size.
  • Completează metoda forward(); folosește funcția de activare torch.relu pentru acest exemplu.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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)
Editează și rulează codul