Я использую модифицированную версию учебника PyTorch Deep Q, которую я изменил, чтобы передавать свои собственные данные, а не тренажерный зал, и один дополнительный вход (всего два входа)
В настоящее время я генерируюиндивидуальное состояние для каждого «столбца» входов (хотя я не уверен, что это правильный путь), при попытке передать второй вход в мою функцию воспроизведения опыта он возвращает:
__new__() takes 5 positional arguments but 7 were given
Код для expReplay()
:
class ReplayMemory(object):
def __init__(self, capacity):
self.capacity = capacity
self.memory = []
self.position = 0
def push(self, *args):
"""Saves a transition."""
if len(self.memory) < self.capacity:
self.memory.append(None)
self.memory[self.position] = Transition(*args)
self.position = (self.position + 1) % self.capacity
def sample(self, batch_size):
return random.sample(self.memory, batch_size)
def __len__(self):
return len(self.memory)
И мой запуск функции:
memory.push(state,rsistate, action, next_state, next_rsi_state, reward)
Если у кого-нибудь есть какие-либо примеры воспроизведения опыта с использованием нескольких входов, пожалуйста, отойдите!<3 </p>