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

耐克运动鞋网站建设规划书框架百度关键字搜索到自己的网站

耐克运动鞋网站建设规划书框架,百度关键字搜索到自己的网站,手表品牌排行榜,湛江网站制作费用使用Pytorch训练出的模型权重为fp32#xff0c;部署时#xff0c;为了加快速度#xff0c;一般会将模型量化至int8。与fp32相比#xff0c;int8模型的大小为原来的1/4, 速度为2~4倍。 Pytorch支持三种量化方式#xff1a; 动态量化#xff08;Dynamic Quantization…使用Pytorch训练出的模型权重为fp32部署时为了加快速度一般会将模型量化至int8。与fp32相比int8模型的大小为原来的1/4, 速度为2~4倍。 Pytorch支持三种量化方式 动态量化Dynamic Quantization: 只量化权重激活在推理过程中进行量化静态量化Static Quantization: 量化权重和激活量化感知训练Quantization Aware TrainingQAT: 插入量化算子后进行训练主要在静态量化精度不满足需求时进行。 大多数情况下我们只需要进行静态量化少数情况下在量化感知训练不满足时使用QAT进行微调。所以本篇只重点讲静态量化并且理论部分先略过后面再专门总结只关注实操。 注下面的代码是在pytorch1.10下后面Pytorch对量化的接口有调整 官方文档Quantization — PyTorch 1.10 documentation 动态模式Eager Mode与静态模式fx graph Pytorch支持用2种方式量化一种是动态图模式也是我们日常使用Pytorch训练所使用的方式使用这种方式量化需要自己手动修改网络结构在支持量化的算子前、后插入量化节点优点是方便调试。静态模式则是由pytorch自动在计算图中插入量化节点不需要手动修改网络。 网络上大部分的教程都是基于静态模式这种方式比较大的问题就是需要手动修改网络结构官方教程里的网络是属于demo型, 其中的QuantStub和DeQuantStub就分别是量化和反量化的节点 # define a floating point model where some layers could be statically quantized class M(torch.nn.Module):def __init__(self):super(M, self).__init__()# QuantStub converts tensors from floating point to quantizedself.quant torch.quantization.QuantStub()self.conv torch.nn.Conv2d(1, 1, 1)self.relu torch.nn.ReLU()# DeQuantStub converts tensors from quantized to floating pointself.dequant torch.quantization.DeQuantStub()def forward(self, x):# manually specify where tensors will be converted from floating# point to quantized in the quantized modelx self.quant(x)x self.conv(x)x self.relu(x)# manually specify where tensors will be converted from quantized# to floating point in the quantized modelx self.dequant(x)return xPytorch对于很多网络层是不支持量化的比如很常用的Prelu如果我们用这种方式我们就必须在这些不支持的层前面插入DeQuantStub然后在支持的层前面插入QuantStub。笔者体验下来体验很差个人觉得不太实用会破坏原来的网络结构。 而静态图模式我们只需要调用Pytorch提供的接口将原模型转换一下即可不需要修改原来的网络结构文件个人认为实用性更强。 静态模式量化 1. 载入fp32模型并转成fx graph 其中量化参数有‘fbgemm’和‘qnnpack’两种前者在x86运行后者在arm运行。 model_fp32 torch.load(xxx) model_fp32_quantize copy.deepcopy(model_fp32) qconfig_dict {: torch.quantization.get_default_qconfig(fbgemm)} model_fp32_quantize.eval() # preparemodel_prepared quantize_fx.prepare_fx(model_fp32_quantize, qconfig_dict) model_prepared.eval()2.读取量化数据标定Calibration量化参数 标定的过程就是使用模型推理量化图片然后统计权重和激活分布从而得到量化参数。量化图片一般来源于训练集几百张左右根据测试情况调整。量化图片可以通过Pytorch的Dataloader读取也可以直接自行实现读图片然后送入网络。 ### 使用dataloader读取 for i, (data, label) in enumerate(train_loader):data data.to(torch.device(cpu:0))outputs model_prepared(data)print(calibrating {}.format(i))if i 1000:break3. 转换为量化模型并保存 quantized_model quantize_fx.convert_fx(model_prepared) torch.jit.save(torch.jit.script(quantized_model), quantized_model.pt)速度测试 量化后的模型使用方法与fp32模型一样 import torch import cv2 import numpy as np torch.set_num_threads(1)fused_model torch.jit.load(jit_model.pt) fused_model.eval() fused_model.to(torch.device(cpu:0))img cv2.imread(./1.png) img_fp32 img.astype(np.float32) img_fp32 (img_fp32-127.5) / 127.5 input torch.from_numpy(img).permute(2, 0, 1).unsqueeze(0).float()def speed_test(model, input):# warm upfor i in range(10):model(input)import timestart time.time()for i in range(100):model(input)end time.time()print(model time: , (end-start)/100)time.sleep(10)# quantized model quantized_model torch.jit.load(quantized_model.pt) quantized_model.eval() quantized_model.to(torch.device(cpu:0))speed_test(fused_model, input) speed_test(quantized_model, input)实测fp32模型单核运行120ms, 量化后47ms 结语 本文介绍了fx graph模式下的Pytorch的PTSQ方法并实测了一个模型效果还比较不错。
http://www.zqtcl.cn/news/471056/

相关文章:

  • wordpress中portfolio重庆网站seo按天计费
  • 做淘客网站需要多大的空间工程公司名称大全简单大气
  • 康县建设局网站网站做优化
  • 笔记网站开发代码下载了wordpress后
  • 北京招聘高级网站开发工程师域名最新通知
  • 企业如何实现高端网站建设西安百度推广开户
  • 广西城乡住房建设厅网站首页本地 安装 WordPress主题
  • 网站开发 技术方案设计一个软件需要多少钱
  • 网站如何做死链接提交建设银行网站官网网址
  • 网站难做吗承德平台
  • 手机备案网站营销网络建设怎么写
  • 建个网站要花多少钱WordPress密码重设怎么改
  • 招商网站建设免费网站改版 升级的目的
  • 安徽圣力建设集团网站如何自己开发微信小程序
  • 学院网站板块盘多多搜索引擎入口
  • 网站seo内部优化wordpress建站网站报错
  • 网站建设科技国外网站入口
  • 怎样用网站做淘宝推广免费的项目管理软件
  • 共青城网站建设微网站开发报价
  • 网站建设选超速云建站网站建设公司比较
  • 芜湖网络科技有限公司沈阳网站推广优化公司哪家好
  • 自己制作图片文字图片网站建设和优化内容最重要性
  • 邢台做网站优化建筑行业新闻资讯
  • 站长统计app最新版本2023网站标题是关键词吗
  • 中山精品网站建设市场wordpress登陆phpadmin
  • 泸县手机网站建设佛山城市建设工程有限公司
  • 长沙网站推广排名优化wordpress主题字体更改
  • 深圳网站建设软件定制公司房地产开发公司注册资金要求
  • 个人如何在企业网站做实名认证房地产平面设计主要做什么
  • 网站做字工具WordPress搜索功能增强