當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch unused用法及代碼示例


本文簡要介紹python語言中 torch.jit.unused 的用法。

用法:

torch.jit.unused(fn)

此裝飾器向編譯器指示應忽略函數或方法並用引發異常來替換。這允許您在模型中保留尚未與 TorchScript 兼容的代碼,但仍導出模型。

示例(在方法上使用@torch.jit.unused):

import torch
import torch.nn as nn

class MyModule(nn.Module):
    def __init__(self, use_memory_efficient):
        super(MyModule, self).__init__()
        self.use_memory_efficient = use_memory_efficient

    @torch.jit.unused
    def memory_efficient(self, x):
        import pdb
        pdb.set_trace()
        return x + 10

    def forward(self, x):
        # Use not-yet-scriptable memory efficient mode
        if self.use_memory_efficient:
            return self.memory_efficient(x)
        else:
            return x + 10

m = torch.jit.script(MyModule(use_memory_efficient=False))
m.save("m.pt")

m = torch.jit.script(MyModule(use_memory_efficient=True))
# exception raised
m(torch.rand(100))

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.jit.unused。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。