使用ModuleDict,我有。输入类型(torch.cuda.FloatTensor)和权重类型(torch.FloatTensor)应该是一样的。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ModuleDict,我有。输入类型(torch.cuda.FloatTensor)和权重类型(torch.FloatTensor)应该是一样的。相关的知识,希望对你有一定的参考价值。

我正在努力 __init__ 功能。


        self.downscale_time_conv = np.empty(8, dtype=object)
        for i in range(8):
            self.downscale_time_conv[i] = torch.nn.ModuleDict({})

但在我看来 forward,我有。

        down_out = False
        for i in range(8):
            if not down_out:
                down_out = self.downscale_time_conv[i][side](inputs)
            else:
                down_out += self.downscale_time_conv[i][side](inputs)

然后我得到:

RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the same
答案
        self.downscale_time_conv = torch.nn.ModuleList()
        for i in range(8):
            self.downscale_time_conv.append(torch.nn.ModuleDict({}))

这就解决了。显然,我需要使用一个 ModuleList

以上是关于使用ModuleDict,我有。输入类型(torch.cuda.FloatTensor)和权重类型(torch.FloatTensor)应该是一样的。的主要内容,如果未能解决你的问题,请参考以下文章

在WIN上使用TORCS模拟器做深度强化学习

python Clinet与TORCS服务器通信。

python TORCS包裹在openai健身房环境中

pytorch 参数注册问题

Pytorch张量操作

torch.Tensor 和 torch.tensor