java加载pytorch模型,使用Dev Pytorch 1.0将Pytorch模型加载到C中

Pytorch 1.0具有将模型转换为火炬脚本程序(以某种方式序列化)的功能,以使其能够在没有Python依赖性的情况下在C中执行 .

这是如何做到的:

import torch

import torchvision

# An instance of your model.

model = A UNET MODEL FROM FASTAI which has hooks as required by UNET

# An example input you would normally provide to your model's forward() method.

example = torch.rand(1, 3, 224, 224)

# Use torch.jit.trace to generate a torch.jit.ScriptModule via tracing.

traced_script_module = torch.jit.trace(model, example)

在我的用例中,我使用UNET模型进行语义分割 . 但是,我使用此方法跟踪模型,我得到以下错误 .

Forward or backward hooks can't be compiled

UNET模型使用钩子来保存在网络中后续层使用的中间特征 . 有办法解决吗?或者这仍然是这种新方法的限制,它不能与使用这种钩子的模型一起使用 .

你可能感兴趣的:(java加载pytorch模型)