参与运算的变量,有的在CPU上,有的在GPU上

问题遇到的现象和发生背景

为什么只有target在GPU上面,data不行呢?

用代码块功能插入代码,请勿粘贴截图

            data = {key:data[key].cuda() for key in data}

            target = {key:target[key].cuda() for key in target}

            evidences, evidence_a, loss = model(data, target, epoch)

运行结果及报错内容

运行结果:

img

img

报的错是:参与运算的两个或多个变量,有的在CPU上,有的在GPU上

我的解答思路和尝试过的方法

我已经给data转到GPU上面去了,target也转了