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

网站建设图片像素是多大的wordpress 应用主题

网站建设图片像素是多大的,wordpress 应用主题,做dw网站图片怎么下载地址,百度帐号登录个人中心PyTorch支持两种模式#xff1a;eager模式和script模式。eager模式主要用于模型的编写、训练和调试#xff0c;script模式主要是针对部署的#xff0c;其包含PytorchJIT和TorchScript#xff08;一种在 PyTorch 中执行高效的序列化代码格式#xff09;。 script模式使用t…PyTorch支持两种模式eager模式和script模式。eager模式主要用于模型的编写、训练和调试script模式主要是针对部署的其包含PytorchJIT和TorchScript一种在 PyTorch 中执行高效的序列化代码格式。 script模式使用torch.jit.trace和torch.jit.script创建一个PyTorch eager module的中间表示intermediate representation, IRIR 经过内部优化并在运行时使用 PyTorch JIT 编译。PyTorch JIT 编译器使用运行时信息来优化 IR。该 IR 与 Python 运行时是解耦的。 PyTorch JITJust-In-Time Compilation是 PyTorch 中的即时编译器。 它允许你将模型转化为 TorchScript 格式从而提高模型的性能和部署效率。JIT 允许你在动态图和静态图之间无缝切换。你可以在 Python 中以动态图的方式构建和调试模型然后将模型编译为 TorchScript 以进行优化和部署。JIT 允许你在不同的深度学习框架之间进行模型转换例如将 PyTorch 模型转换为 ONNX 格式从而可以在其他框架中运行。 TorchScript 是 PyTorch 提供的一种将模型序列化以便在其他环境中运行的机制。它将 PyTorch 模型编译成一种中间表示形式可以在没有 Python 解释器的环境中运行。这使得模型可以在 C 等其他语言中运行也可以在嵌入式设备等资源受限的环境中实现高效的推理。 以下是 TorchScript 的一些重要特性和用途 静态图表示形式TorchScript 是一种静态图表示形式它在模型构建阶段对计算图进行编译和优化而不是在运行时动态构建。这可以提高模型的执行效率。模型导出TorchScript 允许将 PyTorch 模型导出到一个独立的文件中然后可以在没有 Python 环境的设备上运行。跨平台部署TorchScript 允许在不同的深度学习框架之间进行模型转换例如将 PyTorch 模型转换为 ONNX 格式从而可以在其他框架中运行。模型优化和量化通过 TorchScript你可以使用各种技术如量化对模型进行优化从而减小模型的内存占用和计算资源消耗。融合和集成TorchScript 可以帮助你将多个模型整合到一个整体流程中从而提高系统的整体性能。嵌入式设备对于资源受限的嵌入式设备TorchScript 可以帮助你优化模型以适应这些环境。 使用 TorchScript 可以将 PyTorch 模型变得更容易在生产环境中部署和集成。然而它也可能需要你对模型进行一些修改以使其可以成功编译为 TorchScript。 总的来说TorchScript 是一个强大的工具特别是对于需要在不同环境中部署 PyTorch 模型的情况。通过将模型导出为 TorchScript你可以实现更广泛的模型应用和部署。 一段话总结为什么要用以及什么时候要用script模式呢 可以脱离python GIL以及python runtime的限制来运行模型比如通过LibTorch通过C来运行模型。这样方便了模型部署例如可以在IoT等平台上运行。例如这个tutorial使用C来运行pytorch的model。PyTorch JIT是用于pytorch的优化的JIT编译器它使用运行时信息来优化 TorchScript modules可以自动进行层融合、量化、稀疏化等优化。因此相比pytorch modelTorchScript的性能会更高。 Script mode通过torch.jit.trace或者torch.jit.script来调用。这两个函数都是将python代码转换为TorchScript的两种不同的方法。torch.jit.trace将一个特定的输入通常是一个张量需要我们提供一个input传递给一个PyTorch模型torch.jit.trace会跟踪此input在model中的计算过程然后将其转换为Torch脚本。这个方法适用于那些在静态图中可以完全定义的模型例如具有固定输入大小的神经网络。通常用于转换预训练模型。torch.jit.script直接将Python函数或者一个Python模块通过python语法规则和编译转换为Torch脚本。torch.jit.script更适用于动态图模型这些模型的结构和输入可以在运行时发生变化。例如对于RNN或者一些具有可变序列长度的模型使用torch.jit.script会更为方便。 在通常情况下更应该倾向于使用torch.jit.trace而不是torch.jit.script。 在上一篇blog中我们非常非常详细介绍了torch.jit.trace和torch.jit.script的区别以及使用建议。强烈建议先阅读上一篇blog再来阅读此篇内容。 本篇中我们重点看一下TorchScript model与eager model的性能区别。 JIT Trace torch.jit.trace使用eager model和一个dummy input作为输入tracer会根据提供的model和input记录数据在模型中的流动过程然后将整个模型转换为TorchScript module。看一个具体的例子 我们使用BERTBidirectional Encoder Representations from Transformers作为例子。 from transformers import BertTokenizer, BertModel import numpy as np import torch from time import perf_counterdef timer(f,*args): start perf_counter()f(*args)return (1000 * (perf_counter() - start))# 加载bert model native_model BertModel.from_pretrained(bert-base-uncased) # huggingface的API中使用torchscriptTrue参数可以直接加载TorchScript model script_model BertModel.from_pretrained(bert-base-uncased, torchscriptTrue)script_tokenizer BertTokenizer.from_pretrained(bert-base-uncased, torchscriptTrue)# Tokenizing input text text [CLS] Who was Jim Henson ? [SEP] Jim Henson was a puppeteer [SEP] tokenized_text script_tokenizer.tokenize(text)# Masking one of the input tokens masked_index 8tokenized_text[masked_index] [MASK]indexed_tokens script_tokenizer.convert_tokens_to_ids(tokenized_text)segments_ids [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]# Creating a dummy input tokens_tensor torch.tensor([indexed_tokens]) segments_tensors torch.tensor([segments_ids])然后分别在CPU和GPU上测试eager mode的pytorch推理速度。 # 在CPU上测试eager model推理性能 native_model.eval() np.mean([timer(native_model,tokens_tensor,segments_tensors) for _ in range(100)])# 在GPU上测试eager model推理性能 native_model native_model.cuda() native_model.eval() tokens_tensor_gpu tokens_tensor.cuda() segments_tensors_gpu segments_tensors.cuda() np.mean([timer(native_model,tokens_tensor_gpu,segments_tensors_gpu) for _ in range(100)])再分别在CPU和GPU上测试script mode的TorchScript模型的推理速度 # 在CPU上测试TorchScript性能 traced_model torch.jit.trace(script_model, [tokens_tensor, segments_tensors]) # 因模型的trace时已经包含了.eval()的行为因此不必再去显式调用model.eval() np.mean([timer(traced_model,tokens_tensor,segments_tensors) for _ in range(100)])# 在GPU上测试TorchScript的性能 最终运行结果如表 CPU latency (ms)GPU latency (ms)PyTorch171.2730.42TorchScript165.2413.50 我使用的硬件规格是google colabcpu是Intel(R) Xeon(R) CPU 2.00GHzGPU是Tesla T4。 从结果来看在CPU上TorchScript比pytorch eager快了3.5%在GPU上TorchScript比pytorch快了55.6%。 然后我们再用ResNet做一个测试。 import torchvision import torch from time import perf_counter import numpy as npdef timer(f,*args): start perf_counter()f(*args)return (1000 * (perf_counter() - start))# Pytorch cpu versionmodel_ft torchvision.models.resnet18(pretrainedTrue) model_ft.eval() x_ft torch.rand(1,3, 224,224) print(fpytorch cpu: {np.mean([timer(model_ft,x_ft) for _ in range(10)])})# Pytorch gpu versionmodel_ft_gpu torchvision.models.resnet18(pretrainedTrue).cuda() x_ft_gpu x_ft.cuda() model_ft_gpu.eval() print(fpytorch gpu: {np.mean([timer(model_ft_gpu,x_ft_gpu) for _ in range(10)])})# TorchScript cpu versionscript_cell torch.jit.script(model_ft, (x_ft)) print(ftorchscript cpu: {np.mean([timer(script_cell,x_ft) for _ in range(10)])})# TorchScript gpu versionscript_cell_gpu torch.jit.script(model_ft_gpu, (x_ft_gpu)) print(ftorchscript gpu: {np.mean([timer(script_cell_gpu,x_ft.cuda()) for _ in range(100)])})CPU latency (ms)GPU latency (ms)PyTorch77.472.99TorchScript74.241.64 TorchScript相比PyTorch eager modelCPU性能提升4.2%GPU性能提升45%。与Bert的结论一致。 总结 本文重点说明了Pytorch的eager模式和script模式重点是script模式的TorchScript和Pytorch JIT上一篇文章重点说明了eager模式的model转为script模式的TorchScript的两个apitorch.jit.trace与torch.jit.script的区别这是这一篇文章的基础建议先阅读上一篇文章使用Bert和ResNet两个网络进行了Pytorch eager model和TorchScript的CPU和GPU性能测试。结论在两个网络上一致使用TorchScript在CPU上相比PyTorch eager mode会有4%左右的性能提升在GPU上会有50%左右的性能提升。
http://www.pierceye.com/news/437968/

