libtorch转换细节

pytorch 在测试的时候 我没开eval 转到c的时候开了eval ,导致pytorch测试的结果和c的测试结果不一样。检测半天发现,是eval的问题。搞了三天才发现!
非eval模式下bn层的参数是训练集的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
libtorch是一个用于深度学习模型推理的C++库,它是PyTorch的C++前端。通过libtorch,我们可以将PyTorch训练好的模型导出为可执行档案,并在没有Python环境的情况下进行模型推理。 使用libtorch进行模型推理主要分为以下几个步骤: 1. 加载模型:首先,我们需要加载已经训练好的模型。加载模型时,我们需要指定模型的路径,并使用`torch::jit::load`函数进行加载。加载后的模型保存在一个`torch::jit::script::Module`对象中。 2. 输入数据准备:接下来,我们需要准备输入数据。这一步通常包括数据预处理,例如图像的缩放、裁剪和归一化。在libtorch中,输入数据通常以张量(Tensor)的形式表示。 3. 模型推理:将准备好的输入数据传递给加载好的模型进行推理。可以使用`torch::jit::Module`对象的`forward`函数来进行模型推理。模型推理后,会得到输出结果。 4. 输出结果处理:最后,我们需要对输出结果做进一步的处理。这可能包括解码、后处理或将结果转换为人类可读的形式。 总的来说,libtorch提供了一个高性能、轻量级的方式来进行深度学习模型的推理。它允许我们在没有Python环境的情况下使用训练好的PyTorch模型,并可以方便地集成到C++应用程序中。通过libtorch,我们可以在不损失性能的情况下进行模型推理,从而满足实时应用或嵌入式系统等场景的需求。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值