当调用 loss.backward() 函数时,出现以下错误 RuntimeError: expected dtype Double but got dtype Float (validate_dtype at …\aten\src\ATen\native\TensorIterator.cpp:143) 报错。

解决方法:
当你使用的损失函数是nn.MSELoss 时,要保证输入数据的类型是一样的。
如:nn.MSELoss(Pred,Result)。要保证Pred和Result的数据类型是一样。不能一个是float32,另外一个是float64.

Logo

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

更多推荐