相关文章:

  • 网站运营与维护是什么意思出入成都最新规定今天
  • 网站建设 企炬江阴企业形象包装公司
  • 移动网站开发公司免费的视频网站推广软件
  • 深圳网站定制公司宝应网站建设
  • 哈尔滨 做网站公司淮南发布app下载
  • 能发朋友圈的网站建设语不同类型网站比较及网站域名设计
  • 企业融资只有两种方法seo包括网站建设吗
  • 网站制作简单协议深圳市宝安区中医院
  • 中山骏域网站建设求2021没封的良心网站
  • 域名空间网站建设要多少钱全屋定制设计流程
  • 建设网站的网站江苏旅游网站开发设计与实现
  • 河北辛集住房和城乡建设厅网站购车网站开发数据库er图
  • 简单flash个人网站网站服务器和直播服务器一样吗
  • 教育网站建设需求文档门户网站系统建设清单
  • 天津市建设与管理局网站建筑网建设通平台
  • 长沙网站开发微联讯点官网微信公众号直接同步到wordpress
  • 湖南建设监理官方网站属于网页制作平台的是?
  • 如何建设公司网站知乎湖南自驾旅游与房车协会
  • 扬中网站优化做 爱 网站视频教程
  • 服务器发布网站免费网络营销推广软件
  • 婚纱摄影类网站重庆seo招聘
  • 登陆空间商网站建站模板免费下载
  • 用php做网站用什么框架牡丹江免费发布信息的平台
  • 网站开发 专有名词江油移动网站建设
  • 百度后台管理东莞市长安镇网站制作优化
  • 长春市建设厅网站大自然的网站设计
  • 网站建设能用手机制作吗人人车网站建设费用
  • 网站开发技术部分网络营销的宏观环境
  • 南宁网站建设公司国外优秀网站案例
  • 做网站需要什么证件吗免费seo技术教程