术语
- Tochscript:狭义概念导出图形的表示/格式;广义概念为导出模型的方法;
- (Torch)Scriptable:可以用torch.jit.script导出模型
- Traceable:可以用torch.jit.trace导出模型
什么时候用torch.jit.trace(结论:首选)
- torch.jit.trace一种导出方法;它运行具有某些张量输入的模型,并“跟踪/记录”所有执行到图形中的操作。
- 在模型内部的数据类型只有张量,且没有for if while等控制流,选择torch.jit.trace
- 支持python的预处理和动态行为;
- torch.jit.trace编译function并返回一个可执行文件,该可执行文件将使用即时编译进行优化。
- 大项目优先选择torch.jit.trace,特别是是图像检测和分割的算法;
- 性能:效果更快;
优点
- 不会损害代码质量;
- 2.它的主要限制可以通过与torch.jit.script混合来解决
什么时候用torch.jit.script(结论:必要时)
- 定义:一种模型导出方法,其实编译python的模型源码,得到可执行的图;
- 在模型内部的数据类型只有张量,且没有for if while等控制流,也可以选择torch.jit.script
- 不支持python的预处理和动态行为;
- 必须做一下类型标注;
- torch.jit.script在编译function或 nn.Module 脚本将检查源代码,使用 TorchScript 编译器将其编译为 TorchScript 代码。