pytorch-GPU版本训练LSTM模型,提示输入和hidden隐藏层不在一个设备上,一个GPU,而隐藏层在cpu

input and hidden tensors are not at the same device,found input tensor at GPU and hidden at cpu

这个问题解决方法还是比较简单的,只需要在模型中定义的hidden的函数上将hidden.to(device)即可,如果使用的BiLSTM会提示无法把元组进行to(device),可以直接让其两个元素进行to(device即可)。

虽然你定义了模型 model.to(device),但是隐藏层是在运行中生成的,要对其放入GPU,不然的话他就是一个cpu下的张量。

如果是其他问题,记住,只要涉及到运算的张量统统要放入GPU,即to(device),列表和numpy则不用进行此类操作。

你可能感兴趣的:(pytorch,lstm,人工智能)