tensorflow自定义op_PyTorch/TensorFlow自定义OP导出ONNX

PyTorch

根据PyTorch的官方文档,需要用Function封装一下,为了能够导出ONNX需要加一个symbolic静态方法:

class relu5_func(Function):

@staticmethod

def forward(ctx, input):

return relu5_cuda.relu5(input)

@staticmethod

def symbolic(g, *inputs):

return g.op("Relu5", inputs[0], myattr_f=1.0)

# 这里第一个参数"Relu5"表示ONNX输出命名

# myattr可以随便取,表示一个属性名,_f表示是一个float类型

relu5 = relu5_func.apply

定义好后,用以下代码测试

import torch

import torch.nn as nn

import relu5_cuda

import onnx

from torch.autograd import Function

from torch.autograd.function import once_differentiable

import netron

class TinyNet(nn.Module):

def __init__(self):

super(TinyNet, self).__init__()

self.conv1 = nn.Conv2d(3, 1, kernel_size=3, padding=1)

self.relu1 &

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
/home/chenxingyue/anaconda3/envs/py39/bin/python /home/chenxingyue/codes/caopengfei/CMeKG_tools/test4.py Loading a TensorFlow model in PyTorch, requires both PyTorch and TensorFlow to be installed. Please see https://pytorch.org/ and https://www.tensorflow.org/install/ for installation instructions. Loading a TensorFlow model in PyTorch, requires both PyTorch and TensorFlow to be installed. Please see https://pytorch.org/ and https://www.tensorflow.org/install/ for installation instructions. Traceback (most recent call last): File "/home/chenxingyue/codes/caopengfei/CMeKG_tools/test4.py", line 9, in <module> my_pred=medical_ner() File "/home/chenxingyue/codes/caopengfei/CMeKG_tools/medical_ner.py", line 21, in __init__ self.model = BERT_LSTM_CRF('/home/chenxingyue/codes/caopengfei/medical_ner', tagset_size, 768, 200, 2, File "/home/chenxingyue/codes/caopengfei/CMeKG_tools/model_ner/bert_lstm_crf.py", line 16, in __init__ self.word_embeds = BertModel.from_pretrained(bert_config,from_tf=True) File "/home/chenxingyue/anaconda3/envs/py39/lib/python3.9/site-packages/transformers/modeling_utils.py", line 2612, in from_pretrained model, loading_info = load_tf2_checkpoint_in_pytorch_model( File "/home/chenxingyue/anaconda3/envs/py39/lib/python3.9/site-packages/transformers/modeling_tf_pytorch_utils.py", line 390, in load_tf2_checkpoint_in_pytorch_model import tensorflow as tf # noqa: F401 ModuleNotFoundError: No module named 'tensorflow' 这个报错可以是需要把tensorflow安装到本地吗?还是Linux
07-13

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值