Trace 功能实现
一、学习 Trace 功能实现的目的
很多前沿的算法都不能正常的导出 onnx 用于部署,所以我们需要学习 Trace 功能用于自定义 onnx 的实现和导出
。比如现在的SOTA point transformer v3
里面用到了稀疏卷积 spconv 库,或者经典的 centerpoint
就可以用这种方法导出 onnx。
或者还可以用来跟踪神经网络中某些层的输入和输出
,这对于调试和优化神经网络非常有帮助。
二、hook_forward 函数
这里从一个简单的模型开始记录 hook_forward 的功能记录
代码 1:一个简单的 pytorch 模型的实现
import torch
import torch.nn as nn
class Model