js做论坛网站单位做网站

bicheng/2026/1/23 1:22:49/文章来源:
js做论坛网站,单位做网站,ip设计网站,稿定设计app免费版官方在实际部署模型时有时可能会遇到想用的算子无法导出onnx#xff0c;但实际部署的框架是支持该算子的。此时可以通过自定义onnx算子的方式导出onnx模型#xff08;注#xff1a;自定义onnx算子导出onnx模型后是无法使用onnxruntime推理的#xff09;。下面给出个具体应用中的…在实际部署模型时有时可能会遇到想用的算子无法导出onnx但实际部署的框架是支持该算子的。此时可以通过自定义onnx算子的方式导出onnx模型注自定义onnx算子导出onnx模型后是无法使用onnxruntime推理的。下面给出个具体应用中的示例需要导出pytorch的affine_grid算子但在pytorch的2.0.1版本中又无法正常导出该算子故可通过如下自定义算子代码导出。 import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Function from torch.onnx import OperatorExportTypesclass CustomAffineGrid(Function):staticmethoddef forward(ctx, theta: torch.Tensor, size: torch.Tensor):grid F.affine_grid(thetatheta, sizesize.cpu().tolist())return gridstaticmethoddef symbolic(g: torch.Graph, theta: torch.Tensor, size: torch.Tensor):return g.op(AffineGrid, theta, size)class MyModel(nn.Module):def __init__(self) - None:super().__init__()def forward(self, x: torch.Tensor, theta: torch.Tensor, size: torch.Tensor):grid CustomAffineGrid.apply(theta, size)x F.grid_sample(x, gridgrid, modebilinear, padding_modezeros)return xdef main():with torch.inference_mode():custum_model MyModel()x torch.randn(1, 3, 224, 224)theta torch.randn(1, 2, 3)size torch.as_tensor([1, 3, 512, 512])torch.onnx.export(modelcustum_model,args(x, theta, size),fcustom.onnx,input_names[input0_x, input1_theta, input2_size],output_names[output],dynamic_axes{input0_x: {2: h0, 3: w0},output: {2: h1, 3: w1}},opset_version16,operator_export_typeOperatorExportTypes.ONNX_FALLTHROUGH)if __name__ __main__:main() 在上面代码中通过继承torch.autograd.Function父类的方式实现导出自定义算子继承该父类后需要用户自己实现forward以及symbolic两个静态方法其中forward方法是在pytorch正常推理时调用的函数而symbolic方法是在导出onnx时调用的函数。对于forward方法需要按照正常的pytorch语法来实现其中第一个参数必须是ctx但对于当前导出onnx场景可以不用管它后面的参数是实际自己传入的参数。对于symbolic方法的第一个必须是g后面的参数任为实际自己传入的参数然后通过g.op方法指定具体导出自定义算子的名称以及输入的参数注上面示例中传入的都是Tensor所以可以直接传入对与非Tensor的参数可见下面一个示例。最后在使用时直接调用自己实现类的apply方法即可。使用netron打开自己导出的onnx文件可以看到如下所示网络结构。 有时按照使用的推理框架导出自定义算子时还需要设置一些参数非Tensor那么可以参考如下示例例如要导出int型的参数k那么可以通过传入k_i来指定要导出float型的参数scale那么可以通过传入scale_f来指定要导出string型的参数clockwise那么可以通过传入clockwise_s来指定 import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Function from torch.onnx import OperatorExportTypesclass CustomRot90AndScale(Function):staticmethoddef forward(ctx, x: torch.Tensor):x torch.rot90(x, k1, dims(3, 2)) # clockwise 90x * 1.2return xstaticmethoddef symbolic(g: torch.Graph, x: torch.Tensor):return g.op(Rot90AndScale, x, k_i1, scale_f1.2, clockwise_syes)class MyModel(nn.Module):def __init__(self) - None:super().__init__()def forward(self, x: torch.Tensor):return CustomRot90AndScale.apply(x)def main():with torch.inference_mode():custum_model MyModel()x torch.randn(1, 3, 224, 224)torch.onnx.export(modelcustum_model,args(x,),fcustom_rot90.onnx,input_names[input],output_names[output],dynamic_axes{input: {2: h0, 3: w0},output: {2: w0, 3: h0}},opset_version16,operator_export_typeOperatorExportTypes.ONNX_FALLTHROUGH)if __name__ __main__:main() 使用netron打开自己导出的onnx文件可以看到如下所示信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/87668.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站建设用的软件抚州南城网站建设

微信小程序底部想要有一个漂亮的导航栏目,不知道怎么制作,于是百度找到了本篇文章,分享给大家。 好了 小程序的头部标题 设置好了,我们来说说底部导航栏是如何实现的。 我们先来看个效果图 这里,我们添加了三个导航图标…

手机 pc网站模板想要去网站做友情链接怎么发邮件

7Z压缩是一款常用的压缩算法和工具,本文主要介绍一款在qt环境下进行编译的压缩方法。 本人测试是可以正常跑通的,具体代码部分请下载:下载链接,提取码:ev9t 7z源码网址:7-Zip 7z简介: 7z 是…

湖州童装网站网站的数据库选择

实验任务: 实现识别标识符的词法分析器 实验要求: 根据编译原理理论课教材中图2.3“标识符的转换图”,用C语言编写识别标识符的词法分析器,以文本文件为输入,控制台(或文件)输出识别出的每个…

什么网站发布任务有人做贵阳网站建设钟鼎网络

一、类组件和函数式组件的对比 Hook 的特性:在编写class 的情况下,使用state 以及其他React 特性(比如生命周期) 类组件相比于函数式组件的优势: 类组件可以定义自己的state,用来保存组件自己内部的状态…

