当前位置: 首页 > news >正文

家用电脑做网站品牌高端网站制作机构

家用电脑做网站,品牌高端网站制作机构,做海报的参考网站,团员电子档案查询网系列文章目录 #xff08;一#xff09;使用pytorch搭建模型并训练 #xff08;二#xff09;将pth格式转为onnx格式 #xff08;三#xff09;onxx格式转为engine序列化文件并进行推理 文章目录 系列文章目录前言一、TensorRT是什么#xff1f;二、如何通过onnx生成en…系列文章目录 一使用pytorch搭建模型并训练 二将pth格式转为onnx格式 三onxx格式转为engine序列化文件并进行推理 文章目录 系列文章目录前言一、TensorRT是什么二、如何通过onnx生成engine使用trtexec生成engine使用python接口 三、进行推理总结 前言 上一节我们已经成功搭从pth文件转为onnx格式的文件并对导出的onnx文件进行了验证结果并无问题。这一节我们就从这个onnx文件入手一步一步生成engine文件并使用tensorrt进行推理。 一、TensorRT是什么 NVIDIA TensorRT™ 是用于高性能深度学习推理的 SDK。此 SDK 包含深度学习推理优化器和运行时环境可为深度学习推理应用提供低延迟和高吞吐量。通俗来说TensorRT是NVIDIA针对自家GPU开发出来的一个推理框架它使用了一些算法和操作来优化网络推理性能提高深度学习模型在GPU上的推理速度。 我们使用TensorRT这个框架可以加快我们手写数字分类模型的推理速度。 TensorRT的安装方式我之前也写过一期博客参考这里。 这里我们假设已经安装好了TensorRT我这里安装的版本是TensorRT-8.0.1.6。在生成engine文件之前先介绍一个很有用的工具trtexec。trtexec是一个命令行工具它可以帮助我们不用写代码就可以生成engine以及很多其他有用的功能感兴趣的读者可以自己探索这里我们只使用几种常见的命令行参数。 有关trtexec的详细参数可以参考这篇博客。 二、如何通过onnx生成engine 整理一下我们现在已经有了onnx文件并且安装好了tensorrt现在我们的目的是通过生成engine文件。onnx文件之前我们我们已经介绍过了它是一个什么东西那engine文件又是什么呢 TensorRT中的engine文件是一个二进制文件它包含了一个经过优化的深度学习模型。这个文件可以被用来进行推理而不需要重新加载和优化模型。在使用TensorRT进行推理时首先需要将训练好的模型转换为TensorRT engine文件然后使用这个文件进行推理。 也就是说我们只需先生成一次engine这个engine文件包含了优化后的模型这个优化是TensoRT自己做的。在以后进行推理的时候我们只需要加载这个engine即可而不需要重头开始。 使用trtexec生成engine TensorRT-8.0.1.6/bin/trtexec --onnxmodel.onnx --saveEnginemodel.engine --buildOnly在命令行输入这行指令即可帮助我们生成model.engine。trtexec命令还有许多其他的参数感兴趣自行了解这里我们只使用了–onnx表示输入的是onnx文件–saveEngine表示存储engine文件–buildOnly表示只构建不进行推理。 使用python接口 代码如下示例 import os import tensorrt as trtonnx_file /home/wjq/wjqHD/pytorch_mnist/model.onnx nHeight, nWidth 28, 28 trtFile /home/wjq/wjqHD/pytorch_mnist/model.engine# Parse network, rebuild network, and build engine, then save engine logger trt.Logger(trt.Logger.VERBOSE)builder trt.Builder(logger)network builder.create_network(1 int(trt.NetworkDefinitionCreationFlag.EXPLICIT_BATCH)) profile builder.create_optimization_profile() config builder.create_builder_config()parser trt.OnnxParser(network, logger)if not os.path.exists(onnx_file):print(ONNX file {} not found..format(onnx_file))exit() print(Loading ONNX file from path {}....format(onnx_file))with open(onnx_file, rb) as model:if not parser.parse(model.read()):print(ERROR: Failed to parse the ONNX file.)for error in range(parser.num_errors):print(parser.get_error(error))exit()print(Succeed to parse the ONNX file.)input_tensor network.get_input(0) # 这是输入大小 profile.set_shape(input_tensor.name, [1, 1, nHeight, nWidth], [1, 1, nHeight, nWidth], [1, 1, nHeight, nWidth]) config.add_optimization_profile(profile)engineString builder.build_serialized_network(network, config) # 序列化engine文件 if engineString None:print(Failed building engine!)exit() print(Succeeded building engine!) with open(trtFile, wb) as f:f.write(engineString)使用上述的python代码最终我们也可以生成一个engine文件。这段代码里面的api大家可以具体去google寻找解释我在这里只是展示了一种可能。如有问题欢迎评论区沟通。 我们也可以使用trtexec工具来验证我们生成的engine是否正确命令行指令为 TensorRT-8.0.1.6/bin/trtexec --loadEnginemodel.engine --exportProfilelayerProfile.json --batch1 --warmUp1000 --verbose–loadEngine为加载的engine文件路径–exportProfile这个参数可以输出网络中每一层运行的平均时间以及占总时间的百分数–verbose为打印日志–warmUp为提前显卡预热。 三、进行推理 我们已经得到了model.engine文件最后一步我们要使用tensorrt的接口读取engine文件和图像文件进行推理得到最终的分类结果。   由于我的环境现在无法安装pycuda和cuda的python包所以最后推理的这一步等环境妥当再补上。 总结 本节我们介绍了如将使用trtexec工具和python代码通过onnx生成engine文件并使用tensorrt的api接口调用engine文件进行推理。TensorRT推理手写数字分类总共三节笼统地介绍了部署一个深度学习模型的流程希望大家能有所收获。接下来如果有时间准备更新另一个工作pytorch遇到不支持的算子tensorrt遇到不支持的算子onnx遇到不支持的算子该怎么办。
http://www.hkea.cn/news/14371037/

