Почему эта ошибка появляется при работе с Deep Q learning? - PullRequest
0 голосов
/ 05 декабря 2018

Я работал с Deep Q Learning на Windows 10 Machine.У меня есть версия 0.4.1 pytorch с графической картой NVIDA.

def select_action(self, state):
    probs = F.softmax(self.model(Variable(state, volatile = True))*7)
    action = probs.multinomial()
    return action.data[0,0]

Из этого раздела кода я получаю эту ошибку:

TypeError: multinomial() missing 1 required positional arguments: "num_samples"

Если требуется какая-либо другая информация, Это будет очень быстро предоставлено.

1 Ответ

0 голосов
/ 05 декабря 2018

На основании документации вы не указали функцию num_samples из multinomial для рисования своего многочленного распределения.

torch.multinomial (входной, num_samples, замена = False, out = Нет)

Возвращает тензор, в котором каждая строка содержит num_samples индексов, выбранных из полиномиального распределения вероятностей, расположенного в соответствующей строке тензора input .

Измените код, как показано ниже:

def select_action(self, state):
    probs = F.softmax(self.model(Variable(state, volatile = True))*7)
    action = probs.multinomial(1) # 1 is the number of samples to draw
    return action.data[0,0]
...