网站建设石家庄市专业网络营销外包

文章目录 一. 程序三大执行流程二. 分支结构1.单分支结构(if)2.双分支结构(if..else)3.多分支结构(if..elif..else) 二,缩进(tab键)三,循环结构1.while循环2.for循环①遍历字典 五.break,continue和pass语句1.break,continue2.pass Python基础学习(1)基本…

如何制作公司网站网站怎样做百度推广计划

本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 我的GitHub仓库 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 建立一个基…

手机网站存储登录信息百度搜索名字排名优化

在今年 3 月,隐私公链 Partisia Blockchain 迎来了重要的进展,该生态通证 $MPC 上线了交易所,目前 $MPC 通证可以在 Kucoin、Gate、BitMart、Bitfinex、Bitture 等平台交易,并将在不久后上线 MEXC 平台。 ​ 在上个月上线市场至今…

做营销网站 如何让商家入驻ps做网站界面

一.概念介绍 1.1 gitlab-ci && 自动化部署工具的运行机制 以gitlab-ci为例: (1) 通过在项目根目录下配置.gitlab-ci.yml文件,可以控制ci流程的不同阶段,例如install/检查/编译/部署服务器。gitlab平台会扫描.gitlab-ci.yml文件&…

网站建设 三乐牙科医院网站源码

[单片机课程设计必看] 单片机设计报告常用描述 硬件设计 AT89C51最小系统 AT89C51是美国ATMEL公司生产的低电压,高性能CMOS16位单片机,片内含4k bytes的可反复擦写的只读程序存储器和128 bytes的随机存取数据存储器,期间采用ATMEL公司的高…

营销型网站 案例phpcms v9网站上传

目录 常见的环境变量 HOME PWD SHELL HISTSIZE 环境变量相关的指令 echo&env export unset 本地变量 环境变量整体理解 程序现象_代码查看环境变量 整体理解 环境变量表 环境变量表的传递 环境变量表的查看 测试验证 少说废话🆗 每个用户…

html5 制作手机网站设计干货很多的网站

Leangoo领歌是一款永久免费的专业的敏捷开发管理工具,提供端到端敏捷研发管理解决方案,涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。 Leangoo领歌上手快、实施成本低,可帮助企业快速落地敏捷,提质增效、缩短周期、加速创新…

嘉兴做网站seo的南头做网站公司

全网可达,R5路由表没有其他路由器的路由条目 注:每个路由器都添加了自己的环回,如R1就是1.1.1.1 R1可以分别ping通与R2,R3,R4之间的隧道 R1路由表上有所有路由器环回的路由条目 R5路由表上没有其他路由器的路由条目 实现代码: 首先将各个接口IP配好 边上3个路由器:[R6][R7][R…

哪儿提供邯郸做网站wordpress安装选择协议

一、多目标优化算法简介 (1)非支配排序的蜣螂优化算法NSDBO 多目标应用:基于非支配排序的蜣螂优化算法NSDBO求解微电网多目标优化调度(MATLAB)-CSDN博客 (2)NSGA3 NSGA-III求解微电网多目标…

网站dns错误网页搜索优化seo

闲话 最开始知道这本书是在校内论坛上,有同学通过这本书里的项目拿到大厂的ssp offer,于是就从网上订购了这本较为大部头的书,想要在简历上添加一个足够底层并且有意思的项目经历,从而帮助自己在秋招时赢得一个好的offer。 第一遍…

华蓥网站建设抖音seo公司帝搜平台

机械行业是我国重要的工业制造行业之一,相关企业在发展中往往需要用到ERP、PDM、PLM等系统来对产品信息进行管理,其中便涉及到大量文档和图纸等重要数据。然而随着业务的快速发展和数字化转型,机械行业也面临着如数据泄露、外来袭击攻击、内部…

获取网站全站代码津南网站建设

思路:利用bfs的思想 首先利用bfs遍历值为2的橘子(遍历时1和2都可以走)结束后如果存在某个橘子未被访问过且值为1则返回-1 再利用bfs遍历值为2的橘子 每遍历一次 时间加1 注意不要立即将map的值变为2,可以通过一个缓存数组临时存放…

建德做网站e福州便民服务自助终端

2019独角兽企业重金招聘Python工程师标准>>> 技术要点&#xff1a; 一个覆盖整个屏幕的浅灰色背景的div,一个包含内容的的div, 代码如下&#xff1a; <div id"financeTip" style""><div class"financeTipBg" style"&qu…

上饶网站建设哪家好织梦分类信息做的网站

在android 项目开发中&#xff0c;遇到一个比较难以解决的问题&#xff1a;在dialog已经显示的情况下&#xff0c;用户去手动切换主题&#xff1a;由白天模式切换到黑夜模式 众所周知&#xff0c;在主题切换时&#xff0c;有些切换方式&#xff08;代码控制&#xff09;会走重…

济南外贸网站建设wordpress的论坛主题

2023年中职"网络安全"—Linux系统渗透提权② Linux操作系统渗透测试任务环境说明&#xff1a;1. 使用渗透机对服务器信息收集&#xff0c;并将服务器中SSH服务端口号作为flag提交&#xff1b;2. 使用渗透机对服务器信息收集&#xff0c;并将服务器中主机名称作为flag…

宝安网站制作昆明网站建设搭建

我有一个这样一个对象&#xff0c;getData, 但是我不想要每一项的id&#xff0c;那怎么去删除呢(使用delete)? getData.map((item) >{delete item["id"];});console.log(getData);转载于:https://www.cnblogs.com/mmykdbc/p/8386407.html