【问题标题】:Why does this error pop up while working with Deep Q learning?为什么在使用 Deep Q 学习时会弹出此错误?
【发布时间】:2019-05-07 11:13:07
【问题描述】:

我一直在 Windows 10 机器上使用深度 Q 学习。我有带有 NVIDA 显卡的 pytorch 0.4.1 版本。

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"

如果需要任何其他信息,我们会很快提供。

【问题讨论】:

  • 您好,欢迎来到 SO。我实际上没有这方面的经验。从问题和细节来看,您似乎缺少一个参数。也许检查文档以获取所需的参数? :)

标签: python deep-learning artificial-intelligence pytorch


【解决方案1】:

基于documentation,您没有指定multinomialnum_samples 函数来绘制多项分布。

torch.multinomial(input, num_samples, replacement=False, out=None)

返回一个张量,其中每行包含 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]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    • 2023-01-29
    • 1970-01-01
    • 1970-01-01
    • 2019-10-28
    • 2019-11-03
    • 2020-08-03
    相关资源
    最近更新 更多