Deep Reinforcement Learning in Python
Timothée Carayol
Principal Machine Learning Engineer, Komment


PyTorch








env = gym.make("ALE/SpaceInvaders-v5")# Define neural network architecture class Network(nn.Module): def __init__(self, dim_inputs, dim_outputs): super(Network, self).__init__() self.linear = nn.Linear(dim_inputs, dim_outputs) def forward(self, x): return self.linear(x)# Instantiate network network = Network(dim_inputs, dim_outputs)# Instantiate optimizer optimizer = optim.Adam(network.parameters(), lr=0.0001)
for episode in range(1000): state, info = env.reset() done = Falsewhile not done:action = select_action(network, state)next_state, reward, terminated, truncated, _ = ( env.step(action)) done = terminated or truncatedloss = calculate_loss(network, state, action, next_state, reward, done) optimizer.zero_grad() loss.backward() optimizer.step()state = next_state

Deep Reinforcement Learning in Python