要加载训练好的PyTorch模型,可以使用torch.load()函数来加载模型的参数和状态字典。以下是一个加载并使用训练好的模型的示例代码:
import torch import torchvision.models as models # 实例化模型 model = models.resnet18() # 加载训练好的模型参数 model.load_state_dict(torch.load('path_to_saved_model.pth')) # 设置模型为评估模式 model.eval() # 使用模型进行推理 inputs = torch.randn(1, 3, 224, 224) outputs = model(inputs) # 打印预测结果 print(outputs)
在上述代码中,首先使用torchvision.models模块实例化了一个ResNet-18模型。然后使用load_state_dict()函数加载了训练好的模型参数,需要提供模型参数保存的文件路径。接着调用eval()方法将模型设置为评估模式,这将关闭模型中的一些训练特定的操作,如Dropout。最后,将输入数据传递给模型进行推理,并打印预测结果。
需要注意的是,加载模型时,要确保模型的结构与训练时的结构完全一致,否则加载的模型参数可能会出错。