相关文章:

  • 无水印视频素材下载网站西安危机公关公司
  • 前程无忧网杭州网站建设类岗位重庆汽车网站建设
  • 盐城滨海建设局网站东莞商城小程序制作
  • 山西网站制作应用wordpress怎么用两个主题
  • 营销导向的企业网站建设步骤建设部网站危房鉴定标准规定
  • 聊城手机网站建设费用店铺外卖网站怎么做
  • 安徽建设厅网站节能北备案让网站快速收录最新
  • cc域名注册北京优化推广
  • 怎么查看网站的空间商罗湖网站设计价格
  • 简单网站建设模板关于动漫制作专业
  • 网站建设毕业设计总结天元建设集团有限公司联系方式
  • 网站托管团队网站标准字体样
  • 建设网站商城特色美食网站建设策划书
  • 专业的盐城网站建设公司查询网站查询系统
  • 设计网站建设常州wordpress培训机构
  • 外贸建站服务微商城运营的主要工作
  • 好的html5网站模板企业名称注册查询系统
  • 提高关键词排名的软文案例seo搜索引擎优化费用
  • 邢台网站制作济南网站建设服务
  • 在线建站成都营销型网站建设熊掌号
  • 做网站挣钱经历热门职业培训班
  • 多语言网站建设方案免费html代码烟花特效
  • 做网站留言板需要什么条件网站 建设 公司
  • 成都建站优化公司大收录量的网站怎么做
  • 电子商务网站建设与设计论文建设局和住建局的区别
  • 网站建设合同付款约定安徽省建设工程信息管理平台
  • 中国建设银行网站功能模块做微商卖产品在哪个网站销量能好点
  • 汕头市门户网站建设泰州网站关键词优化软件咨询
  • 做医疗类网站有什么需要审核的徐州地区网站建设
  • 邢台市住房和城乡建设局网站擦边球网站怎么做