深度学习各种错误汇总
1、RuntimeError: Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same
如上错误是在 torch.onnx.export 时出现的
解决:x造成的,后边加上.cuda()就可以了
import torch model = torch.load('best_055_0.707265_model.pt') device = torch.device("cuda" if torch.cuda.is_available() else "cpu") model.to(device) batch_size = 1 input_shape = (3,384,640) #输入的图像格式 export_onnx_file = "testResNet50.onnx" # 目的ONNX文件名 model.eval() #测试模式 x = torch.randn(batch_size,*input_shape,requires_grad=True).cuda() #生成张量 torch.onnx.export(model, (x,), #元组,因此使用括号 export_onnx_file, export_params=True, # store the trained parameter weights inside the model file opset_version=17, # the ONNX version to export the model to do_constant_folding=True, # 是否执行常量折叠优化 input_names=["input"], # 输入名 output_names=["output"], # 输出名 dynamic_axes={"input": {0: "batch_size"}, # 批处理变量 "output": {0: "batch_size"}})